()
| 52 | def restore_components(self,components):pass |
| 53 | |
| 54 | def old_style_save_and_load(): |
| 55 | # create a model and add parameters. |
| 56 | m = dy.Model() |
| 57 | a = m.add_parameters((100,100)) |
| 58 | b = m.add_lookup_parameters((20,2)) |
| 59 | t1 = Transfer(5,6,dy.softmax, m) |
| 60 | t2 = Transfer(7,8,dy.softmax, m) |
| 61 | tt = MultiTransfer([10,10,10,10],dy.tanh, m) |
| 62 | c = m.add_parameters((100)) |
| 63 | lb = dy.LSTMBuilder(1,2,3,m) |
| 64 | lb2 = dy.LSTMBuilder(2,4,4,m) |
| 65 | # save |
| 66 | m.save("test1") |
| 67 | |
| 68 | # create new model (same parameters): |
| 69 | m2 = dy.Model() |
| 70 | a2 = m2.add_parameters((100,100)) |
| 71 | b2 = m2.add_lookup_parameters((20,2)) |
| 72 | t12 = Transfer(5,6,dy.softmax, m2) |
| 73 | t22 = Transfer(7,8,dy.softmax, m2) |
| 74 | tt2 = MultiTransfer([10,10,10,10],dy.tanh, m2) |
| 75 | c2 = m2.add_parameters((100)) |
| 76 | lb2 = dy.LSTMBuilder(1,2,3,m2) |
| 77 | lb22 = dy.LSTMBuilder(2,4,4,m2) |
| 78 | |
| 79 | # parameters should be different |
| 80 | for p1,p2 in [(a,a2),(b,b2),(c,c2),(t1.W,t12.W),(tt.transfers[0].W,tt2.transfers[0].W)]: |
| 81 | assert(not numpy.array_equal(p1.as_array(), p2.as_array())) |
| 82 | |
| 83 | m2.load("test1") |
| 84 | |
| 85 | # parameters should be same |
| 86 | for p1,p2 in [(a,a2),(b,b2),(c,c2),(t1.W,t12.W),(tt.transfers[0].W,tt2.transfers[0].W)]: |
| 87 | assert(numpy.array_equal(p1.as_array(), p2.as_array())) |
| 88 | |
| 89 | |
| 90 | os.remove("test1") |
| 91 | |
| 92 | old_style_save_and_load() |
| 93 |
no test coverage detected