Liner Model 太过简单,不能拟合复杂的关系

可能出现如下情况:

深度学习基本概念_数据


如何写更复杂的有未知参数的函数?

红色function 可以看作 一个常数 + 一群蓝色的function

深度学习基本概念_人工智能_02


曲线也可以通过取适当的点然后把这些点连接起来形成一个 Piecewise Liner(分段) 的 Curves,所以可以通过足够多的 蓝色的 function 加起来形成任何的曲线。

深度学习基本概念_人工智能_03

通过 sigmoid function 来逼近 蓝色的 function

sigmoid Function:S 形的 function

深度学习基本概念_线性代数_04
深度学习基本概念_深度学习_05

深度学习基本概念_数据_06 为正时,深度学习基本概念_深度学习_07 趋近于 ∞ 时,sigmoid 趋近于 深度学习基本概念_拟合_08深度学习基本概念_数据_06 为负时,…,sigmoid 趋近于 深度学习基本概念_数据_10

深度学习基本概念_拟合_11

通过调整 深度学习基本概念_数据_06深度学习基本概念_人工智能_13深度学习基本概念_拟合_08

深度学习基本概念_人工智能_15

所以 0、1、2、3 这 4 条蓝色的 function 都可以用 深度学习基本概念_数据_16 来表示,只是对应的 深度学习基本概念_拟合_08深度学习基本概念_数据_06深度学习基本概念_人工智能_13 不同,所以红色的 function 深度学习基本概念_深度学习_20

深度学习基本概念_线性代数_21


所以可以通过 调整 深度学习基本概念_深度学习_22深度学习基本概念_数据_23深度学习基本概念_拟合_24

有弹性的有未知参数 function

从 线性的 深度学习基本概念_人工智能_25
推广到 分段 曲线 function
深度学习基本概念_拟合_26

这里只有 深度学习基本概念_深度学习_07

而 在​​上一个 blog 最后​​ 推广到可能具有周期性,所以可以通过 多个 feature 来改造函数,然后再对具有多个 feature 的函数进行推广,就有

深度学习基本概念_线性代数_28 推广为
深度学习基本概念_数据_29

相当于从多个 feature 与 深度学习基本概念_深度学习_20 有一个线性关系推广为多个 feature 与 深度学习基本概念_深度学习_20

深度学习基本概念_深度学习_32


深度学习基本概念_深度学习_33 代表多个 深度学习基本概念_拟合_34,而 深度学习基本概念_拟合_35

深度学习基本概念_深度学习_36 表示 再 第 深度学习基本概念_深度学习_33 个 sigmoid 里面乘 给 第 深度学习基本概念_拟合_35 个 feature 的 深度学习基本概念_人工智能_39

深度学习基本概念_深度学习_40

可以用以下向量与矩阵关系表示这个乘法关系

深度学习基本概念_线性代数_41


所以 深度学习基本概念_数据_42

深度学习基本概念_深度学习_43


深度学习基本概念_拟合_44

所以用线性代数表示为:

深度学习基本概念_数据_45


深度学习基本概念_人工智能_46


深度学习基本概念_人工智能_47


将未知参数 深度学习基本概念_拟合_48深度学习基本概念_拟合_49深度学习基本概念_拟合_50深度学习基本概念_人工智能_51展开成 深度学习基本概念_深度学习_52这样就完成了 ML 的第一步

深度学习基本概念_拟合_53


Loss 还是同样的方法,带入一组 深度学习基本概念_深度学习_52 然后求得 深度学习基本概念_深度学习_20 并且求与 深度学习基本概念_数据_56 的差值,来判断这组 深度学习基本概念_深度学习_52

深度学习基本概念_数据_58


第三步 Optimization 的方法也没有变化

对所有的 深度学习基本概念_拟合_59 求 微分,然后得到一个向量 深度学习基本概念_拟合_60
深度学习基本概念_拟合_60

深度学习基本概念_数据_62


深度学习基本概念_拟合_63


在实际的程序中,需要把大 data 随机分成多个 batch,然后对每一个 batch 进行计算 深度学习基本概念_拟合_60,更新 深度学习基本概念_深度学习_52(一个 epoch),每一次更新参数(一个batch)叫做一次 update

深度学习基本概念_深度学习_66

batchsize 也是 hyperparameter

深度学习基本概念_人工智能_67

通过 Relu 来逼近 蓝色的 function

需要先用 Relu 拟合 Hard sigmoid

深度学习基本概念_人工智能_68


深度学习基本概念_深度学习_69


sigmoid 与 Relu 统称为 activation function

我们可以重复多次 进行如下扩展:

深度学习基本概念_深度学习_70

多个 layer

深度学习基本概念_深度学习_71


深度学习基本概念_人工智能_72


深度学习基本概念_深度学习_73