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)贝叶斯定理(垃圾邮件过滤原理)

<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"> P ( 垃圾邮件 ∣ 单词 ) = P ( 单词 ∣ 垃圾邮件 ) P ( 垃圾邮件 ) P ( 单词 ) P(垃圾邮件|单词) = \frac{P(单词|垃圾邮件)P(垃圾邮件)}{P(单词)} </math>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实现梯度下降

任务 :求解函数 <math xmlns="http://www.w3.org/1998/Math/MathML"> f ( x ) = x 2 + 5 x + 6 f(x)=x^2+5x+6 </math>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()

🔥 挑战任务 :修改代码找到 <math xmlns="http://www.w3.org/1998/Math/MathML"> f ( x ) = x 4 − 3 x 2 f(x)=x^4-3x^2 </math>f(x)=x4−3x2 的最小值!


5. 数学恐惧症治愈方案

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

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

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


下一篇预告

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


相关推荐
Code哈哈笑8 分钟前
【机器学习】支持向量回归(SVR)从入门到实战:原理、实现与优化指南
人工智能·算法·机器学习·回归·svm
努力学习的小廉19 分钟前
【C++】 —— 笔试刷题day_29
开发语言·c++·算法
小羊在奋斗21 分钟前
【LeetCode 热题 100】搜索插入位置 / 搜索旋转排序数组 / 寻找旋转排序数组中的最小值
算法·leetcode·职场和发展
meisongqing27 分钟前
【软件工程】符号执行与约束求解缺陷检测方法
人工智能·算法·软件工程·软件缺陷
莫叫石榴姐1 小时前
如何为大模型编写优雅且高效的提示词?
人工智能·算法
Echo``2 小时前
1:OpenCV—图像基础
c++·图像处理·人工智能·opencv·算法·计算机视觉·视觉检测
COOCC13 小时前
激活函数全解析:定义、分类与 17 种常用函数详解
人工智能·深度学习·神经网络·算法·机器学习·计算机视觉·自然语言处理
林下清风~3 小时前
力扣hot100——347.前K个高频元素(cpp手撕堆)
算法·leetcode·职场和发展
进击的小白菜4 小时前
Java回溯算法解决非递减子序列问题(LeetCode 491)的深度解析
java·算法·leetcode
-一杯为品-5 小时前
【深度学习】#11 优化算法
人工智能·深度学习·算法