【发布时间】:2019-07-23 15:47:17
【问题描述】:
我是 ANN 和 ML 的新手。我使用 keras 编写了一段简单的代码来训练我的 ANN。该 ANN 有 165 个输入和 1 个输出,具有多个观察值(回归模型)。我的问题是 acc 和 val_acc 都为零,这对我来说毫无意义。我不确定根本原因是什么,我的模型设置或我的数据。另外两个问题是 1)如果我训练这个模型两次,会得到不同的结果; 2)对于模型评估,我应该使用哪些数据集,训练数据还是测试数据?谢谢!
model = keras_model_sequential()
model %>% layer_dense(units = 10, activation = 'relu', input_shape = 165)
model %>% layer_dense(units = 6, activation = 'relu')
model %>% layer_dense(units = 1)
summary(model)
model %>% compile(
loss = "mean_absolute_percentage_error",
optimizer = optimizer_adam(lr = 0.001, beta_1 = 0.9, beta_2 = 0.999 ),
metrics = c('accuracy')
)
Fitted_model = model %>% fit(
x_train, y_train,
epochs = 50, batch_size = 20,
validation_split = 0.2
)
score <- model %>% evaluate(
x_train, y_train
)
cat('Test loss:', score$loss, '\n')
cat('test accuracy:', score$acc, '\n')
y_predict <- model %>% predict(x_test, batch_size = 128)
【问题讨论】:
-
如果我将最后一层的节点#设置为2或更多,就会得到非零的acc和val_acc。但这对我来说毫无意义。