当前位置: 首页 > 知识库问答 >
问题:

如何使用tensorflow[duplicate]保存DNN模型

阎宝
2023-03-14

我有训练DNN网络的代码。我不想每次都训练这个网络,因为它占用了太多的时间。如何保存模型?

def train_model(filename, validation_ratio=0.):
    # define model to be trained
    columns = [tf.contrib.layers.real_valued_column(str(col),
                                                    dtype=tf.int8)
               for col in FEATURE_COLS]
    classifier = tf.contrib.learn.DNNClassifier(
        feature_columns=columns,
        hidden_units=[100, 100],
        n_classes=N_LABELS,
        dropout=0.3)

    # load and split data
    print( 'Loading training data.')
    data = load_batch(filename)
    overall_size = data.shape[0]
    learn_size = int(overall_size * (1 - validation_ratio))
    learn, validation = np.array_split(data, [learn_size])
    print( 'Finished loading data. Samples count = {}'.format(overall_size))

    # learning
    print( 'Training using batch of size {}'.format(learn_size))
    classifier.fit(input_fn=lambda: pipeline(learn),
                   steps=learn_size)

    if validation_ratio > 0:
        validate_model(classifier, learn, validation)

    return classifier

运行此函数后,我得到一个DNNClassifier,我想保存它。

共有1个答案

方宁
2023-03-14

我相信这里已经回答了这个问题:Tensorflow:如何保存/恢复模型?

saver = tf.train.Saver()
saver.save(sess, 'my_test_model',global_step=1000)

(从该问题的答案中复制的代码

 类似资料:
  • 历元3...验证精度=0.933 历元4...验证精度=0.958 历元5...验证精度=0.965

  • 在TensorFlow中训练模型后: 如何保存已训练的模型? 以后如何还原此保存的模型?

  • 问题内容: 在中训练模型后: 你如何保存经过训练的模型? 以后如何恢复此保存的模型? 问题答案: 从文档: 保存 这仍然是测试版,因此我建议不要使用。如果你仍然想走那条路,这里是tf.saved_model使用指南 Tensorflow <2 simple_save 为了完整起见,我给出了很多好答案,我将加2美分:。也是使用 的独立代码示例。 恢复: 独立示例 为了演示,以下代码生成随机数据。 我

  • 本文向大家介绍TensorFlow入门使用 tf.train.Saver()保存模型,包括了TensorFlow入门使用 tf.train.Saver()保存模型的使用技巧和注意事项,需要的朋友参考一下 关于模型保存的一点心得 在定义 saver 的时候一般会定义最多保存模型的数量,一般来说,如果模型本身很大,我们需要考虑到硬盘大小。如果你需要在当前训练好的模型的基础上进行 fine-tune,那

  • 我将Deeplearning4j(Ver.1.0.0-M1.1)用于构建神经网络。 我以Deeplearning4j中的IrisClassifier为例。 我怎么能得到预测? 萨克斯!

  • 我已经在tensorflow中建立了卷积神经网络,在数据集上对其进行训练,并在看不见的数据上对其进行评估。这样做,我得到了约98%的准确率对看不见的数据<然后我用 并根据相同的数据进行评估,我得到了98%的准确性,但这次我得到了~96%。差别不大,但我觉得也不小。那正常吗? 我已经看到很多次在tenstorflow中,只有权重被导出,而不是偏差,但我不知道它与此有关 这是我的模型结构: