{
  "format": "layers-model",
  "generatedBy": "TensorFlow.js tfjs-layers v4.22.0",
  "convertedBy": null,
  "modelTopology": {
    "class_name": "Sequential",
    "config": {
      "name": "sequential_1",
      "layers": [
        {
          "class_name": "Dense",
          "config": {
            "units": 128,
            "activation": "relu",
            "use_bias": true,
            "kernel_initializer": {
              "class_name": "VarianceScaling",
              "config": {
                "scale": 1,
                "mode": "fan_avg",
                "distribution": "normal",
                "seed": null
              }
            },
            "bias_initializer": {
              "class_name": "Zeros",
              "config": {}
            },
            "kernel_regularizer": null,
            "bias_regularizer": null,
            "activity_regularizer": null,
            "kernel_constraint": null,
            "bias_constraint": null,
            "name": "hidden_relu_128",
            "trainable": true,
            "batch_input_shape": [
              null,
              784
            ],
            "dtype": "float32"
          }
        },
        {
          "class_name": "Dense",
          "config": {
            "units": 10,
            "activation": "softmax",
            "use_bias": true,
            "kernel_initializer": {
              "class_name": "VarianceScaling",
              "config": {
                "scale": 1,
                "mode": "fan_avg",
                "distribution": "normal",
                "seed": null
              }
            },
            "bias_initializer": {
              "class_name": "Zeros",
              "config": {}
            },
            "kernel_regularizer": null,
            "bias_regularizer": null,
            "activity_regularizer": null,
            "kernel_constraint": null,
            "bias_constraint": null,
            "name": "digit_probabilities",
            "trainable": true
          }
        }
      ]
    },
    "keras_version": "tfjs-layers 4.22.0",
    "backend": "tensor_flow.js"
  },
  "weightsManifest": [
    {
      "paths": [
        "mnist-mlp-preset.weights.bin"
      ],
      "weights": [
        {
          "name": "hidden_relu_128/kernel",
          "shape": [
            784,
            128
          ],
          "dtype": "float32"
        },
        {
          "name": "hidden_relu_128/bias",
          "shape": [
            128
          ],
          "dtype": "float32"
        },
        {
          "name": "digit_probabilities/kernel",
          "shape": [
            128,
            10
          ],
          "dtype": "float32"
        },
        {
          "name": "digit_probabilities/bias",
          "shape": [
            10
          ],
          "dtype": "float32"
        }
      ]
    }
  ],
  "userDefinedMetadata": {
    "displayName": "教师预置 MLP 模型",
    "modelType": "mlp",
    "architecture": "784 → 128 → 10",
    "description": "使用多层感知机训练得到的教学模型。",
    "accuracy": 0.9575999975204468,
    "loss": 0.148554727435112,
    "epochs": 15,
    "trainingHistoryPath": "models/mnist-mlp-preset/training-history.json"
  }
}