Ejemplo n.º 1
0
from sklearn.cluster import KMeans
from sklearn.neighbors import NearestNeighbors
from sklearn.preprocessing import normalize
from display_network import *

mndata = MNIST('MNIST/')
mndata.load_testing()
X = mndata.test_images
X0 = np.asarray(X)[:1000, :] / 256.0
X = X0
K = 10
kmeans = KMeans(n_clusters=K).fit(X)
pred_label = kmeans.predict(X)
print(type(kmeans.cluster_centers_.T))
print(kmeans.cluster_centers_.T.shape)
A = display_network(kmeans.cluster_centers_.T, K, 1)

f1 = plt.imshow(A, interpolation='nearest', cmap="jet")
f1.axes.get_xaxis().set_visible(False)
f1.axes.get_yaxis().set_visible(False)
plt.show()
# plt.savefig('a1.png', bbox_inches='tight')

# a colormap and a normalization instance
cmap = plt.cm.jet
norm = plt.Normalize(vmin=A.min(), vmax=A.max())

# map the normalized data to colors
# image is now RGBA (512x512x4)
image = cmap(norm(A))
Ejemplo n.º 2
0
cls = [[0], [1]]
# extract data for training
(X_train, y_train) = extract_data(Xtrain_all, ytrain_all, cls)

# data for test
(X_test, y_test) = extract_data(Xtest_all, ytest_all, cls)

# train the logistic regression model
logreg = linear_model.LogisticRegression(C=1e5)  # just a big number
logreg.fit(X_train, y_train)

# predict
y_pred = logreg.predict(X_test)
print("Accuracy: %.2f %%" % (100 * accuracy_score(y_test, y_pred.tolist())))

# display misclassified image(s)
mis = np.where((y_pred - y_test) != 0)[0]
Xmis = X_test[mis, :]

plt.axis('off')
A = display_network(Xmis.T)
f2 = plt.imshow(A, interpolation='nearest')
plt.gray()
plt.show()

# phuong phap one - vs - rest
logreg.fit(Xtrain_all, ytrain_all)
y_pred = logreg.predict(Xtest_all)
print("Accuracy: %.2f %%" % (100 * accuracy_score(ytest_all, y_pred.tolist())))
Ejemplo n.º 3
0
    lable = []
    lable.append(updatelable(X, center[-1]))
    while True:
        center.append(updatecenter(X, lable[-1]))
        if Stop(center[-2], center[-1]):
            break
        lable.append(updatelable(X, center[-1]))
    return lable[-1], center[-1]
K = 10
kmeans = KMeans(n_clusters=K).fit(X)
fig = plt.figure()
pred_label,center = KClustermain(X)

print(type(center.T))
print(center.T.shape)
A = display_network(center.T, K, 1)

f1= fig.add_subplot(2,2,1)
f1.imshow(A, interpolation='nearest', cmap = "jet")
f1.axes.get_xaxis().set_visible(False)
f1.axes.get_yaxis().set_visible(False)

# plt.savefig('a1.png', bbox_inches='tight')


# a colormap and a normalization instance
cmap = plt.cm.jet
norm = plt.Normalize(vmin=A.min(), vmax=A.max())

# map the normalized data to colors
# image is now RGBA (512x512x4) 
Ejemplo n.º 4
0
y_all = mnist.target

X0 = X_all[np.where(y_all == 0)[0]]  # all digit 0
X1 = X_all[np.where(y_all == 1)[0]]  # all digit 1
y0 = np.zeros(X0.shape[0])  # class 0 label
y1 = np.ones(X1.shape[0])  # class 1 label

X = np.concatenate((X0, X1), axis=0)  # all data
y = np.concatenate((y0, y1))  # all label

# split train and test
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=2000)
model = LogisticRegression(C=1e5)
model.fit(X_train, y_train)

y_pred = model.predict(X_test)

print("Accuracy %.2f %%" % (100 * accuracy_score(y_test, y_pred.tolist())))

# Tìm ảnh bị phân loại lỗi
mis = np.where((y_pred - y_test) != 0)[0]
Xmis = X_test[mis, :]

filename = 'mnist_mis.png'
with PdfPages(filename) as pdf:
    plt.axis('off')
    A = display_network(Xmis.T, 1, Xmis.shape[0])
    f2 = plt.imshow(A, interpolation='nearest')
    plt.gray()
    plt.savefig(filename, bbox_inches='tight')
    plt.show()
Ejemplo n.º 5
0
def display(X, K, N):
    plt.axis('off')
    A = display_network(X.T, K, N)
    f2 = plt.imshow(A, interpolation='nearest')
    plt.gray()
    plt.show()