机器学习基础
掌握机器学习的核心概念、经典算法与实战技能。
概述
机器学习(Machine Learning, ML)是人工智能的核心子领域,它使计算机能够从数据中自动学习规律,而无需针对每个任务编写明确的规则。
机器学习的基本范式:
- 给定一组训练数据
- 选择一个模型(算法)
- 通过训练找到最优参数
- 在新数据上进行预测
监督学习
监督学习使用带标签的数据进行训练,学习输入到输出的映射关系。
线性回归
用于预测连续值,如房价、温度等。模型形式为:
y = w₁x₁ + w₂x₂ + ... + b
通过最小化预测值与真实值之间的均方误差(MSE)来训练模型。
逻辑回归
用于二分类问题,输出 0~1 之间的概率值。常用于垃圾邮件检测、疾病诊断等场景。
决策树与随机森林
决策树通过一系列 if-else 规则进行分类或回归。随机森林由多棵决策树组成,通过投票或平均来提高准确性和鲁棒性。
支持向量机(SVM)
寻找最优超平面来分隔不同类别的数据点,在高维空间中表现优异。
| 算法 | 类型 | 适用场景 |
|---|---|---|
| 线性回归 | 回归 | 连续值预测 |
| 逻辑回归 | 分类 | 二分类问题 |
| 决策树 | 分类/回归 | 可解释性要求高的场景 |
| 随机森林 | 分类/回归 | 通用性强,不易过拟合 |
| SVM | 分类 | 高维小样本数据 |
| KNN | 分类/回归 | 简单快速的原型验证 |
无监督学习
无监督学习处理没有标签的数据,目标是发现数据中的隐藏结构。
K-Means 聚类
将数据划分为 K 个簇,使得簇内数据点尽可能相似。常用于客户分群、图像分割等。
主成分分析(PCA)
通过线性变换将高维数据投影到低维空间,保留最重要的信息。用于降维和可视化。
模型评估
评估模型性能是机器学习的关键环节:
分类指标
- 准确率(Accuracy):正确预测的比例
- 精确率(Precision):预测为正例中真正为正例的比例
- 召回率(Recall):真正例中被正确预测的比例
- F1 分数:精确率和召回率的调和平均
回归指标
- MSE:均方误差
- RMSE:均方根误差
- R²:决定系数,衡量模型解释方差的比例
⚠️ 过拟合与欠拟合
过拟合:模型在训练集上表现好但泛化差。欠拟合:模型过于简单,无法捕捉数据规律。使用交叉验证和正则化来缓解。
机器学习工作流程
- 问题定义:明确要解决的问题类型(分类/回归/聚类)
- 数据收集:获取高质量、有代表性的数据
- 数据预处理:清洗、归一化、处理缺失值
- 特征工程:选择、构造和转换特征
- 模型选择:根据问题选择合适的算法
- 训练与调参:使用训练集训练,验证集调参
- 评估与部署:测试集评估,部署到生产环境
代码实战:鸢尾花分类
使用 scikit-learn 实现经典的鸢尾花分类任务:
Python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import classification_report
# 加载数据
iris = load_iris()
X, y = iris.data, iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=42
)
# 训练随机森林模型
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)
# 评估模型
y_pred = model.predict(X_test)
print(classification_report(y_test, y_pred,
target_names=iris.target_names))
✅ 下一步
掌握机器学习基础后,继续学习深度学习,了解神经网络如何解决更复杂的问题。