4. 微积分
- 拟合模型的任务分解为两个关键问题:
- 优化(optimization):用模型拟合观测数据的过程;
- 泛化(generalization):数学原理和实践者的智慧,能够指导我们生成出有效性超出用于训练的数据集本身的模型。
4.1 导数和微分
- 通常选择对于模型参数可微的损失函数。简而言之,对于每个参数,如果我们把这个参数增加或减少一个无穷小的量,可以知道损失会以多快的速度增加或减少。
- 导数:f′(x)=limh→0f(x+h)−f(x)h=y′=dydx=dfdx=ddxf(x)=Df(x)=Dxf(x)
- 1)常数相乘法则:(Cf)′=C(f′)
- 2)加法法则:(f+g)′=f′+g′
- 3)乘法法则:(fg)′=f′g+fg′
- 4)除法法则:(fg)′=f′g−fg′g2
- 微分:若f′(a)存在,则称f在a处可微
1 | #将图形嵌入到Notebook中 %matplotlib inline |
C:\Users\123\AppData\Local\Temp\ipykernel_13552\2373785819.py:22: DeprecationWarning: `set_matplotlib_formats` is deprecated since IPython 7.23, directly use `matplotlib_inline.backend_inline.set_matplotlib_formats()`
set_matplotlib_formats('svg')
4.2 偏导数
- 偏导数:f(x1,x2,…,xn)关于xi的偏导数:∂f∂xi=limh→0f(x1,…,xi+h,…,xn)−f(x1,…,xi,…,xn)h
4.3 梯度
- 梯度:∇xf(x)=[∂f(x)∂x1,∂f(x)∂x2,…,∂f(x)∂xn]T
- 一些性质:
- ∀A∈Rm×n,∇x(Ax)=AT
- ∀A∈Rm×n,∇x(xTA)=A
- ∀A∈Rm×n,∇x(xTAx)=(A+AT)x
- ∇x||x||2F=∇x(xTx)=2x
4.4 链式法则
- y=f(u1,u2,…,um),ui=gi(x1,x2,…,xn),则∂y∂xi=m∑j=1∂y∂uj∂uj∂xi
练习
- 绘制函数y=X3−1X在x=1处的图像
1 | import matplotlib.pyplot as plt |
C:\Users\123\AppData\Local\Temp\ipykernel_13552\2157169762.py:5: RuntimeWarning: divide by zero encountered in divide
return x**3 - 1/x
C:\Users\123\AppData\Local\Temp\ipykernel_13552\2157169762.py:8: RuntimeWarning: divide by zero encountered in divide
plt.plot(x,3*x**2+1/x**2-4)