In today’s blog, we will see how we can implement self organizing maps in Python. This is going to be a very short blog. So without any further due, Let’s do it…
Code for Self Organizing Maps…
# importing libararies import pandas as pd import numpy as np import matplotlib.pyplot as plt #importing data dataset = pd.read_csv('Credit_Card_Applications.csv') X = dataset.iloc[:,:-1].values y = dataset.iloc[:,-1].values # scaling/normalizing the data from sklearn.preprocessing import MinMaxScaler sc = MinMaxScaler() X = sc.fit_transform(X) #initializing self organizing map from minisom import MiniSom som = MiniSom(x=10,y=10,input_len=15,sigma=1.0,learning_rate=0.5) som.random_weights_init(X) som.train_random(data = X , num_iteration = 100) #visualizing the som from pylab import bone,pcolor,colorbar,plot,show bone() pcolor(som.distance_map().T) colorbar() markers = ['o','s'] colors = ['r','g'] for i,x in enumerate(X): w = som.winner(x) plot(w[0]+0.5, w[1]+0.5, markers[y[i]], markeredgecolor=colors[y[i]], markersize=10, markeredgewidth=2, markerfacecolor='None' ) show() #finding the frauds mappings = som.win_map(X) frauds = np.concatenate((mappings[(1,1)],mappings[(1,2)]),axis=0) frauds = sc.inverse_transform(frauds)
Final Results…
Download the Source code…
Do let me know if there’s any query regarding the project by contacting me on email or LinkedIn.
So this is all for this blog folks, thanks for reading it and I hope you are taking something with you after reading this and till the next time ?…
Read my previous post: FACE RECOGNITION BASED ATTENDANCE SYSTEM
Check out my other machine learning projects, deep learning projects, computer vision projects, NLP projects, Flask projects at machinelearningprojects.net.