load

load chain parameters from HDF5 path

void
load
(
C
)
(
ref C chain
,
string path
)

Examples

1 auto model1 = MLP!(float, HostStorage)(3);
2 model1.save("/tmp/test_grain0.h5");
3 
4 auto model2 = MLP!(float, HostStorage)(3);
5 model2.load("/tmp/test_grain0.h5");
6 assert(model1.fc1.bias.sliced == model2.fc1.bias.sliced);
7 
8 import numir;
9 import mir.ndslice;
10 
11 auto x = uniform!float(3, 2).slice.variable;
12 assert(model1(x).sliced == model2(x).sliced);
1 auto model1 = MLP!(float, DeviceStorage)(3);
2 model1.save("/tmp/test_grain1.h5");
3 
4 auto model2 = MLP!(float, DeviceStorage)(3);
5 model2.load("/tmp/test_grain1.h5");
6 assert(model1.fc1.bias.to!HostStorage.sliced == model2.fc1.bias.to!HostStorage
7         .sliced);
8 
9 import numir;
10 import mir.ndslice;
11 
12 auto x = uniform!float(3, 2).slice.variable.to!DeviceStorage;
13 assert(model1(x).to!HostStorage.sliced == model2(x).to!HostStorage.sliced);
1 auto model1 = MLP!(float, HostStorage)(3);
2 model1.save("/tmp/test_grain2.h5");
3 
4 auto model2 = MLP!(float, DeviceStorage)(3);
5 model2.load("/tmp/test_grain2.h5");
6 assert(model1.fc1.bias.to!HostStorage.sliced == model2.fc1.bias.to!HostStorage
7         .sliced);
1 auto model1 = MLP!(float, DeviceStorage)(3);
2 model1.save("/tmp/test_grain3.h5");
3 
4 auto model2 = MLP!(float, HostStorage)(3);
5 model2.load("/tmp/test_grain3.h5");
6 assert(model1.fc1.bias.to!HostStorage.sliced == model2.fc1.bias.to!HostStorage
7         .sliced);

Meta