简单案例

在一个酒吧里,吧台上摆着十杯几乎一样的红酒,老板说想不想玩个游戏,赢了免费喝酒,输了需要付三倍的酒钱。眼前的十杯红酒,每杯都略有不同,前五杯属于【赤霞珠】,后五杯属于【黑皮诺】,现在重新倒一杯酒,你需要正确的说出属于哪一类?

算法体系

机器学习(Machine Learning, ML)是人工智能(AI)的一个分支,旨在通过数据和算法使计算机系统能够像人类一样学习和做出决策,而无需明确编程指令。机器学习的核心是从数据中提取模式,并使用这些模式对新数据进行预测或分类。

机器学习的方法是基于数据产生的模型算法,也称学习算法。包括有:

  • 有监督学习(supervised learning)
  • 无监督学习(unsupervised learning)
  • 半监督学习(semi-supervised learning)
  • 强化学习(reinforcement learning)

有监督学习(Supervised Learning)

指对数据的若干特征与若干标签(类型)之间的关联性进行建模,只要模型被确定,就可以用用到新的未知数据上。这类学习过程可以进一步为:【分类】classification 任务和【回归】regression 任务。

  • 分类任务中,标签都是离散值
  • 回归任务中,标签都是连续值

监督学习是指算法在训练过程中依赖标注好的数据集。数据集中的每一个样本都有一个对应的正确输出,算法通过这些”输入-输出”对,学习如何从输入数据预测输出。

应用:分类问题(如垃圾邮件识别)、回归问题(如房价预测) 常见算法:线性回归、决策树、随机森林、支持向量机(SVM)、神经网络等

无监督学习(Unsupervised Learning)

无监督学习是机器学习中重要的学习范式之一,其核心特点是不依赖于人工标注的标签数据。与监督学习不同,无监督学习让算法自主探索数据内在的结构和模式,是一种典型的”数据驱动”学习方式。

主要任务类型

  1. 聚类(Clustering)

    • 目标:将相似的数据点自动分组
    • 典型算法:K-means聚类、层次聚类、DBSCAN
    • 应用场景:客户细分、文档主题分类、异常检测
  2. 降维(Dimensionality Reduction)

    • 目标:减少特征数量同时保留重要信息
    • 典型方法:主成分分析(PCA)、t-SNE、自编码器(Autoencoder)
    • 应用场景:高维数据可视化、特征工程预处理、图像压缩

半监督学习

半监督学习方法介于有监督学习和无监督学习之间,通过可以在数据不完整的时候使用。

强化学习(Reinforcement Learning)

强化学习是一种基于试错机制的机器学习方法,与监督学习有着本质区别。监督学习依赖于预先标记的训练数据,而强化学习则是通过与环境的动态交互来学习最优策略。

强化学习的核心机制可以概括为”状态-动作-奖励”的循环:

  1. 智能体观察当前环境状态(state)
  2. 根据当前策略选择并执行一个动作(action)
  3. 环境给出相应的即时奖励(reward)和新的状态
  4. 智能体根据奖励信号更新策略

典型应用场景

  • 机器人控制:如机械臂抓取物体
  • 自动驾驶:车辆通过模拟环境学习如何安全高效地行驶
  • 游戏AI:AlphaGo通过自我对弈不断优化下棋策略
  • 资源调度:数据中心通过强化学习优化服务器资源分配

常见算法类型

  1. 基于价值的算法(如Q-learning)
  2. 基于策略的算法(如策略梯度)
  3. 演员-评论家算法

输入输出空间与特征空间

在场景中,每一杯酒作为一个样本,十杯就组成一个样本集。酒精浓度、颜色深度等信息称做【特征】。这十杯酒分布式在一个【多维特征空间】中。

进入当前程序的”学习系统”的所有样本称做【输入】,并组成【输入空间】。 在学习过程中,所产生的随机变量的取值,称做【输出】,并组成【输出空间】。

在有监督的学习过程中,当输出变量均为连续变量时,预测问题成为回归问题,当输出量为有限个离散变量时,预测问题称为分类问题。

过拟合和欠拟合

当假设空间中含有不同复杂的模型时,就要面临模型选择的问题。我们希望获得在新样本上能表现得很好的学习器。

