我想在Keras神经网络中应用一个scipy stats函数作为层,如下所示:
from scipy import stats
class BoxCox(layers.Layer):
def call(self, inputs):
return stats.boxcox(inputs)
# part of usage in model
x1 = layers.Dense(81)(x)
x1 = BoxCox()(x1)
x1 = layers.Dropout(0.25)(x1)
stats
库函数存在不接受张量的问题。例如,错误消息是
NotImplementedError: Cannot convert a symbolic Tensor (activation_12/IdentityN:0) to a numpy array. This error may indicate that you're trying to pass a Tensor to a NumPy call, which is not supported
有什么方法可以让我在神经网络中运行这样一个函数层吗?
非常感谢帮助。谢谢!
图层必须支持梯度的反向传播。只有tensorflow函数支持它。你不能使用其他功能