public void TestOldSavingAndLoading() { var data = new[] { new TestClass() { A = 1, B = 2, C = 3, }, new TestClass() { A = 4, B = 5, C = 6 } }; var dataView = ComponentCreation.CreateDataView(Env, data); var pipe = new HashEstimator(Env, new[] { new HashTransformer.ColumnInfo("A", "HashA", hashBits: 4, invertHash: -1), new HashTransformer.ColumnInfo("B", "HashB", hashBits: 3, ordered: true), new HashTransformer.ColumnInfo("C", "HashC", seed: 42), new HashTransformer.ColumnInfo("A", "HashD"), }); var result = pipe.Fit(dataView).Transform(dataView); var resultRoles = new RoleMappedData(result); using (var ms = new MemoryStream()) { TrainUtils.SaveModel(Env, Env.Start("saving"), ms, null, resultRoles); ms.Position = 0; var loadedView = ModelFileUtils.LoadTransforms(Env, dataView, ms); } }
public void TestMetadata() { var data = new[] { new TestMeta() { A = new float[2] { 3.5f, 2.5f }, B = 1, C = new double[2] { 5.1f, 6.1f }, D = 7 }, new TestMeta() { A = new float[2] { 3.5f, 2.5f }, B = 1, C = new double[2] { 5.1f, 6.1f }, D = 7 }, new TestMeta() { A = new float[2] { 3.5f, 2.5f }, B = 1, C = new double[2] { 5.1f, 6.1f }, D = 7 } }; var dataView = ComponentCreation.CreateDataView(Env, data); var pipe = new HashEstimator(Env, new[] { new HashTransformer.ColumnInfo("A", "HashA", invertHash: 1, hashBits: 10), new HashTransformer.ColumnInfo("A", "HashAUnlim", invertHash: -1, hashBits: 10), new HashTransformer.ColumnInfo("A", "HashAUnlimOrdered", invertHash: -1, hashBits: 10, ordered: true) }); var result = pipe.Fit(dataView).Transform(dataView); ValidateMetadata(result); Done(); }