Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

test_obs_likelihood.py 1.7 KB

You have to be logged in to leave a comment. Sign In
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  1. import sys
  2. sys.path.append('src')
  3. import yaml
  4. import pickle
  5. from pickle_wrapper import pickle_it, unpickle
  6. import argparse
  7. from algorithm_2_utilities import Likelihood
  8. from mcmc_norm_learning.robot_task_new import task
  9. from mcmc_norm_learning.environment import position
  10. parser = argparse.ArgumentParser(description='Generate log likelihood of observations given specified norm expressions')
  11. parser.add_argument('norm_types', metavar='NT', type=str, nargs='+',
  12. help='enter none, true and/or top, separated by spaces')
  13. args = parser.parse_args()
  14. requested_expressions = args.norm_types
  15. with open("params.yaml", 'r') as fd:
  16. params = yaml.safe_load(fd)
  17. colour_specific = params['colour_specific']
  18. shape_specific = params['shape_specific']
  19. target_area_parts = params['target_area'].replace(' ','').split(';')
  20. target_area_part0 = position(*map(float, target_area_parts[0].split(',')))
  21. target_area_part1 = position(*map(float, target_area_parts[1].split(',')))
  22. target_area = (target_area_part0, target_area_part1)
  23. the_task = task(colour_specific, shape_specific,target_area)
  24. obs = unpickle('data/observations.pickle')
  25. env = unpickle('data/env.pickle')
  26. if 'none' in requested_expressions:
  27. ll_no_norm = Likelihood([],the_task,obs,env)
  28. print(f"Log likelihood of observations given no norm: {ll_no_norm}\n")
  29. if 'true' in requested_expressions:
  30. true_expression = params['true_norm']['exp']
  31. ll_true_exp = Likelihood(true_expression,the_task,obs,env)
  32. print(f"Log likelihood of observations given true exp.: {ll_true_exp}\n")
  33. if 'top' in requested_expressions:
  34. top_norm = unpickle('data/top_norms.pickle')[0]
  35. ll_top_norm = Likelihood(top_norm,the_task,obs,env)
  36. print(f"Log likelihood of observations given top norm.: {ll_top_norm}\n")
Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...