那么在你用数百万行数据训练你的模型之后,保存在磁盘中的模型是什么样的呢?它是否包含数百万个可以做出最佳预测的权重和偏差?
深度学习模型在文件中是什么样的?
数据挖掘
深度学习
2022-02-16 14:39:23
2个回答
是的你是对的。这取决于您用于训练模型的框架。
例如,如果您使用 tensorflow 框架,则训练好的模型将被保存到多个文件中。您可以通过两种方式保存和加载模型:
- 检查点
- 保存的模型(冻结)
请检查此链接。这里
在 keras 中,模型权重保存为 HDF5 格式。这是一种网格格式,非常适合存储多维数字数组。您可以保存模型并将其加载到文件中:
- 将模型保存到 JSON。
- 将模型保存到 YAML。
模型的 JSON 格式如下所示:
{
"keras_version":"2.0.2",
"backend":"theano",
"config":[
{
"config":{
"dtype":"float32",
"bias_regularizer":null,
"activation":"relu",
"bias_constraint":null,
"use_bias":true,
"bias_initializer":{
"config":{
},
"class_name":"Zeros"
},
"kernel_regularizer":null,
"activity_regularizer":null,
"kernel_constraint":null,
"trainable":true,
"name":"dense_1",
"kernel_initializer":{
"config":{
"maxval":0.05,
"minval":-0.05,
"seed":null
},
"class_name":"RandomUniform"
},
"batch_input_shape":[
null,
8
],
"units":12
},
"class_name":"Dense"
},
{
"config":{
"kernel_regularizer":null,
"bias_regularizer":null,
"activation":"relu",
"bias_constraint":null,
"use_bias":true,
"bias_initializer":{
"config":{
},
"class_name":"Zeros"
},
"activity_regularizer":null,
"kernel_constraint":null,
"trainable":true,
"name":"dense_2",
"kernel_initializer":{
"config":{
"maxval":0.05,
"minval":-0.05,
"seed":null
},
"class_name":"RandomUniform"
},
"units":8
},
"class_name":"Dense"
},
{
"config":{
"kernel_regularizer":null,
"bias_regularizer":null,
"activation":"sigmoid",
"bias_constraint":null,
"use_bias":true,
"bias_initializer":{
"config":{
},
"class_name":"Zeros"
},
"activity_regularizer":null,
"kernel_constraint":null,
"trainable":true,
"name":"dense_3",
"kernel_initializer":{
"config":{
"maxval":0.05,
"minval":-0.05,
"seed":null
},
"class_name":"RandomUniform"
},
"units":1
},
"class_name":"Dense"
}
],
"class_name":"Sequential"
}
这取决于,没有一般规则。虽然可以像列表或 JSON 文件一样简单。
其它你可能感兴趣的问题