拟合度可以简单理解为模型对与数据集背后客观规律的掌握程度,模型对于给定数据集如果拟合度较差,则对规律的捕捉不完全,用作分类和预测时准确率不高。

过拟合(overfitting):当模型把训练样本学的太好,很可能已经训练样本本身的一些特点当作所有潜在样本的普遍性质,这时候所选的模型的复杂度往往会比真模型要高,导致泛化性能下降。

欠拟合(under fitting):指在学习能力低下,导致对训练样本的一般性质尚未学好。

过拟合图表说明

  • 左图(一阶多项式,欠拟合):训练数据集的准确性和交叉验证数据集的准确性靠得很近,总体水平比较低,收敛在0.88左右
  • 中图(三阶多项式,较好拟合):训练数据集的准确性和交叉验证数据集的准确性靠得很近,总体水平较高
  • 右图(十阶多项式,过拟合):训练数据集的准确性很高(0.95),但交叉验证数据集的准确性较低(0.91),两者之间间隙较大

机器学习的工作流程

  1. 数据收集与预处理:数据是机器学习的基础,通常从各种来源收集数据,然后进行清洗、归一化、处理缺失值等预处理操作

  2. 特征工程:特征工程是指从原始数据中提取有用的特征,包括特征选择、特征缩放、编码等

  3. 模型选择:根据问题的类型(分类、回归、聚类等)选择适合的算法模型

  4. 模型训练:将预处理后的数据输入到选定的机器学习算法中,使用训练数据让模型学习

  5. 模型评估:使用测试集评估模型的性能,常用评估指标包括准确率、精确率、召回率、F1分数、均方误差等

  6. 模型调优:通过调整模型的参数或引入更多数据等手段,进一步优化模型的表现

  7. 模型部署与应用:一旦模型通过了评估,就可以被部署在实际应用中

常见的机器学习算法

线性回归(Linear Regression)

线性回归是解决回归问题的基础算法,通过寻找输入变量(X)和输出变量(Y)之间的线性关系建立模型。其数学表达式为 Y = β₀ + β₁X + ε。

典型应用:房价预测、销售额预测

逻辑回归(Logistic Regression)

逻辑回归是解决二分类问题的经典算法,虽然名称中有”回归”,实际上是分类算法。它通过Sigmoid函数将线性回归的输出映射到(0,1)区间。

典型应用:垃圾邮件识别、疾病诊断

决策树(Decision Tree)

决策树是基于树形结构的算法,通过递归地划分数据空间来构建模型。每个内部节点表示一个特征测试,每个叶节点代表预测结果。

典型应用:贷款审批决策、客户分类

随机森林(Random Forest)

随机森林是决策树的集成方法,通过构建多个决策树并综合其预测结果来提高性能。

优势:更好的泛化能力、能有效降低过拟合风险、可评估特征重要性

支持向量机(SVM)

支持向量机是一种强大的分类和回归算法,其核心是找到最优的决策边界(超平面),最大化不同类别之间的间隔。

优势:理论完备、全局最优,适合小样本、高维度的场景

K均值聚类(K-Means Clustering)

K均值聚类是一种无监督学习算法,目标是将n个数据点划分为k个簇,使得同一簇内的点尽可能接近,不同簇的点尽可能远离。

应用:客户细分、图像压缩

神经网络(Neural Networks)

神经网络模仿生物神经元结构,由输入层、隐藏层和输出层组成,通过激活函数实现非线性变换。

应用领域:计算机视觉、自然语言处理、语音识别

机器学习面临的挑战

  • 数据质量:模型的性能很大程度上依赖于数据的质量和数量
  • 模型过拟合:模型在训练数据上表现优异,但在新数据上效果不佳
  • 可解释性:复杂的机器学习模型往往难以解释其内部的决策逻辑

错误速查

症状根因定位修复
把”逻辑回归”当成回归问题名称误导:输出是类别概率,本质是分类明确”回归/分类”按标签类型区分
训练集分数很高,验证集分数明显低过拟合降复杂度、正则化、更多数据、交叉验证
训练集和验证集都低且接近欠拟合增强特征、换更强模型、放宽假设空间
强化学习训练不稳定奖励函数设计不当重构奖励、加入约束/惩罚项、调整探索率