创建具有训练权重的Keras自定义图层后,如何测试代码的正确性?它似乎没有在Keras的手册中描述。
例如,要测试函数的预期行为,可以编写单元测试。我们如何为Keras自定义图层执行此操作?
答案 0 :(得分:2)
您仍然可以通过获取给定输入的自定义图层的输出并根据手动计算的输出进行验证来执行单元测试等操作,
我们假设您的自定义图层Custom
采用(无,3,200)作为输入形状并返回(无,3)
from keras.layers import Input
from keras.models import Model
inp = Input(shape=(3, 200))
out = Custom()(inp)
model = Model(inp, out)
output = model.predict(your_input)
您可以使用预期输入output
的预期输出验证图层输出your_input
。
答案 1 :(得分:0)
envelope
在keras utils中。
https://github.com/keras-team/keras/blob/master/keras/utils/test_utils.py
他们提供以下代码,用于测试形状,实际结果,序列化和训练:
layer_test