using Microsoft.VisualStudio.TestTools.UnitTesting; using Tensorflow.Keras.Engine; using System.Diagnostics; using static Tensorflow.KerasApi; using Tensorflow.Keras.Saving; namespace TensorFlowNET.Keras.UnitTest { /// /// https://www.tensorflow.org/guide/keras/save_and_serialize /// [TestClass] public class ModelSaveTest : EagerModeTestBase { [TestMethod] public void GetAndFromConfig() { var model = GetFunctionalModel(); var config = model.get_config(); Debug.Assert(config is ModelConfig); var new_model = keras.models.from_config(config as ModelConfig); Assert.AreEqual(model.Layers.Count, new_model.Layers.Count); } IModel GetFunctionalModel() { // Create a simple model. var inputs = keras.Input(shape: 32); var dense_layer = keras.layers.Dense(1); var outputs = dense_layer.Apply(inputs); return keras.Model(inputs, outputs); } } }