我正在使用tf.loadLayersModel()
加载到tf.js并收到此错误:
Error: Layer invocation in the presence of activity regularizer(s) is not supported yet.
我正在使用L2正则化器,并且为了确保其正常工作,我还包括以下内容:
class L2 {
static className = 'L2';
constructor(config) {
return tf.regularizers.l2(config)
}
}
tf.serialization.registerClass(L2);
出了什么问题?
注意::这是一个Tensorflow模型,已移至Tf.js,但Tf.js支持活动正则化程序。
Here是未实现错误的源代码。那么不可能用正则化器加载Keras模型吗?
答案 0 :(得分:0)
好吧,根据消息,the link to the repo you provided
我查看了我的 python 代码,并在 activity_regularizer
中注释了 tf.keras.layers.Dense()
参数,它似乎在使用 tensorflowjs_converter
生成后可以工作(至少 javascript 没有显示错误)。
model = tf.keras.Sequential([
# ...
tf.keras.layers.Dense(64, activation='relu',
kernel_initializer=tf.keras.initializers.HeNormal(),
# activity_regularizer=tf.keras.regularizers.l2(1e-04) -->
# ^ Comment line above because not working on tensorflow.js
# ...
])