人工智能学习 5 - 人工智能数学基础

机器学习模型

  • Linger or Logistic Regression 线性回归与逻辑回归
  • Decision Tree or Random Forests
  • Gradient Boosting Machines(xgboost, lightgbm..)
  • CNN: Convolutional Neutral Networks 卷积神经网络
  • Bayesian Approaches
  • Dense Neutral Networks
  • RNN: Recurrent Neutral Networks
  • Transformer Networks
  • GAN: Generative Advanced Networks
  • Evolutionary Approaches

分类与回归

结果是连续函数, 一般为回归问题; 结果是离散函数, 一般为分类问题.

线性回归问题

将模型的输入作为自变量, 输出作为因变量, 构建线性方程 $f(x)=W^TX+b$ (其中 W, X, b 均为向量)

通过训练数据 X->Y 优化线性方程参数 (W,b) 的过程, 即为机器学习.

通过梯度下降优化方程, 找到更优的 (W,b) 使得损失函数(代价函数)最小

$$
J(w,b) = \frac{1}{2} \Sigma^n_{i=1}[(f(x_i) - y_i)^2], \qquad \qquad n 为 样本的特征维度
$$

梯度下降法

  • 函数: $f(x) = W^TX+b$
  • 参数: w, b
  • 损失: $J(w,b) = \frac{1}{2} \sum^n_{i=1}[(f(x_i) - y_i)^2]$
  • 目标: $min_{w,b} J(w,b)$

梯度下降: 求 J(w,b) 函数 局部最优解(最小值)的方法

  • 方向: 导数的反方向 $- \frac{\partial{J}}{\partial{w}}$
  • 步长: 学习率 $\alpha$

$$w’ = w - \alpha \frac{\partial{J}}{\partial{w}}$$

参考: 什么是梯度和导数 https://zhuanlan.zhihu.com/p/377666441, 什么是梯度下降法 https://www.zhihu.com/question/305638940

梯度: 对于函数的某个特定点,它的梯度就表示从该点出发,函数值增长最为迅猛的方向.

下降: 在优化过程中, 梯度 $\nabla{f}$ 的模 $||\nabla{f}||$ 一直在变小

学习率

  • 过大的学习率: 会造成寻找最优解的过程中, 一直在最优解附近震荡
  • 过小的学习率: 造成寻找效率降低

超参数: 不是模型学习过程中习得的, 而是根据经验设置的.

初始参数

初始参数, 会影响学习走向不同的局部最优解

收敛

目标函数是凸函数, 梯度下降法的解是全局最优解

如何判断/认为收敛

  1. 梯度值足够小
  2. 损失变化足够小

梯度下降的批量操作

  1. 批量梯度下降: 使用全部样本估计梯度 $\frac{1}{2m}\sum_{i=1}^m(f(x_i)-y_i)^2$
  2. 小批量梯度下降: ① 样本划分为多个子集 batch, 分别估计梯度 -> ② 样本打乱 -> 重复 ① …
  3. 随机梯度下降: 每次随机抽取一个样本估计梯度 $(f(x_i)-y_i)^2$

小批量梯度下降, 每个子集称为 batch, 全部子集循环一遍称为 epoch

逻辑回归问题

f(x) = WX + b 使得

$$
z =
\begin{cases}
正类, f(x) \ge 0 \
负类, f(x) \lt 0
\end{cases}
$$

因为阶跃函数连续不可导, 所以将其转化为sigmoid函数

$$
h(f(x)) = \frac{1}{1+e^{-f(x)}} \
f(x) = \frac{1}{1+e^{-(wx+b)}}
\begin{cases}
正类, h(f(x)) \ge 0.5 \
负类, h(f(x)) \lt 0.5
\end{cases}
$$

对应的损失函数 J(w,b)

$$
J(w,b)_i = - y_i\ln{f(x_i)} - (1-y_i)\ln[1-f(x_i)]
$$

其中 $y_i \in {0,1}$, $f(x_i)$ 正类概率, $1-f(x_i)$ 负类概率; 当 $y_i = 0$ 时, 为负类, 损失函数前半部分为0, 当 $y_i = 1$ 时, 为正类, 损失函数后半部分为0.

$$
J(w,b) = - \frac{1}{m} \sum_{i=1}^m {y_i\ln{f(x_i)} - (1-y_i)\ln[1-f(x_i)]}
$$

参考: 损失函数 II - 逻辑回归 https://towardsdatascience.com/optimization-loss-function-under-the-hood-part-ii-d20a239cde11

Donate - Support to make this site better.
捐助 - 支持我让我做得更好.