既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
- 训练数据:用于训练,构建模型
- 测试数据:在模型检验时使用,用于评估模型是否有效
划分比例:
- 训练集:70% 80% 75%
- 测试集:30% 20% 25%
3.2 数据基本处理
即对数据进行缺失值、去除异常值等处理
3.3 特征工程
特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程。(会直接影响机器学习的效果)
特征工程包含内容:
-
特征提取
- 将任意数据(如文本或图像)转换为可用于机器学习的数字特征
- 将任意数据(如文本或图像)转换为可用于机器学习的数字特征
-
特征预处理
- 通过一些转换函数将特征数据转换成更加适合算法模型的特征数据过程
- 通过一些转换函数将特征数据转换成更加适合算法模型的特征数据过程
-
特征降维
- 指在某些限定条件下,降低随机变量(特征)个数,得到一组“不相关”主变量的过程
- 指在某些限定条件下,降低随机变量(特征)个数,得到一组“不相关”主变量的过程
3.4 机器学习(模型训练)
选择合适的算法对模型进行训练
3.5 模型评估
对训练好的模型进行评估
- 结果达到要求,上线服务
- 没有达到要求,重新上面步骤
4 机器学习算法的分类
根据数据集组成不同,可以把机器学习算法分为:
-
监督学习:输入数据是由输入特征值和目标值所组成
- 函数的输出可以是一个连续的值(回归)
- 或是输出是有限个离散值(分类)
-
无监督学习:输入数据是由输入特征值组成
- 样本数据类别未知,需要根据样本间的相似性对样本集进行分类,试图使类内差距最小化,类间差距最大化(聚类)
- 将原高维空间中的数据点映射到低维度的空间中(降维)
-
半监督学习:训练集同时包含有标记样本数据和未标记样本数据。
-
强化学习:实质是 make decisions 问题,即自动进行决策,并且可以做连续决策
- 马尔科夫决策
- 动态规划
强化学习举例:
小孩想要走路,但在这之前,他需要先站起来,站起来之后还要保持平衡,接下来还要先迈出一条腿,是左腿还是右腿,迈出一步后还要迈出下一步。
小孩就是 agent,他试图通过采取行动(即行走)来操纵环境(行走的表面),并且从一个状态转变到另一个状态(即他走的每一步),当他完成任务的子任务(即走了几步)时,孩子得到奖励(给巧克力吃),并且当他不能走路时,就不会给巧克力。
拓展:独立同分布
5 机器学习模型评估方法
5.1 分类模型评估
在分类任务下,预测结果(Predicted Condition)与正确标记(True Condition)之间存在四种不同的组合,构成混淆矩阵(适用于多分类)
准确率
- 预测正确的数占样本总数的比例
- (TP+TN) / (TP+FP+FN+TN)
精确率
- 正确预测为正占全部预测为正的比例(查得准不准)
- TP/(TP+FP)
召回率
- 正确预测为正占全部正样本的比例(查得全不全)
- TP/(TP+FN)
F1-score
- 主要用于评估模型的稳健性
- 其值越接近于1,模型的稳健性越强
ROC曲线
ROC曲线的横轴就是FPRate,纵轴就是TPRate,当二者相等时,表示的意义则是:对于不论真实类别是1还是0的样本,分类器预测为1的概率是相等的,此时AUC为0.5
AUC指标
- 主要用于评估样本不均衡的情况
- 只能用来评价二分类问题
- AUC的概率意义是随机取一对正负样本,正样本得分大于负样本的概率
- AUC(Area Under Curve)被定义为ROC曲线下的面积,显然这个面积的数值不会大于1。又由于ROC曲线一般都处于y=x这条直线的上方,所以AUC的取值范围在0.5和1之间。AUC的最小值为0.5,最大值为1,取值越高越好
- AUC=1,完美分类器,采用这个预测模型时,不管设定什么阈值都能得出完美预测。绝大多数预测的场合,不存在完美分类器。
- 0.5<AUC<1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
TPR = TP / (TP + FN)
- 所有真实类别为1的样本中,预测类别为1的比例
FPR = FP / (FP + TN)
- 所有真实类别为0的样本中,预测类别为1的比例
'''
from sklearn.metrics import roc\_auc\_score
sklearn.metrics.roc\_auc\_score(y\_true, y\_score)
计算ROC曲线面积,即AUC值
y\_true:每个样本的真实类别,必须为0(反例),1(正例)标记
y\_score:预测得分,可以是正类的估计概率、置信值或者分类器方法的返回值
'''
# 0.5~1之间,越接近于1约好
y_test = np.where(y_test > 2.5, 1, 0)
print("AUC指标:", roc_auc_score(y_test, y_predict)
5.2 回归模型评估
均方误差(Mean Squared Error,MSE)
均方根误差(Root Mean Squared Error,RMSE)
- 仅能比较误差是相同单位的模型
相对平方误差(Relative Squared Error,RSE) - 与RMSE不同,RSE可以比较误差是不同单位的模型
平均绝对误差(Mean Absolute Error,MAE)
- MAE与原始数据单位相同, 它仅能比较误差是相同单位的模型。量级近似与RMSE,但是误差值相对小一些。
相对绝对误差(Relative Absolute Error,RAE)
- 与RSE不同,RAE可以比较误差是不同单位的模型
决定系数 (Coefficient of Determination)
R²描述了回归模型所解释的因变量方差在总方差中的比例。R2很大,即自变量和因变量之间存在线性关系,如果回归模型是“完美的”,SSE为零,则R2为1。R2小,则自变量和因变量之间存在线性关系的证据不令人信服。如果回归模型完全失败,SSE等于SST,没有方差可被回归解释,则R2为零。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
7)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新