plt.plot(plot_dict['x_valid'], plot_dict['y_sim']) plt.ylabel('sim metric') plt.subplot(4, 1, 4) plt.plot(plot_dict['x_valid'], plot_dict['y_kld']) plt.xlabel('iter') plt.ylabel('kld metric') _step = 0 while _step < max_iter: # if connection: # frame_data, density_data, reference_density = tranining_dataset.get_frame_connection_c3d(mini_batch=batch, phase='training', density_length='full', data_augmentation=data_augmentation) # else: # frame_data, density_data = tranining_dataset.get_frame_c3d(mini_batch=batch, phase='training', density_length='full', data_augmentation=data_augmentation) frame_data, density_data = tranining_dataset.get_frame_c3d( mini_batch=batch, phase='training', density_length='full', data_augmentation=data_augmentation) solver.net.blobs['data'].data[...] = frame_data solver.net.blobs['gt'].data[...] = density_data # if connection: # solver.net.blobs['reference_density'].data[...] = reference_density solver.step(1) plot_dict['x'].append(_step) plot_dict['y_loss'].append(solver.net.blobs['loss'].data[...].tolist()) # if args.debug==1: # layer_list = ['predict_reshape', 'concat2']
plot_iter = args.plotiter epoch = 20 idx_counter = 0 x = [] y1 = [] y2 = [] z = [] # validation plt.plot(x, y1) _step = 0 while _step < max_iter: if _step % validation_iter == 0: ##do validation pass frame_data, density_data = tranining_dataset.get_frame_c3d( mini_batch=batch) solver.net.blobs['data'].data[...] = frame_data solver.net.blobs['ground_truth'].data[...] = density_data solver.step(1) x.append(_step) y1.append(solver.net.blobs['loss'].data[...].tolist()) # y2.append(solver.net.blobs['loss5'].data[...].tolist()) plt.plot(x, y1) if _step % plot_iter == 0: plt.xlabel('Iter') plt.ylabel('loss') plt.savefig(os.path.join(plot_figure_dir, "plot" + str(_step) + ".png"))
print >> log_f, 'use test set', testset_path, solver = caffe.AdaDeltaSolver(solver_path) solver.net.copy_from(model_path) test_tuple_list = pkl.load(open(testset_path, 'rb')) print >> log_f, ' test set length', len(test_tuple_list) # print testset_path_list, test_tuple_list;exit() dataset.setup_video_dataset_c3d(overlap=8, training_example_props=0.9) dataset.validation_tuple_list = test_tuple_list # print dataset.validation_tuple_list[:10], test_tuple_list[:10] # exit() batch_size = 2 data_tuple = dataset.get_frame_c3d(mini_batch=batch_size, phase='validation', density_length='full') tmp_cc = [] tmp_sim = [] tmp_kld = [] tmp_aucj = [] tmp_aucb = [] index = 0 while data_tuple is not None: print index, 'of', len(test_tuple_list), '\r', sys.stdout.flush() frame_data, density_data = data_tuple solver.net.blobs['data'].data[...] = frame_data solver.net.blobs['ground_truth'].data[...] = density_data solver.net.forward() predictions = solver.net.blobs['predict'].data[