2
我刚开始使用Keras。我工作的样品有模型和下面的代码片段是用来运行模型如何解读Keras model.fit输出?
from sklearn.preprocessing import LabelBinarizer
label_binarizer = LabelBinarizer()
y_one_hot = label_binarizer.fit_transform(y_train)
model.compile('adam', 'categorical_crossentropy', ['accuracy'])
history = model.fit(X_normalized, y_one_hot, nb_epoch=3, validation_split=0.2)
我得到如下回应:
Using TensorFlow backend. Train on 80 samples, validate on 20 samples Epoch 1/3
32/80 [===========>..................] - ETA: 0s - loss: 1.5831 - acc:
0.4062 80/80 [==============================] - 0s - loss: 1.3927 - acc:
0.4500 - val_loss: 0.7802 - val_acc: 0.8500 Epoch 2/3
32/80 [===========>..................] - ETA: 0s - loss: 0.9300 - acc:
0.7500 80/80 [==============================] - 0s - loss: 0.8490 - acc:
0.8000 - val_loss: 0.5772 - val_acc: 0.8500 Epoch 3/3
32/80 [===========>..................] - ETA: 0s - loss: 0.6397 - acc:
0.8750 64/80 [=======================>......] - ETA: 0s - loss: 0.6867 - acc:
0.7969 80/80 [==============================] - 0s - loss: 0.6638 - acc:
0.8000 - val_loss: 0.4294 - val_acc: 0.8500
的documentation说,适合的回报
历史实例。其历史属性包含训练期间收集的所有信息 。
有谁知道如何解释历史实例?
例如,32/80是什么意思?我假设80是样本的数量,但是32是什么? ETA:0s?
你有什么acc:0.4062 80/80的意思呢? acc =准确性? 80/80 80正确的80?这不意味着acc = 1.0?是否有任何地方的输出含义的参考链接? – SeanJ
'80/80'意思是“来自总共80个样本的80个样本”已经被训练。因此,您看到的第一个条目是“32/80”,它表示:“总共80个样本中的32个”。反过来,准确度是根据您网络此时预测的值与您以标签形式提供的实际值计算得出的。 – petezurich
关于输出含义的问题是一个更广泛的问题,我恭敬地建议您查看许多教授基础知识的课程之一,即[this this](http://course.fast.ai/)来自杰里米霍华德,这是非常方便。 – petezurich