从本系列文章开始,作者正式开始研究Python深度学习、神经网络及人工智能相关知识。前五篇文章讲解了神经网络基础概念、Theano库的安装过程及基础用法、theano实现回归神经网络、theano实现分类神经网络、theano正规化处理,这篇文章讲解神经网络的评价指标、特征标准化和特征选择,均是基础性知识。主要是学习'莫烦大神' 网易云视频的在线笔记,后面随着深入会讲解具体的项目及应用。基础性文章和在线笔记,希望对您有所帮助,本系列作者采用一篇基础一篇代码的形式讲解,也建议大家一步步跟着学习,同时文章中存在错误或不足之处,还请海涵~
前文参考:
一. 神经网络评价指标
由于各种问题影响,会导致神经网络的学习效率不高,或者干扰因素太多导致分析结果不理想。这些因素可能是数据问题,学习参数问题等。这就涉及到了神经网络评价指标。
如何评价(Evaluate)神经网络呢?我们可以通过一些指标对神经网络进行评价,通过评价来改进我们的神经网络。评价神经网络的方法和评价机器学习的方法大同小异,常见的包括误差、准确率、R2 score等。
数据分析通常会将数据集划分为训练数据和预测数据,常见的如70%训练集和30%测试集,或者80%训练集和20%测试集。例如,我们读书时包括作业题和考试题,虽然期末考试时间很少,但其得分比例要高于平时作业。
1.误差(Error)
先用误差评价神经网络,如下图所示,随着训练时间增长,预测误差会不断减小,得到更为准确的答案,最后误差会趋近于水平。
2.精准度(Accuracy)
精准度是指预测结果与真实结果的准确率,接近100%是最好的结果。例如,神经网络中分类问题,100个样本中有90个分类正确,则其预测精准度为90%。通过可以使用精准度预测分类问题,那么,如果是回归问题呢?如何评价连续值的精准度呢?我们使用R2 Score值来进行。
3.R2 Score
在评价回归模型时,sklearn中提供了四种评价尺度,分别为mean_squared_error、mean_absolute_error、explained_variance_score 和 r2_score。
参考:https://blog.csdn.net/Softdiamonds/article/details/80061191
(1) 均方差(mean_squared_error)
(2) 平均绝对值误差(mean_absolute_error)