深度学习模型和评估
在设计和配置深度学习模型时,面临很多选择(如网络的层数、大小和类型、以及损失函数的选择等),必须做出决策来选择合适的设计与配置。
1 自动评估
keras可将数据集的一部分分成评估数据集,并在每个epoch中使用该评估数据集对模型进行评估。实现上,可以通过将fit() 函数的验证分割参数(validation_split)设置为数据集的百分比来实现。
#训练模型并自动评估模型
model.fit(x=x, y=Y, epochs=500, batch_size=20, validation_split=0.2)
2 手动评估
1)手动分离数据集并评估
2)k折交叉验证
参考:https://www.cnblogs.com/skyfsm/p/8467613.html
机器学习最常见的模型评估指标,包括:
- precision
- recall
- F1-score
- PRC
- ROC 和 AUC
- IOU
混淆矩阵
理解:第一个字母表示本次预测的正确性,T是正确,F是错误;第二个字母表示由分类器预测的类别,P代表预测为正例,N代表预测为反例。
- True Positive (真正,TP)被模型预测为正的正样本
- True Negative(真负 , TN)被模型预测为负的负样本
- False Positive (假正, FP)被模型预测为正的负样本
- False Negative(假负 , FN)被模型预测为负的正样本
Precision、Recall、PRC、F1-score
- Precision 查准率(精确率),指在所有系统判定的”真“样本中,确实是真的得占比
- Recall 查全率(召回率),指在所有确定为真的严格不能种,被判别为”真“的占比
** 注:precision和accuracy不一样,accuracy针对所有样本,precision针对部分样本 **
查准率和查全率是一对矛盾的度量。通常只有在一些简单任务中才可能使查准率和查全率都很高。
PRC - Precision Recall Curve
以查准率为Y轴,查全率为X轴做的图。它是综合评价整体结果的评估指标。
F1-score 是一个综合考虑precision和recall的指标。
ROC & AUC
ROC 全称是“受试者工作特征”(Receiver Operating Characteristic)曲线,ROC曲线以“真正例率”(TPR)为Y轴,以“假正例率”(FPR)为X轴,对角线对应于“随机猜测”模型,而(0,1)对应“理想模型”。