def preview_stage(self, X, centroids, labels): n = X.shape[-1] if n <= 4: plt.figure(figsize=(10, 6)) for i, (x, y) in enumerate(itertools.combinations(range(n), 2)): plt.subplot(2, 3, i + 1) for k in range(self.K): color = plt.cm.get_cmap('nipy_spectral')(k * 255 / self.K) plt.scatter( X[labels == k, x], X[labels == k, y], marker='x', c=color, ) plt.scatter( centroids[:, x], centroids[:, y], marker='*', c='yellow', s=200, ) plt.autoscale() plt.show() else: draw_filters.draw_filters(centroids, filter_shape=(8, 8))
y, score = predict(x_train_noise, y_train) print "[train]", score.data scores_train.append(float(score.data)) y, score = predict(x_valid_noise, y_valid) print "[valid]", score.data scores_valid.append(float(score.data)) # show error rate of train and valid plt.figure() plt.plot(np.arange(len(scores_train)), np.array(scores_train)) plt.plot(np.arange(len(scores_valid)), np.array(scores_valid)) plt.legend(['train', 'valid']) plt.show() draw_filters.draw_filters(model.l1.W) plt.draw() except KeyboardInterrupt: pass # show error rate of train and valid plt.figure() plt.plot(np.arange(len(scores_train)), np.array(scores_train)) plt.plot(np.arange(len(scores_valid)), np.array(scores_valid)) plt.legend(['train', 'valid']) plt.show() x_test = generate_noisy_data(x_test, stddev=stddev) result = np.empty(D) y, score = predict(x_test, y_test)