data_set_parameters = { 'data_set_dir': './data/pathfinder_natural_images_2', } train_parameters = { 'train_batch_size': 32, 'test_batch_size': 1, 'learning_rate': 1e-4, 'num_epochs': 50, 'gaussian_reg_weight': 1e-5, 'gaussian_reg_sigma': 10, } # Create Model cont_int_layer = new_piech_models.CurrentSubtractInhibitLayer( lateral_e_size=15, lateral_i_size=15, n_iters=5) # cont_int_layer = new_control_models.ControlMatchParametersLayer( # lateral_e_size=15, lateral_i_size=15) # cont_int_layer = new_control_models.ControlMatchIterationsLayer( # lateral_e_size=15, lateral_i_size=15, n_iters=5) scale_down_input_to_contour_integration_layer = 4 net = new_piech_models.BinaryClassifierResnet50(cont_int_layer) main(net, train_params=train_parameters, data_set_params=data_set_parameters, base_results_store_dir='./results/pathfinder', cont_int_scale=scale_down_input_to_contour_integration_layer)
# ---------------------------------------------------------------------- data_set_parameters = { 'data_set_dir': "./data/channel_wise_optimal_full14_frag7", 'train_subset_size': 20000, 'test_subset_size': 2000 } for lr in lr_arr: print("Processing learning rate = {} {}".format(lr, '*' * 40)) base_results_dir = './results/analyze_lr_rate/lr_{}'.format(lr) cont_int_layer = new_piech_models.CurrentSubtractInhibitLayer( lateral_e_size=15, lateral_i_size=15, n_iters=5, use_recurrent_batch_norm=True) # cont_int_layer = new_piech_models.CurrentDivisiveInhibitLayer( # lateral_e_size=15, lateral_i_size=15, n_iters=5, use_recurrent_batch_norm=True) # cont_int_layer = new_control_models.ControlMatchParametersLayer( # lateral_e_size=15, lateral_i_size=15) model = new_piech_models.ContourIntegrationResnet50(cont_int_layer) train_parameters = { 'random_seed': random_seed, 'train_batch_size': 32, 'test_batch_size': 32, 'learning_rate': lr,
plt.title("Input") if __name__ == "__main__": # ----------------------------------------------------------------------------------- # Init # ----------------------------------------------------------------------------------- random_seed = 10 plt.ion() torch.manual_seed(random_seed) np.random.seed(random_seed) data_dir = "./data/channel_wise_optimal_full14_frag7" cont_int_layer = new_piech_models.CurrentSubtractInhibitLayer( lateral_e_size=15, lateral_i_size=15, n_iters=5, store_recurrent_acts=True) net = new_piech_models.ContourIntegrationResnet50(cont_int_layer) saved_model = \ './results/positive_weights' \ '/ContourIntegrationResnet50_CurrentSubtractInhibitLayer_20201220_194703_baseline' \ '/best_accuracy.pth' dev = torch.device("cuda" if torch.cuda.is_available() else "cpu") net.load_state_dict(torch.load(saved_model, map_location=dev)) device = dev # -----------------------------------------------------------------------------------