一、什么是机器学习
即我们提供数据集,然后计算机根据一定的算法帮我们构建一个模型,相当于一个学习过程,之后输入新的数据,
模型返回给我们一定的数据
二、机器学习种类的划分
1.监督学习
即既有输入变量又有输出变量
如果输出变量为离散型我们一般称为分类问题
如果输出变量为连续型我们一般称为回归问题
2.无监督学习
只有输入变量,没有输出变量
常见的两种应用:聚类和降维
在不知道类别的情况下是聚类问题,类别已知则为分类问题
3.强化学习
“通过不断与环境的交互和试错的过程,最终完成特定目的或使得整体行动收益最大化。”
这个还没实际应用不太清楚
三、模型评估指标
以下概念需要稍微记一下,毕竟好多的机器学习输出的参数都与这些有关
1.回归问题的评估指标
SSE:误差平方和 Sum of Squares due to Error
RMSE:均方根误差 Root Mean Square Error
MSE:均方误差 Mean Square Error
MAE:平均绝对误差 Mean Absolute Error
MAPE:平均绝对百分比误差 Mean Absolute Percentage Error
SMAPE:对称平均绝对百分比误差 Symmetric Mean Absolute Percentage Error
2.分类问题的指标
首先需要定义正类和负类
一般我们将那些更加关注的事件定义为正类事件
当然不是绝对的,不过经验来说是那些更不容易发生的定义为正类
TP:True Positive 将正类预测成正类的数量
FN:False Negative 将正类预测成负类的数量
FP:False Positive 将负类预测成正类的数量
TN:True Negative 将负类预测成负类的数量
分类准确率:Accuracy 正确分类的样本数与总样本数之比
查全率或召回率:Recall 在实际为正类的样本中的预测准确的比例
查准率或精确率:Precision 在预测为正确的样本中预测准确的比例
通常来讲二者具有一定的负相关关系
F1分数:F1 Score
F1分数是查全率与查准率的调和平均数
越接近1越好
ROC曲线和AUC
通常只要了解ROC曲线越靠近左上角越好
而更严格的定义应该是以数值进行体现,AUC表示曲线下方的面积越接近1越好
一般来讲小于0.5说明模型不能用,大于0.85说明模型还可以
四、模型的泛化能力
指模型的扩展性,对于未知数据展现的预测效果
如果对于训练数据预测的很好,然而对于未知数据的预测效果不好,此时模型的泛化能力较差
五、训练数据的方法
1.留出法
为了验证模型的泛化能力,一般将数据分为训练集和测试集
训练集用于训练模型,测试集用于验证模型的泛化能力
比例根据实际情况进行确定
划分需要随机,同时也要保证数据分布的一致性
即采取分层抽样的方法,按照一定的比例划分到训练集和测试集
2.交叉验证
一种比较常见的就是k折交叉验证
将样本随机划分成k个互斥子集
然后用k-1个子集训练数据,剩下的那个子集进行测试数据
这样可以获取k组验证结果,然后利用k次结果进行综合判断
六、如何选择一个好的模型
综合利用以上指标对于模型的泛化能力进行一个评估,当然在评估的过程中不可避免
的要进行调整一些参数,选择好模型和参数之后,对于之前用于测试的数据可以重新加入测试集
进行测试,增加模型的可靠性
七、欠拟合与过拟合的概念
欠拟合就是信息利用的不够充分
过拟合就是信息利用的过头了
以下来自知乎的段子,帮助理解
欠拟合:"你太天真了"
过拟合:"你想太多了"