跳到主要内容

机器学习基础

核心概念

定义与原理

机器学习(Machine Learning, ML)是人工智能的核心分支,通过算法让计算机从数据中学习规律,无需显式编程即可做出预测或决策。

基本原理

  • 数据驱动:从历史数据中学习模式
  • 经验优化:通过反馈不断改进性能
  • 泛化能力:对未见数据做出准确预测

关键要素

数据特征

  • 特征工程:选择和构造有效特征
  • 数据质量:完整性、准确性、代表性
  • 数据规模:足够样本保证模型性能

模型评估

  • 训练集:用于模型训练
  • 验证集:调参和模型选择
  • 测试集:最终性能评估

主要算法类型

监督学习

线性模型

线性回归

# 基础公式:y = wx + b
损失函数:MSE = 1/n Σ(yi - ŷi)²
优化方法:梯度下降

逻辑回归

# Sigmoid 函数:σ(z) = 1/(1 + e^(-z))
概率输出:P(y=1|x) = σ(wx + b)
决策边界:wx + b = 0

决策树算法

ID3/C4.5/CART

  • 信息增益:基于熵的不确定性减少
  • 基尼系数:数据不纯度度量
  • 剪枝策略:防止过拟合

随机森林

# 集成学习方法
1. 多个决策树并行训练
2. Bootstrap 抽样
3. 特征随机选择
4. 投票机制决策

支持向量机(SVM)

核心思想

  • 最大间隔:找到最优分离超平面
  • 核函数:处理非线性问题
  • 支持向量:决定决策边界的关键样本

常用核函数

  • 线性核:K(x,y) = x·y
  • 多项式核:K(x,y) = (x·y + c)^d
  • RBF 核:K(x,y) = exp(-γ||x-y||²)

无监督学习

聚类算法

K-means

# 算法流程
1. 随机初始化 K 个中心点
2. 分配样本到最近中心点
3. 重新计算中心点位置
4. 重复直至收敛

层次聚类

  • 凝聚型:从单个样本开始合并
  • 分裂型:从整体开始逐步分割
  • 树状图:展示聚类层次结构

降维技术

主成分分析(PCA)

# 核心步骤
1. 数据标准化
2. 计算协方差矩阵
3. 特征值分解
4. 选择主成分
5. 数据投影

t-SNE

  • 流形学习:保持局部邻域结构
  • 可视化:高维数据降维到 2D/3D
  • 参数调优:perplexity 影响结果

强化学习

基本框架

马尔可夫决策过程(MDP)

  • 状态空间 S:环境所有可能状态
  • 动作空间 A:可执行动作集合
  • 奖励函数 R:状态-动作奖励
  • 策略 π:状态到动作的映射

核心算法

Q-learning

# Q值更新公式
Q(s,a) ← Q(s,a) + α[r + γ·max Q(s',a') - Q(s,a)]
其中:
- α:学习率
- γ:折扣因子
- r:即时奖励

深度强化学习

  • DQN:深度Q网络
  • PPO:近端策略优化
  • A3C:异步优势演员-评论家

模型评估与优化

评估指标

分类任务

准确率(Accuracy)

Accuracy = (TP + TN) / (TP + TN + FP + FN)

精确率(Precision)

Precision = TP / (TP + FP)

召回率(Recall)

Recall = TP / (TP + FN)

F1 分数

F1 = 2 × (Precision × Recall) / (Precision + Recall)

回归任务

均方误差(MSE)

MSE = 1/n Σ(yi - ŷi)²

平均绝对误差(MAE)

MAE = 1/n Σ|yi - ŷi|

R² 分数

R² = 1 - Σ(yi - ŷi)² / Σ(yi - ȳ)²

模型优化

超参数调优

网格搜索

  • 穷举所有参数组合
  • 计算成本高但结果可靠
  • 适合参数空间较小的情况

随机搜索

  • 随机采样参数组合
  • 效率高于网格搜索
  • 适合高维参数空间

