线性回归、Softmax和多层感知机数学 #d2l#

本文介绍了深度学习的基础模型,包括线性回归的预测公式、平方损失函数和梯度下降算法;Softmax函数用于将输出转化为概率分布,并解释了交叉熵损失函数;此外,还探讨了多层感知机,特别是激活函数如ReLU、Sigmoid和tanh及其导数。
摘要由CSDN通过智能技术生成

线性回归

y ^ = X w + b \bm{\hat{y}} = \bm{X}\bm{w}+b y^=Xw+b
其中 y ^ \hat{y} y^为最终预测值, X X X为特征值, w w w为权重, b b b为偏差,也即:
y ^ = [ y ^ ( 1 ) y ^ ( 2 ) y ^ ( 3 ) ] , X = [ x 1 ( 1 ) x 2 ( 1 ) x 1 ( 2 ) x 2 ( 2 ) x 1 ( 3 ) x 2 ( 3 ) ] , w = [ w 1 w 2 ] \hat{y} = \begin{bmatrix} \hat{y}^{(1)} \\ \hat{y}^{(2)} \\ \hat{y}^{(3)} \end{bmatrix} ,\quad \bm{X} = \begin{bmatrix} x_1^{(1)} & x_2^{(1)} \\ x_1^{(2)} & x_2^{(2)} \\ x_1^{(3)} & x_2^{(3)} \end{bmatrix}, \quad \bm{w} = \begin{bmatrix} w_1 \\ w_2 \end{bmatrix} y^=y^(1)y^(2)y^(3),X=x1(1)x1(2)x1(3)x2(1)x2(2)x2(3),w=[w1w2]
使用平方损失函数,( y y y为真实值)
ℓ ( θ ) = 1 2 n ( y ^ − y ) T ( y ^ − y ) \ell{}(\bm{\theta}) = \frac1{2n} (\hat{y}-y)^T(\hat{y}-y) (θ)=2n1(y^y)T(y^y)
迭代公式为:
θ ′ = θ − η B ∑ i ∈ B ∇ θ ℓ ( i ) ( θ ) \bm{\theta'} = \bm{\theta} - \frac{\eta}{\mathcal{B}} \sum_{i \in \mathcal{B}} \nabla_{\theta} \ell^{(i)}(\bm{\theta}) θ=θBηiBθ(i)(θ)
其中 B \mathcal{B} B为每个小批量, η \eta η为学习率。

Softmax

通过Softmax将输出值转化为 0 0 0~ 1 1 1的值:
y i ^ = e ( o 1 ) ∑ i = 1 n e o i \hat{y_i} = \frac{e^{(o_1)}}{\sum_{i=1}^n e^{o_i}} yi^=i=1neoie(o1)
交叉熵损失:
H ( y ( i ) , y ^ ( i ) ) = − ∑ j = 1 n y j ( i ) log ⁡ y ^ ( i ) H(\bm{y}^{(i)}, \hat{\bm{y}}^{(i)}) = - \sum_{j=1}^{n} {y}_j^{(i)} \log \hat{y}^{(i)} H(y(i),y^(i))=j=1nyj(i)logy^(i)
而只有预测正确的 y j y_j yj 1 1 1,其它皆为 0 0 0,所以实际上为 − log ⁡ y ^ ( i ) - \log \hat{y}^{(i)} logy^(i)

多层感知机

在输入层与输出层之间可以插入许多所谓隐藏层,为避免多隐藏层叠加无效,引入激活函数:Sigmoid,ReLU,tanh,以及ReLU的变体等等。
R e l u ( x ) = m a x ( x , 0 ) s i g m o i d ( x ) = 1 1 + e x t a n h ( x ) = 1 − e − 2 x 1 + e − 2 x Relu(x) = max(x,0) \\ sigmoid(x)=\frac{1}{1+e^x} \\ tanh(x) = \frac{1-e^{-2x}}{1+e^{-2x}} Relu(x)=max(x,0)sigmoid(x)=1+ex1tanh(x)=1+e2x1e2x
而它们的导数为:
R e l u ′ ( x ) = { 1 x > 0 0 x ≤ 0 s i g m o i d ′ ( x ) = s i g m o i d ( x ) ( 1 − s i g m o i d ( x ) ) t a n h ′ ( x ) = 1 − t a n h 2 ( x ) Relu'(x)=\begin{cases} 1& x>0 \\ 0& x\le0 \end{cases} \\ sigmoid'(x) = sigmoid(x)(1-sigmoid(x)) \\ tanh'(x) = 1-tanh^2(x) Relu(x)={10x>0x0sigmoid(x)=sigmoid(x)(1sigmoid(x))tanh(x)=1tanh2(x)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值