自学教程 学编程从这里开始

机器学习教程

适合零基础入门,带你搞懂机器学习是什么、核心要素,通过可运行代码直观感受机器学习完整流程。

一、什么是机器学习

机器学习(Machine Learning)是人工智能(AI)的重要分支,核心思想是让计算机利用数据与算法,从经验中自动学习,不断提升自身性能,而不是完全依靠人写死全部规则。

简单理解:机器从大量数据里找规律,然后依靠学到的规律完成决策、预测任务。

如今机器学习已经落地到大量场景:短视频/电商推荐系统、图像识别、语音转文字、金融风险分析、自动驾驶等。
举个自动驾驶例子:机器通过海量行车数据,学会识别交通标志、行人、障碍物,实现辅助驾驶功能。

二、机器学习 vs 传统编程

很多初学者分不清传统编程和机器学习,一张表看懂两者差异:

传统编程机器学习
程序员手动编写明确业务规则计算机从海量数据中自动学习生成规则
适合问题简单、逻辑规则清晰的场景适合关系复杂、很难人工写全规则的场景
示例:实现计算器程序示例:垃圾邮件自动识别程序

传统编程逻辑:输入数据 + 人工写的规则 → 输出结果
机器学习逻辑:输入数据 + 已知结果 → 学习得到模型(内含规则)→ 对新数据输出预测

三、机器学习三大核心要素

做机器学习项目离不开三样东西:数据、算法、模型,三者缺一不可。

1. 数据 —— 机器学习的燃料

数据质量与数量,直接决定模型最终效果。

  • 训练数据:用来给模型学习规律的样本数据;
  • 测试数据:训练完成后,用来检验模型学得好不好的数据;
  • 真实数据:上线之后,现实业务中源源不断输入给模型的全新未知数据。

2. 算法 —— 学习的方法

算法是机器学习的方式,不同算法适配不同业务问题,主要分为三大类:

  1. 监督学习:样本带有标准答案,模型学习输入与输出之间的对应关系;
  2. 无监督学习:样本没有标准答案,机器自己挖掘数据内在分组、隐藏规律;
  3. 强化学习:依靠不断试错,通过奖励、惩罚机制迭代优化行为策略。

3. 模型 —— 学习产出的结果

可以类比学生学习之后掌握的知识。

  • 训练过程:算法读取数据,从中挖掘内在规律;
  • 推理(预测)过程:拿训练完毕的模型,对全新的数据输出预测结果。

四、实战案例:线性回归预测房价

下面用 Python + scikit‑learn 实现机器学习入门示例:根据房屋面积预测房价,完整复现机器学习标准流程:准备数据 → 选择算法 → 训练模型 → 预测新数据 → 可视化结果。

完整代码

# 导入需要的库
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
import seaborn as sns

# 设置图表风格
sns.set_style("whitegrid")

# -------------------------- 设置中文字体 start --------------------------
plt.rcParams['font.sans-serif'] = [
    # Windows 优先
    'SimHei', 'Microsoft YaHei',
    # macOS 优先
    'PingFang SC', 'Heiti TC',
    # Linux 优先
    'WenQuanYi Micro Hei', 'DejaVu Sans'
]
# 修复负号显示方块问题
plt.rcParams['axes.unicode_minus'] =False
# -------------------------- 设置中文字体 end --------------------------

# 1. 准备数据
# 房屋面积(平方米)
house_sizes = np.array([50, 60, 70, 80,90, 100, 110, 120]).reshape(-1, 1)
# 房屋价格(万元)
house_prices = np.array([150, 180, 210,240, 270, 300, 330, 360])

# 2. 创建并训练模型
# 创建线性回归模型
model = LinearRegression()
# 传入数据训练,学习面积和价格的映射关系
model.fit(house_sizes, house_prices)

# 3. 使用模型做预测
# 预测85㎡房子的价格
predicted_price = model.predict([[85]])
print(f"85 平方米的房屋预测价格:{predicted_price[0]:.2f} 万元")

# 4. 可视化结果
plt.scatter(house_sizes, house_prices, color='blue', label='实际数据')
plt.plot(house_sizes, model.predict(house_sizes), color='red', label='预测线')
plt.scatter([85], predicted_price, color='green', s=100, label='预测点')
plt.xlabel('房屋面积(平方米)')
plt.ylabel('房屋价格(万元)')
plt.title('机器学习测试 -- 房屋面积与价格关系')
plt.legend()
plt.grid(True)
plt.show()

运行输出

85 平方米的房屋预测价格:255.00 万元

案例解读

这个小例子完整演示机器学习的标准工作链路:

  1. 准备数据:整理房屋面积、对应的真实房价;
  2. 选择算法:选用线性回归算法;
  3. 训练模型:fit() 方法,让机器学习面积与房价的数学关系;
  4. 推理预测:调用 predict(),对从未见过的85㎡房屋输出价格预测。

可视化图表:蓝色圆点是历史真实样本,红色直线就是模型学到的拟合关系,绿色圆点就是85㎡房屋的预测结果。

五、本篇小结

  1. 机器学习属于AI分支,核心是从数据中学习规律,而非全部人工写死规则;
  2. 和传统编程最大区别:规则不是人写,而是数据+算法自动生成;
  3. 三大基础要素:数据、算法、模型;
  4. 基础工作流程:准备数据 → 选算法 → 训练模型 → 评估 → 预测新样本。
标签:

0 条笔记