def _two_label_performance(target_names, params): # get_params noise_amount = params['noise_amount'] # set params params['target_names'] = target_names print_params(**params) # fit hopfield print('\n.. fitting hopfield\n') hf, X, y, target_names, params = fit_hopfield(params) print_params(**params) # recall print('\n.. recalling\n') X, X_noise, X_recall = recall_with_noise(clf=hf, X=X, noise_amount=noise_amount) print_header('result') similarities, accurate = get_recalling_performance(X, X_recall) print('similarity:', np.mean(similarities)) print('accuracy:', np.mean(accurate)) similarity = np.mean(similarities) accuracy = np.mean(accurate) return similarity, accuracy
def hopfield_single_performance( n_sample, n_label, noise_amount, fit_mode, save_fig, ): # parameters params = { 'n_sample': n_sample, 'n_label': n_label, 'noise_amount': noise_amount, 'fit_mode': fit_mode, } print_params(**params) # fit hopfield print('\n.. fitting hopfield\n') hf, X, y, target_names, params = fit_hopfield(params) print_params(**params) # recall print('\n.. recalling\n') X, X_noise, X_recall = recall_with_noise(clf=hf, X=X, noise_amount=noise_amount) print_header('result') similarities, accurate = get_recalling_performance(X, X_recall) print('similarity:', np.mean(similarities)) print('accuracy:', np.mean(accurate)) # compare 3 images & save if save_fig: print('\n.. view recalling result\n') view_recalling_result(X, X_noise, X_recall, accurate=accurate, **params) similarity = np.mean(similarities) accuracy = np.mean(accurate) return similarity, accuracy