def mpse(): mv = mview.MPSE(reduced_distances, data_args={'weights': lambda x: x**(-1)}, verbose=2) mv.gd(bach_size=9, max_iters=50) mv.gd(max_iters=50, batch_size=16) mv.gd() mv.plot_embedding(labels=labels) #,axis=True) mv.plot_embedding(labels=labels, colors=reduced_distances[0][medici], axis=True, edges=edges1) #mv.plot_embedding(labels=labels,colors=reduced_distances[1][medici], # axis=True,edges=edges2) mv.plot_computations() mv.plot_image(0, labels=labels, colors=reduced_distances[0][medici], axis=False, title='MPSE embedding: marriage view', edges=edges1) mv.plot_image(1, labels=labels, colors=reduced_distances[1][medici], axis=False, title='MPSE embedding: loan view', edges=edges2) ave_medici = np.linalg.norm(mv.embedding-mv.embedding[medici])/ \ np.sqrt(len(reduced_families)-1) print('medici average', ave_medici) ave_strozzi = np.linalg.norm(mv.embedding-mv.embedding[strozzi])/ \ np.sqrt(len(reduced_families)-1) print('strozzi average', ave_strozzi)
def mpse(): mv = mview.MPSE([distances[0], distances[1]], data_args={'weights': 'reciprocal'}, verbose=2) mv.gd() mv.plot_embedding() mv.plot_images() mv.plot_computations()
def basic(groups=[0, 1], n_samples=None): groups = [setup_data.group_names[group] for group in groups] data = [] for group in groups: data.append(setup_data.generate_data(group, n_samples)) results = setup_data.results[0:n_samples] for dat in data: mds = mview.MDS(dat, verbose=2) mds.gd(batch_size=50, max_iter=30) mds.plot_embedding(colors=results) mds.plot_computations() mv = mview.MPSE(data, verbose=2) mv.gd(batch_size=50, max_iter=30) mv.plot_embedding(colors=results) mv.plot_images(colors=results) mv.plot_computations() plt.show()
def mpse(weighted=True,**kwargs): print() mv = mview.MPSE(diss,weighted=weighted,verbose=2) mv.gd(min_grad=1e-4,max_iter=300,lr=0.1,average_neighbors=1) mv.gd(min_grad=1e-4,max_iter=200,lr=[2,0.01],scheme='fixed') mv.figureH() mv.figureX(edges=marriage_edges,axis=True,labels=True,markersize=50, colors=None) mv.figureX(edges=loan_edges,axis=True,labels=True,markersize=50,colors=None) mv.figureX(axis=True,labels=True,markersize=50,colors=None) fig1,ax1 = plt.subplots() fig2,ax2 = plt.subplots() axes=[ax1,ax2] mv.figureY(include_colors=True, edges=[marriage_edges,loan_edges],labels=True,axis=False, title=None,markersize=50,ax=axes) plt.draw() np.savetxt('X.csv', mv.X, delimiter=',') np.savetxt('Q1.csv', mv.Q[0], delimiter=',') np.savetxt('Q2.csv', mv.Q[1], delimiter=',')