def visualize_sample_trajectory(agent, task, path=None): ''' Useful to visualize 2D Trajectories inside IPython ''' if util.in_ipython(): from IPython import display else: print 'Must be inside IPython!' raise NotImplementedError() if path is None: images = get_sample_trajectory(agent, task) else: images = pickle.load(file(path, 'r')) # show the position of the agent across time def show_image(image): plt.pcolor(image, cmap=task.cmap, norm=task.color_norm) display.display(plt.gcf()) display.clear_output(wait=True) for image in images: show_image(image)
import cPickle as pickle # In[ ]: parser = argparse.ArgumentParser() parser.add_argument('dataset') parser.add_argument('model') parser.add_argument('relation') parser.add_argument('baseline') parser.add_argument('compositional') # good one for illustration # path: ('parents', 'location') # relation: 'place_of_birth' if util.in_ipython(): args = parser.parse_args([ 'freebase_socher', 'bilinear', 'nationality', 'bilinear_freebase_socher_0x77cdc2_params.cpkl', 'compositional_params_freebase' ]) else: args = parser.parse_args() dset = parse_dataset(args.dataset) baseline = load_params(args.baseline, args.model) compositional = load_params(args.compositional, args.model) def compare_angles(p): b_angle = dns.path_angle(p, args.relation, baseline)
import numpy as np import matplotlib.pyplot as plt from collections import Counter import argparse from os.path import join import cPickle # In[ ]: parser = argparse.ArgumentParser() parser.add_argument('dataset') parser.add_argument('model') parser.add_argument('params') if util.in_ipython(): args = parser.parse_args(['freebase_socher', 'bilinear', 'compositional_wvec_bilinear_freebase_socher_0xe7d4cf_params.cpkl']) else: args = parser.parse_args() util.metadata('dataset', args.dataset) util.metadata('model', args.model) util.metadata('params', args.params) util.metadata('split', 'test') model = CompositionalModel(None, path_model=args.model, objective='margin') params = load_params(args.params, args.model) dev = dns.load_socher_test(join(args.dataset, 'dev')) test = dns.load_socher_test(join(args.dataset, 'test'))