时间:2023-03-15 09:24:11 | 栏目:Python代码 | 点击:次
keras.metrics可以用来对数据进行记录跟踪,当我们的数据量太大,又想在中间就看看训练的情况的时候,可以使用此接口。步骤如下:
通过metrics中带有的借口,创建一个meter。
当我们在某一行代码得到了需要的数据的时候,就可以调用update_state方法,将数据进行更新。注意,不同的方法需要传入的参数是不一样的。
我们可以设置在某个节点或状态的时候,获取当前的meter所存储的数据。
当一个阶段数据记录查看结束后,使用reset_states重置meter,记录下一阶段。
生成了一个模型之后,有compile, fit, evalute, predict等接口可以调用,这可以使得我们的训练很容易实现。
这个方法中可以指定:优化器+lr,损失,准确率等。
完成compile之后,直接调用fit,给出训练数据,指定epoch就可以了。
以上两行,就可以直接完成训练,训练过程中会返回一些基本信息,训练周期,数据量,使用的时间,每一步使用的时间,每一个周期后的损失值等。
fit中还可以给出validation_data = test_data, validation_freq=2,也就是循环2次训练,就进行一次测试,会打印出测试分数。可见下面情况已经过拟合了。
调用这个方式之后,会在训练完成后,进行测试,并打印出测试结果。
这个其实和network(x)是一样的,就是完成前向传播。