Day 3:数学基础回顾——线性代数与概率论在AI中的核心作用

目录

  1. 为什么数学是AI的基石?
  2. 线性代数:AI的骨架
    • 向量/矩阵运算的几何意义
    • 矩阵分解(PCA/SVD)
  3. 概率论:AI的不确定性武器
    • 贝叶斯定理与分类器
    • 信息熵与决策树
  4. 实战:用NumPy实现梯度下降
  5. 数学恐惧症治愈方案

1. 为什么数学是AI的基石?

AI数学知识权重表:

数学分支 应用场景 重要性 学习优先级
线性代数 神经网络参数计算 ★★★★★ 1
概率论 贝叶斯网络/强化学习 ★★★★☆ 2
微积分 梯度下降/反向传播 ★★★☆☆ 3
统计学 数据分布分析 ★★★☆☆ 4

💡 真相:AI不是数学考试!实际开发中80%的数学操作由库函数自动完成。


2. 线性代数:AI的骨架

(1)向量/矩阵的物理意义

  • 向量:特征空间中的点(如用户画像=年龄, 收入, 兴趣)
  • 矩阵:线性变换工具(如卷积核处理图像)

几何演示:

css 复制代码
原始数据 → 矩阵变换 → 新特征空间  
   ↑                    ↑  
 猫图片               [边缘, 纹理]特征  

(2)必会的4种运算

python 复制代码
import numpy as np

# 矩阵乘法(神经网络核心)  
A = np.array([[1,2], [3,4]])  
B = np.array([[5,6], [7,8]])  
print(A @ B)  # 等价于 np.matmul(A,B)

# 广播机制(自动扩展维度)  
向量 = np.array([1,2,3])  
print(向量 + 5)  # 输出:[6,7,8]  

(3)降维武器:PCA/SVD

流程对比表:

方法 输入 输出 典型应用
PCA 高维数据 低维正交特征 人脸识别
SVD 任意矩阵 矩阵分解三部分 推荐系统

3. 概率论:AI的不确定性武器

(1)贝叶斯定理(垃圾邮件过滤原理)

P ( 垃圾邮件 ∣ 单词 ) = P ( 单词 ∣ 垃圾邮件 ) P ( 垃圾邮件 ) P ( 单词 ) P(垃圾邮件|单词) = \frac{P(单词|垃圾邮件)P(垃圾邮件)}{P(单词)} P(垃圾邮件∣单词)=P(单词)P(单词∣垃圾邮件)P(垃圾邮件)

(2)信息熵(决策树分裂标准)

python 复制代码
from scipy.stats import entropy  
entropy([0.5, 0.5], base=2)  # 输出:1.0(最大不确定性)

熵值对比表:

概率分布 熵值 说明
0.99, 0.01 0.08 确定性高
0.5, 0.5 1.0 完全不确定

4. 实战:用NumPy实现梯度下降

任务 :求解函数 f ( x ) = x 2 + 5 x + 6 f(x)=x^2+5x+6 f(x)=x2+5x+6 的最小值

python 复制代码
import numpy as np

def gradient_descent(learning_rate=0.1, epochs=100):
    x = 10  # 初始值
    history = []
    for _ in range(epochs):
        grad = 2*x + 5  # 手动求导
        x -= learning_rate * grad
        history.append(x)
    return x, history

最优解, 轨迹 = gradient_descent()
print(f"最小值出现在 x = {最优解:.4f}")

输出结果可视化:

python 复制代码
import matplotlib.pyplot as plt
plt.plot(轨迹, marker='o')
plt.xlabel('迭代次数')
plt.ylabel('x值')
plt.title('梯度下降过程')
plt.show()

🔥 挑战任务 :修改代码找到 f ( x ) = x 4 − 3 x 2 f(x)=x^4-3x^2 f(x)=x4−3x2 的最小值!


5. 数学恐惧症治愈方案

✅ 策略1 :用代码理解公式(如用NumPy实现矩阵运算)

✅ 策略2 :可视化工具(如PyPlot展示梯度下降轨迹)

✅ 策略3:优先掌握高频核心概念(前20%关键知识)


下一篇预告

Day 4:机器学习初探------从监督学习到无监督学习
"无需数学推导!用生活案例理解机器学习十大算法!"


相关推荐
jktantan3 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
揽星河..4 小时前
【C语言】猜数字游戏
c语言·算法·游戏
LabVIEW开发4 小时前
CTM-3 红外测温仪 + LabVIEW 温度怎么测?
算法·labview·测试·labview程序
纪念 2294 小时前
C++算法(六)
开发语言·c++·算法
Dumbness5 小时前
UIA 读微信群消息没有 id,怎么判断哪条是新的:后缀对齐在翻历史和撤回时整屏重报
python·算法
taka5 小时前
从 24x 到 141x:我用纯 Python 零依赖项目,扒开了 GPU 加速的性能黑洞
算法
UIU1146 小时前
P16237 [蓝桥杯 2026 省 B] 应急布线
数据结构·c++·算法·蓝桥杯
旖旎夜光6 小时前
LeetCode 315: 算右侧小于当前元素的个数(归并排序) —— 题解
c++·学习·算法·leetcode·排序算法
像风一样自由20206 小时前
2.如何用FastAPI把一个Python算法封装成HTTP服务
python·算法·fastapi
D e re k ZH6 小时前
保序回归:从 PAVA 到可并堆的单调约束优化
c++·算法·数据挖掘·回归·kotlin