Task 2 了解线性模型 “Datawhale X 李宏毅苹果书 AI夏令营”

1,什么是线性模型?

这些模型都是把输入的特征 x 乘上一个权重,再加上一个偏置就得到预测的结果,这样的模型称为线性模型(linear model)

线性模型可能过于简单,x和y之间可能有更为复杂的关系。

2,分段线性曲线

红色的曲线可以看作是一个常数再加上一群 Hard Sigmoid 函数

Hard Sigmoid 函数的特性是当输入的值,当 x 轴的值小于某一个阈值(某个定值)的时候,大于另外一个定值阈值的时候,中间有一个斜坡。所以它是先水平的,再斜坡,再水平的。

分段线性曲线(piecewise linear curve)可以看作是一个常数,再加上一堆蓝色的函数。分段线性曲线可以用常数项加一大堆的蓝色函数组合出来,只是用的蓝色函数不一定一样。

                                                                           

只要有足够多的点,就可以用分段线性曲线去逼近任何的连续的曲线,而每个分段线性曲线都可以用一大堆蓝色的函数组合起来。也就是说,只要有足够的蓝色函数把它加起来,就可以变成任何连续的曲线。

  

3,Hard Sigmoid 函数的替换

其中Hard Sigmoid 函数的函数不是很容易直接写出来,因此我们选择用sigmoid函数来逼近,其表达式为:

如下图所示:

这个函数,当 x1 非常大的时候,这一条就会收敛在高度为 c 的地方。如果 x1 负的非常大的时候,分母的地方就会非常大,y的值就会趋近于 0。其中,w可以改变坡度;b可以控制左右平移;c可以改变最终的高度。

因此曲线就可以不同蓝色函数的相加:

写成线性代数中矩阵的形式即为:

 本函数式中,x为特征,W,b,cT,b即为未知参数。将各个未知参数组合在一起拼成一个未知参数构成的向量θ。

4,定义损失L(θ)

在此基础上,定义新的损失L(θ)。通过损失函数的大小可以判断θ的好坏,计算方法和task1的计算方法是一样的。

先给定θ的值,即某一组W, b, cT, b 的值,再把一种特征 x 代进去,得到估测出来的 y,再计算一下跟真实的标签之间的误差 e。把所有的误差通通加起来,就得到损失。

步骤:

i 先随机选择一个初始的θ0,计算每个未知参数对L的微分,得到可以让损失变低的函数g。这个向量g也称为梯度

ii 之后根据所得梯度对未知参数进行更新,对更新后的θ1再次计算梯度,进行下一次更新。直到迭代到理想状态(一般是我们不想做了)。

注:实际中计算时,会将所有的参数再分成不同的批量,按照一个个批量分组进行计算。(具体原因我们后续会提到)

5,模型变形

除了把 Hard Sigmoid 换成Sigmoid,Hard Sigmoid 还可以看作是两个修正线性单元(Rectified Linear Unit,ReLU)的加和。其对应关系和函数表达如下图所示:

因此表示一个 Hard 的 Sigmoid 不是只有一种做法。在机器学习里面,Sigmoid 或 ReLU 称为激活函数(activation function)。之后的实验中都选择使用ReLU 作为激活函数(显然ReLU比较好,具体原因见下节task)。

我们可以将计算得到的a进行再次计算得到a‘,可以进行反复多次的计算。相比之前,可以降低损失L,提高预测的准确性。

6,命名

如图所示,Sigmoid 或 ReLU 称为神经元(neuron),很多的神经元称为神经网络(neural network)。每一排称为一层,称为隐藏层(每次计算)。很多的隐藏层就“深”,这套技术称为深度学习

  有时训练层数变大,在训练资料上损失降低,但是在实际测试数据上结果相反,这种情况称之为过拟合(overfitting)

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值