贝叶斯优化

  • 基于高斯过程
  • 智能选择参数组合
  • 平衡探索与利用

正则化技术

L1 正则化(Lasso)

Loss = MSE + λ Σ|wi|
特征选择效果

L2 正则化(Ridge)

Loss = MSE + λ Σwi²
权重衰减效果

Dropout

  • 随机丢弃神经元
  • 防止过拟合
  • 仅适用于神经网络

实际应用案例

金融风控

信用评分模型

# 特征工程
- 收入水平
- 负债比率
- 信用历史
- 职业稳定性

# 模型选择
- 逻辑回归(可解释性)
- 随机森林(性能)
- XGBoost(平衡)

欺诈检测

  • 异常检测:识别异常交易模式
  • 实时监控:毫秒级响应
  • 模型更新:适应新型欺诈手段

医疗诊断

疾病预测

  • 影像分析:X光、CT、MRI
  • 基因分析:疾病风险预测
  • 电子病历:临床决策支持

药物发现

  • 分子筛选:虚拟化合物筛选
  • 毒性预测:副作用评估
  • 个性化治疗:精准医疗

推荐系统

协同过滤

# 用户-物品矩阵
R = U × V^T

# 矩阵分解
U: 用户特征矩阵
V: 物品特征矩阵

深度学习推荐

  • Wide & Deep:记忆与泛化结合
  • DeepFM:因子分解机
  • Transformer:序列建模

常见问题与解决方案

过拟合

症状识别

  • 训练误差低,测试误差高
  • 模型复杂度过高
  • 数据量不足

解决策略

  • 数据增强:扩充训练数据
  • 正则化:L1/L2、Dropout
  • 交叉验证:K-fold 验证
  • 早停策略:监控验证损失

数据不平衡

问题场景

  • 欺诈检测(正常>>欺诈)
  • 医疗诊断(健康>>患病)
  • 异常检测(正常>>异常)

处理方法

# 重采样技术
- 过采样:SMOTE
- 欠采样:RandomUnderSampler
- 混合采样:SMOTEENN

# 算法调整
- 类别权重:class_weight
- 阈值调整:threshold tuning
- 集成方法:BalancedBagging

特征工程

特征选择

  • 过滤法:统计检验、相关性分析
  • 包装法:递归特征消除
  • 嵌入法:L1 正则化、树模型

特征构造

  • 多项式特征:特征交叉
  • 交互特征:特征组合
  • 时间特征:周期性、趋势性

工具与框架

Python 生态

核心库

  • Scikit-learn:传统机器学习
  • Pandas:数据处理
  • NumPy:数值计算
  • Matplotlib:数据可视化

深度学习框架

  • TensorFlow:Google 开发
  • PyTorch:Facebook 开发
  • Keras:高级 API

云平台服务

AWS 机器学习

  • SageMaker:完整 ML 平台
  • Comprehend:NLP 服务
  • Rekognition:图像识别

Google Cloud AI

  • AutoML:自动化机器学习
  • Vertex AI:统一 ML 平台
  • BigQuery ML:SQL 中 ML

Azure 机器学习

  • Azure ML:企业级平台
  • Cognitive Services:预训练 API
  • ML Studio:可视化开发

学习路径建议

入门阶段(1-3个月)

  1. 数学基础:线性代数、概率统计、微积分
  2. 编程技能:Python、NumPy、Pandas
  3. 基础算法:线性回归、逻辑回归、决策树

进阶阶段(3-6个月)

  1. 深度学习:神经网络、CNN、RNN
  2. 框架使用:Scikit-learn、TensorFlow/PyTorch
  3. 项目实践:端到端项目开发

专业阶段(6-12个月)

  1. 高级算法:强化学习、生成模型
  2. 系统设计:分布式训练、模型部署
  3. 领域应用:计算机视觉、NLP、推荐系统

下一节深度学习入门