以下代码在Core ML和Python中执行之间产生了不同的输出。
lenmax = 6000
model1 = Sequential()
model1.add(Conv1D(filters=5, kernel_size=1, padding="same",
name="conv1", input_shape=(lenmax,12)))
model1.add(Activation('relu'))
sgd = keras.optimizers.SGD(lr=0.0000001, momentum=0.0, decay=0.0,
nesterov=False)
model1.compile(optimizer=sgd, loss='mse')
y = np.load("./fuga.npy")
model1.fit(X, y, epochs=1)
model1.save("./hoge.h5")
u = model1.predict(X)
np.save("./hoge.npy", u)
A = np.load("./hoge.npy")
print(A[0])
我找到了有问题的部分。
将line4更改为folling代码会导致在Core ML和Python中执行相同的输出。
model1.add(Conv1D(filters=5, kernel_size=1, padding="same", name="conv1", input_shape=(lenmax,12)))
在Core ML中执行时,更改keras模型中的kernel_size会导致无效输出。 这是一个错误吗? 或者,我是否误解了什么?