机器学习01
机器学习01相关概述AI、ML、DL、RL机器学习常用术语按学习方式划分工作流程训练集、测试集划分方法超参数选择方法性能度量分类任务回归任务典型应用领域相关概述AI、ML、DL、RL人工智能AIArtificial Intelligence其本质是让机器完成原本需要人类智慧才能处理的任务。目标为创造出能够模拟、延伸、甚至超越人类智能的机器系统。机器学习MLMachine Learning是实现AI的一种途径核心思想不人为编写全部固定规则让计算机通过海量数据利用统计、优化算法自动学习数据内在规律、模式形成可泛化的模型完成预测、分类、识别、决策任务。深度学习DLDeep Learning是多层神经网络驱动的机器学习通过多层非线性网络结构自动完成特征提取无需人工设计特征。强化学习RLReinforcement Learning是机器学习的一个独立分支一套基于试错交互的学习框架。核心逻辑智能体Agent在持续变化的环境Environment中主动执行动作环境反馈奖励Reward智能体不断调整自身策略目标是最大化长期累计奖励最终学会最优决策方案。传统的编程逻辑基于规则的学习规则 输入数据 → 输出结果机器学习逻辑基于模型的学习输入数据 对应标签/目标 → 学习得到模型 → 新数据预测输出。机器学习常用术语1. 样本 / 特征 / 标签样本Sample单条数据一条用户记录、一张图片特征Feature描述样本的属性身高、像素、价格标签Label目标答案猫 / 狗、房价、是否违约。2. 泛化能力模型在未见过的新数据上的表现好坏是衡量模型优劣第一标准3. 数据集划分固定分割为训练集、验证集、测试集。训练集模型学习参数验证集调超参数、筛选模型测试集最终泛化性能评估全程不参与训练。4. 欠拟合、正常拟合、过拟合用来描述模型拟合数据的程度判断模型泛化能力好坏。欠拟合Underfitting模型复杂度太低对训练样本的一般性质尚未学好在训练、未知数据上效果都很差。正常拟合Good Fit平衡了模型复杂度是训练追求的最优状态训练集误差适中测试集误差和训练集接近差距很小过拟合 Overfitting模型复杂度过高将训练样本自身的一些特点当做了所有潜在样本都具有的一般性质即噪声、异常点等也被学习训练集误差极低几乎完美预测训练数据测试集误差远高于训练集二者差距巨大。5. 经验误差错误率分类错误的样本数占样本总数的比例精度 1 - 错误率误差模型的实际预测输出与样本的真实输出之间差异训练误差 / 经验误差模型在训练集上的误差泛化误差模型在新样本上的误差按学习方式划分1. 监督学习训练集同时包含输入特征 X与人工标注标签 Y模型学习从 X 到 Y 的映射关系有明确标准答案指导训练。两大任务分类 Classification输出离散类别二分类垃圾邮件识别、疾病检测、信贷违约多分类手写数字识别、图像猫狗分类、情感正负向算法逻辑回归、SVM、随机森林回归 Regression输出连续数值场景房价预测、销量预估、温度预测算法线性回归、XGBoost、LightGBM2. 无监督学习无任何人工标签仅输入特征 X算法自动挖掘数据内部分布、相似关系、隐藏结构。典型任务聚类 Clustering自动把相似样本分组K-Means、DBSCAN用户分层、商品分群降维 Dimensionality Reduction高维数据压缩保留关键信息PCA、t-SNE数据可视化、特征降噪关联规则挖掘 Apriori挖掘特征共现规律购物篮分析异常检测识别偏离整体分布的异常样本3. 半监督学习少量带标注样本 大量无标注样本解决标注成本过高的痛点。4. 自监督学习属于无监督学习的高级分支完全不需要人工标签利用数据自身内在结构自动构造伪标签完成预训练。5. 强化学习不靠静态数据集与标签依靠智能体 Agent 与环境持续交互通过奖励 Reward 信号试错学习最优序列决策。工作流程步骤 1需求拆解明确目标、评价指标、数据边界区分是分类 / 回归 / 聚类任务。步骤 2数据采集数据库、日志、爬虫、公开数据集、传感器采集数据质量直接决定模型上限。步骤 3数据预处理数据清洗缺失值填充、重复样本删除、异常值剔除特征工程传统 ML 核心特征提取 → 特征预处理归一化、标准化… → 特征构造基于现有特征组合生成新特征 → 特征选取 → 特征降维数据集划分固定分割为训练集、验证集、测试集训练集模型学习参数验证集调超参数、筛选模型测试集最终泛化性能评估全程不参与训练。步骤 4模型选择与训练传统机器学习线性模型、树模型、SVM 等轻量、可解释、小数据友好深度学习神经网络大数据、图像 / 文本 / 语音等高维数据效果更强训练逻辑定义损失函数用梯度下降等优化器迭代更新模型参数最小化预测误差。步骤 5调参与优化超参数学习率、树深度、网络层数人工设置不自动学习优化手段网格搜索、随机搜索、贝叶斯调参正则化L1/L2 正则、Dropout、早停 Early Stop解决过拟合。步骤 6模型预测与评估不同任务指标不同分类任务准确率 Acc、精确率 Precision、召回率 Recall、F1 分数、AUC-ROC回归任务MAE 平均绝对误差、MSE 均方误差、R² 拟合优度聚类轮廓系数、DB 指数通用基准对比简单基线模型判断模型是否有效提升。训练集、测试集划分方法留出法直接将数据集划分为两个互斥的集合其中一个集合为训练集 S、另一个作为测试集 T在 S 上训练出模型后用 T 来评估其测试误差作为对泛化误差的估计。——常见的划分比例为训练集测试集 73 或者 82——分类任务中训练 / 测试集的划分要保持数据分布的一致性即采用分层采样保持样本类别比例相似。——单次使用留出法得到的估计结果不够稳定可靠一般要采用若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果。优点实现简单、计算速度快一次划分即可完成训练评估适合数据量充足、快速建模、快速验证模型效果的场景。缺点划分结果具有随机性模型评估指标波动较大结果不稳定数据利用不充分总有一部分数据只做测试、不参与训练数据量小时误差放大若数据集本身样本少测试集样本过少评估结果不具备代表性。交叉验证法Cross Validation先将数据集划分为 k 个大小相似的互斥子集每个子集均通过分层采样获得每次用 k-1 个子集的并集作为训练集余下的子集作为测试集获取 k 组训练 / 测试集进行 k 次训练和测试最终返回 k 个测试结果的均值也被称为“k 折交叉验证”。——k 最常用的取值为1010 折交叉验证其他还有 5、20 等——由于数据集划分为 k 个子集存在多种划分方式为减小因样本划分不同而引入的差别通常需要随机使用不同的划分重复 p 次称为“p 次 k 折交叉验证”。优点全部数据都会参与训练和验证数据利用率最大化多次评估取平均大幅降低单次划分带来的随机误差评估结果更稳定可靠常用于超参数寻优网格搜索 GridSearchCV 底层就是交叉验证选出泛化能力最好的模型。缺点需要循环训练 k 次模型计算耗时是留出法的 k 倍训练成本高。留一法Leave-One-Out即 k 样本数每次只留 1 个样本做验证其余全部训练优点数据利用率 100%缺点样本量大时计算极慢几乎不用于大数据。超参数选择方法网格搜索Grid Search人为给定超参数所有候选组合遍历全部搭配用交叉验证评估每组效果选出指标最优的一组超参数。——遍历所有组合不会漏掉最优解——超参数数量多时组合爆炸计算量极大适合少量超参数、候选值不多的场景。fromsklearn.model_selectionimportGridSearchCV# KNN超参数候选param_grid{n_neighbors:[3,5,7,9],metric:[euclidean,chebyshev]}# 给定超参数knnKNeighborsClassifier()# 模型对象# estimator带调参的模型param_grid字典格式定义需要遍历的超参数以及候选取值cv交叉验证折数gridGridSearchCV(estimatorknn,param_gridparam_grid,cv5)# 模型训练grid.fit(X_train_scaled,y_train)# grid.best_score_最优评分print(grid.best_score_)# grid.best_params_属性输出验证集效果最好的那一组超参字典print(grid.best_params_)# grid.best_estimator_返回训练好的最优模型对象可直接用来预测print(grid.best_estimator_)grid.best_estimator_.predict(X_test)# grid.cv_results_字典保存所有参数组合对应的每一轮验证分数、平均分数、训练耗时等全部记录print(grid.cv_results_)随机搜索Random Search不遍历全部组合在超参数搜索空间中随机抽取固定数量组合验证对于连续型超参数可在区间随机采样。——同等计算开销下覆盖更广参数范围更容易找到较优解——高维、多超参数场景远快于网格搜索——不保证搜到全局最优但效果通常接近最优。性能度量衡量模型泛化能力的评价标准。分类任务前置混淆矩阵二分类——设样本分为正类、负类定义四个基础统计量TP True Positive真正例真实正预测正TN True Negative真负例真实负预测负FP False Positive假正例真实负预测正FN False Negative假负例真实正预测负准确率 Accuracy所有样本中预测正确的占比。适用类别均衡数据集缺陷不平衡数据会误导评估。A c c u r a c y T P T N T P T N F P F N Accuracy \frac{TPTN}{TPTNFPFN}AccuracyTPTNFPFNTPTN​sklearn accuracy_score(y_true, y_pred)精确率 Precision查准率所有预测为正的样本里真正为正的比例。场景垃圾邮件、风控尽量避免误判。P T P T P F P P \frac{TP}{TPFP}PTPFPTP​召回率 Recall查全率所有正类样本中被成功预测为正类的比例。场景疾病检测、故障识别尽量不漏检。R T P T P F N R \frac{TP}{TPFN}RTPFNTP​F1 分数精确率与召回率的调和平均综合两者性能值域 [0,1]越接近 1 效果越好。F 1 2 ⋅ P ⋅ R P R F1 \frac{2 \cdot P \cdot R}{P R}F1PR2⋅P⋅R​sklearnf1_score()、classification_report()批量输出每类 P/R/F1ROC 与 AUC二分类概率输出模型TPR真正率 Recall所有正类样本中被预测为正类的比例T P R T P T P F N TPR\frac{TP}{TPFN}TPRTPFNTP​FPR假正率所有负类样本中被预测为正类的比例F P R F P T N F P FPR\frac{FP}{TNFP}FPRTNFPFP​——ROC 曲线受试者工作特征曲线-Receiver Operating Characteristic以 FPR 为横轴、TPR 为纵轴——AUC Area Under ROC Curve是 ROC 曲线下的面积AUC∈[0,1]越接近 1 区分能力越强。sklearnroc_auc_score()回归任务用于预测连续值房价、销量、指标衡量预测值y ^ i \hat{y}_iy^​i​与真实值y i y_iyi​的误差。m为样本总数y ˉ \bar{y}yˉ​为真实标签均值。均方误差 MSEM S E 1 m ∑ i 1 m ( y i − y ^ i ) 2 MSE \frac{1}{m}\sum_{i1}^m \big(y_i - \hat{y}_i\big)^2MSEm1​i1∑m​(yi​−y^​i​)2sklearnmean_squared_error()均方根误差 RMSER M S E 1 m ∑ i 1 m ( y i − y ^ i ) 2 RMSE \sqrt{\frac{1}{m}\sum_{i1}^m \big(y_i - \hat{y}_i\big)^2}RMSEm1​i1∑m​(yi​−y^​i​)2​——会放大误差较大的数据对指标的影响对异常点很敏感。平均绝对误差 MAEM A E 1 m ∑ i 1 m ∣ y i − y ^ i ∣ MAE \frac{1}{m}\sum_{i1}^m \big|y_i - \hat{y}_i\big|MAEm1​i1∑m​​yi​−y^​i​​sklearnmean_absolute_error()——对误差大小不敏感进行性能度量时可通过 MAE 与 RMSE 综合来看。绝对系数 R²衡量模型能解释的数据波动比例值域 (−∞,1]。R 2 1 − ∑ i 1 m ( y i − y ^ i ) 2 ∑ i 1 m ( y i − y ˉ ) 2 R^2 1 - \frac{\displaystyle\sum_{i1}^m \big(y_i - \hat{y}_i\big)^2}{\displaystyle\sum_{i1}^m \big(y_i - \bar{y}\big)^2}R21−i1∑m​(yi​−yˉ​)2i1∑m​(yi​−y^​i​)2​sklearnr2_score()典型应用领域计算机视觉人脸识别、安防图像检测、医学影像识别、图片生成自然语言处理 NLP智能客服、大语言模型、问答系统、情感分析数据分析与数据挖掘领域客户价值分层、量化交易等推荐系统电商商品推荐、短视频 / 音乐推荐协同过滤、深度推荐模型医疗辅助诊断、药物分子筛选、患者病情预测