DL 中的一项常见任务是将输入样本归一化为零均值和单位方差。可以使用如下代码“手动”执行规范化:
mean = np.mean(X, axis = 0)
std = np.std(X, axis = 0)
X = [(x - mean)/std for x in X]
Run Code Online (Sandbox Code Playgroud)
但是,除了要训练的 Keras 模型之外,还必须保留均值和标准值,以标准化测试数据。由于均值和标准差是可学习的参数,也许 Keras 可以学习它们?像这样的东西:
m = Sequential()
m.add(SomeKerasLayzerForNormalizing(...))
m.add(Conv2D(20, (5, 5), input_shape = (21, 100, 3), padding = 'valid'))
... rest of network
m.add(Dense(1, activation = 'sigmoid'))
Run Code Online (Sandbox Code Playgroud)
我希望你明白我在说什么。