深度学习基础 - 泰勒级数
flyfish
2019-03-04 22:59:05
深受3Bule1Brown的影响,通俗易看的教程。
在说泰勒级数的时候,先说高阶导数
s
(
t
)
⇔
Displacement 位移
d
s
d
t
(
t
)
⇔
Velocity 速度
d
2
s
d
t
2
(
t
)
⇔
Acceleration 加速度
\begin{array}{l}{s(t) \Leftrightarrow \text { Displacement 位移}} \\ {\frac{d s}{d t}(t) \Leftrightarrow \text { Velocity 速度}} \\ {\frac{d^{2} s}{d t^{2}}(t) \Leftrightarrow \text { Acceleration 加速度}}\end{array}
s(t)⇔ Displacement 位移dtds(t)⇔ Velocity 速度dt2d2s(t)⇔ Acceleration 加速度
上面有2的看做二阶导数,有3的看做三阶导数.三阶导数是什么,叫Jerk,
位置矢量s对时间的一阶导数是速度Velocity
二阶导数则为加速度Acceleration,
位置矢量s的三阶导数,即加速度的变化率,称之为Jerk急动度。 如果叫加加速度是不是好记些。
位置矢量s的四阶导数是什么,用什么简短的词表达我不知道,难道是加加加速度?
d
3
s
d
t
3
(
t
)
⇔
J
e
r
k
\frac{d^{3} s}{d t^{3}}(t) \Leftrightarrow {Jerk}
dt3d3s(t)⇔Jerk
wiki上是这么表示的(注意r上是三个点,CSDN版本的markdown没解析出来,写三个点报错)
ȷ
⃗
(
t
)
=
d
a
⃗
(
t
)
d
t
=
a
⃗
˙
(
t
)
=
d
2
v
⃗
(
t
)
d
t
2
=
v
⃗
¨
(
t
)
=
d
3
r
⃗
(
t
)
d
t
3
=
r
⃗
¨
(
t
)
\vec{\jmath}(t)=\frac{\mathrm{d} \vec{a}(t)}{\mathrm{d} t}=\dot{\vec{a}}(t)=\frac{\mathrm{d}^{2} \vec{v}(t)}{\mathrm{d} t^{2}}=\ddot{\vec{v}}(t)=\frac{\mathrm{d}^{3} \vec{r}(t)}{\mathrm{d} t^{3}}= \ddot{\vec{r}}(t)
(t)=dtda(t)=a˙(t)=dt2d2v(t)=v¨(t)=dt3d3r(t)=r¨(t)
a
⃗
is acceleration 加速度
v
⃗
is velocity 速度,
r
⃗
is position 位移 ,
t
is time 时间.
\begin{array}{l}{\vec{a} \text { is acceleration 加速度 }} \\ {\vec{v} \text { is velocity 速度, }} \\ {\vec{r} \text { is position 位移 , }} \\ {t \text { is time 时间. }}\end{array}
a is acceleration 加速度 v is velocity 速度, r is position 位移 , t is time 时间.
看a,v,r上的点的个数。a上一个点,v上两个点,r上三个点。当看俄罗斯数学教材《微积分教程》菲赫金哥尔茨 写的,知道微积分的符号有多种表示方法。我看就像同一件事有的人用汉语表达,当用其他语言再表达时,看着符号都不习惯。
就看自己熟悉那种表示方法,还是wiki之前的那个容易看些,如是y上加一撇,y上加两撇,写起来更方便些。
理解高阶高数总得找个例子,高阶那就找个最低的高阶就是2。也就是加速度,以加速度来理解二阶导数
有的地方是Displacement,有的地方是position,我都写成位移了,没有区分位置,位移。位置看上去就是坐标轴上的一点,位移看上去就是一段距离
d
(
d
f
d
x
)
d
x
=
d
(
d
f
)
(
d
x
)
2
=
d
2
f
d
x
2
⏟
d
x
→
0
\underbrace{\frac{d\left(\frac{d f}{d x}\right)}{d x}=\frac{d(d f)}{(d x)^{2}}=\frac{d^{2} f}{d x^{2}}}_{d x \rightarrow 0}
dx→0
dxd(dxdf)=(dx)2d(df)=dx2d2f
上图中间表达的准确些
cos ( x ) ⟶ x = 0 1 d ( cos ) d x ( 0 ) = − sin ( 0 ) = 0 d 2 ( cos ) d x 2 ( 0 ) = − cos ( 0 ) = − 1 \begin{array}{l}{\cos (x) \stackrel{x=0}{\longrightarrow} 1} \\ {\frac{d(\cos )}{d x}(0)=-\sin (0)=0} \\ {\frac{d^{2}(\cos )}{d x^{2}}(0)=-\cos (0)=-1}\end{array} cos(x)⟶x=01dxd(cos)(0)=−sin(0)=0dx2d2(cos)(0)=−cos(0)=−1
P ( x ) = 1 + 0 x + c 2 x 2 d P d x ( x ) = 0 + 2 c 2 x d 2 P d x 2 ( x ) = 2 c 2 \begin{array}{l}{P(x)=1+0 x+c_{2} x^{2}} \\ {\frac{d P}{d x}(x)=0+2 c_{2} x} \\ {\frac{d^{2} P}{d x^{2}}(x)=2 c_{2}}\end{array} P(x)=1+0x+c2x2dxdP(x)=0+2c2xdx2d2P(x)=2c2
cos ( 0 ) = 1 d ( cos ) d x ( 0 ) = − sin ( 0 ) = 0 d 2 ( cos ) d x 2 ( 0 ) = − cos ( 0 ) = − 1 d 3 ( cos ) d x 3 ( 0 ) = sin ( 0 ) = 0 d 4 ( cos ) d x 4 ( 0 ) = cos ( 0 ) = 1 \begin{array}{l}{\cos (0)=1} \\ {\frac{d(\cos )}{d x}(0)=-\sin (0)=0} \\ {\frac{d^{2}(\cos )}{d x^{2}}(0)=-\cos (0)=-1} \\ {\frac{d^{3}(\cos )}{d x^{3}}(0)=\sin (0)=0} \\ {\frac{d^{4}(\cos )}{d x^{4}}(0)=\cos (0)=1}\end{array} cos(0)=1dxd(cos)(0)=−sin(0)=0dx2d2(cos)(0)=−cos(0)=−1dx3d3(cos)(0)=sin(0)=0dx4d4(cos)(0)=cos(0)=1
P ( x ) = 1 − 1 2 x 2 + 1 24 x 4 d 4 P d x 4 ( x ) = 1 ⋅ 2 ⋅ 3 ⋅ 4 ⋅ 1 24 = 24 ⋅ 1 24 \begin{aligned} P(x) &=1-\frac{1}{2} x^{2}+\frac{1}{24} x^{4} \\ \frac{d^{4} P}{d x^{4}}(x) &=1 \cdot 2 \cdot 3 \cdot 4 \cdot \frac{1}{24} \\ &=24 \cdot \frac{1}{24} \end{aligned} P(x)dx4d4P(x)=1−21x2+241x4=1⋅2⋅3⋅4⋅241=24⋅241
P
(
x
)
=
1
+
0
x
1
1
!
+
−
1
x
2
2
!
+
0
x
3
3
!
+
1
x
4
4
!
⏟
+
⋯
P(x)=\underbrace{1+0 \frac{x^{1}}{1 !}+-1 \frac{x^{2}}{2 !}+0 \frac{x^{3}}{3 !}+1 \frac{x^{4}}{4 !}}_{\text { }}+\cdots
P(x)=
1+01!x1+−12!x2+03!x3+14!x4+⋯
底下大括号套的部分是泰勒多项式(Taylor polynomial)
f ( 0 ) d f d x ( 0 ) d 2 f d x 2 ( 0 ) d 3 f d x 3 ( 0 ) d 4 f d x 4 ( 0 ) \begin{array}{c}{f(0)} \\ {\frac{d f}{d x}(0)} \\ {\frac{d^{2} f}{d x^{2}}(0)} \\ {\frac{d^{3} f}{d x^{3}}(0)} \\ {\frac{d^{4} f}{d x^{4}}(0 )}\end{array} f(0)dxdf(0)dx2d2f(0)dx3d3f(0)dx4d4f(0)
P
(
x
)
=
f
(
0
)
+
d
f
d
x
(
0
)
x
1
1
!
+
d
2
f
d
x
2
(
0
)
x
2
2
!
+
d
3
f
d
x
3
(
0
)
x
3
3
!
+
⋯
P(x)=f(0)+\frac{d f}{d x}(0) \frac{x^{1}}{1 !}+\frac{d^{2} f}{d x^{2}}(0) \frac{x^{2}}{2 !}+\frac{d^{3} f}{d x^{3}}(0) \frac{x^{3}}{3 !}+\cdots
P(x)=f(0)+dxdf(0)1!x1+dx2d2f(0)2!x2+dx3d3f(0)3!x3+⋯
函数f(x)在x=0处的泰勒级数
P
(
x
)
=
f
(
0
)
+
f
′
(
0
)
1
!
x
+
f
′
′
(
0
)
2
!
x
2
+
f
(
3
)
(
0
)
3
!
x
3
+
⋯
P(x)=f(0)+\frac{f^{\prime}(0)}{1 !} x+\frac{f^{\prime \prime}(0)}{2 !} x^{2}+\frac{f^{(3)}(0)}{3 !} x^{3}+\cdots
P(x)=f(0)+1!f′(0)x+2!f′′(0)x2+3!f(3)(0)x3+⋯
函数f(x)在x=a处的泰勒级数
P
(
x
)
=
f
(
a
)
+
f
′
(
a
)
1
!
(
x
−
a
)
+
f
′
′
(
a
)
2
!
(
x
−
a
)
2
+
f
(
3
)
(
a
)
3
!
(
x
−
a
)
3
+
⋯
P(x)=f(a)+\frac{f^{\prime}(a)}{1 !}(x-a)+\frac{f^{\prime \prime}(a)}{2 !}(x-a)^{2}+\frac{f^{(3)}(a)}{3 !}(x-a)^{3}+\cdots
P(x)=f(a)+1!f′(a)(x−a)+2!f′′(a)(x−a)2+3!f(3)(a)(x−a)3+⋯
另一种方式 sigma notation
∑
n
=
0
∞
f
(
n
)
(
a
)
n
!
(
x
−
a
)
n
\sum_{n=0}^{\infty} \frac{f^{(n)}(a)}{n !}(x-a)^{n}
n=0∑∞n!f(n)(a)(x−a)n
简单看就是把各个导数用加号连接起来,如果加起来的项个数是有限的就是泰勒多项式,如果个数无限的就是泰勒级数。加号越多越精确。
就像三角函数里的级数,项越多越精确
sin
x
=
x
−
x
3
3
!
+
x
5
5
!
−
x
7
7
!
+
…
=
∑
n
=
0
∞
(
−
1
)
n
x
2
n
+
1
(
2
n
+
1
)
!
cos
x
=
1
−
x
2
2
!
+
x
4
4
!
−
x
6
6
!
+
⋯
=
∑
n
=
0
∞
(
−
1
)
n
x
2
n
(
2
n
)
!
\begin{array}{l}{\sin x=x-\frac{x^{3}}{3 !}+\frac{x^{5}}{5 !}-\frac{x^{7}}{7 !}+\ldots=\sum_{n=0}^{\infty} \frac{(-1)^{n} x^{2 n+1}}{(2 n+1) !}} \\ {\cos x=1-\frac{x^{2}}{2 !}+\frac{x^{4}}{4 !}-\frac{x^{6}}{6 !}+\cdots=\sum_{n=0}^{\infty} \frac{(-1)^{n} x^{2 n}}{(2 n) !}}\end{array}
sinx=x−3!x3+5!x5−7!x7+…=∑n=0∞(2n+1)!(−1)nx2n+1cosx=1−2!x2+4!x4−6!x6+⋯=∑n=0∞(2n)!(−1)nx2n
参考二分
一、中国插值法与印度级数展开:古代东方数学的逼近智慧
中国的插值法与印度的级数展开,展现了古代东方数学的两大路径:前者以实用为导向,通过分段逼近解决实际问题;后者以思辨为驱动,追求数学对象的无限细分。尽管未形成公理化体系,但这些成果为后世数学的发展提供了重要启示,证明了非西方文明对人类知识体系的独特贡献。
中国插值法的实用性探索
1. 《周髀算经》的勾股术与线性插值思想
公元前1世纪成书的《周髀算经》是中国最早的天文数学著作之一,其核心思想“勾股术”不仅用于直角三角形计算,更隐含了线性插值的萌芽。
- 案例:书中记载“勾广三,股修四,径隅五”,通过勾股定理计算日影长度。当需要计算非整数刻度的日影时,古人采用“以盈补虚”法,即通过相邻整数点的日影差线性推算中间值。例如,已知冬至日影长13.5尺,小寒日影长12.5尺,求冬至后10天的日影长度,可假设日影线性递减,每日减少0.1尺,从而得到插值结果。
- 数学本质:这种方法等价于现代线性插值公式:
f ( x ) ≈ f ( x 0 ) + f ( x 1 ) − f ( x 0 ) x 1 − x 0 ( x − x 0 ) , f(x) \approx f(x_0) + \frac{f(x_1) - f(x_0)}{x_1 - x_0}(x - x_0), f(x)≈f(x0)+x1−x0f(x1)−f(x0)(x−x0),
但未形成符号化表达,依赖具体数值操作。
2. 僧一行《大衍历》的不等间距二次插值法
唐代天文学家僧一行(683–727)在编制《大衍历》时,为解决太阳视运动不均匀问题,创立了“不等间距二次插值法”,突破了早期线性插值的局限性。
- 方法:
- 将太阳运行轨迹划分为若干段,每段对应不同的时间间隔(如节气)。
- 对每段弧长,假设太阳速度的变化率为二次函数,即速度增量与时间平方成正比。
- 通过构造二次多项式逼近实际运行轨迹,公式为:
s ( t ) = s 0 + v 0 t + a 2 t 2 , s(t) = s_0 + v_0 t + \frac{a}{2} t^2, s(t)=s0+v0t+2at2,
其中 ( s_0 ) 为初始位置,( v_0 ) 为初速度,( a ) 为加速度。
- 应用案例:计算从春分(时间 ( t_0 ))到清明(时间 ( t_1 ))的太阳位置时,若已知 ( t_0 ) 处速度 ( v_0 ) 和 ( t_1 ) 处速度 ( v_1 ),则加速度 ( a = \frac{v_1 - v_0}{t_1 - t_0} ),代入公式得到任意时刻 ( t ) 的位置。
- 历史意义:这是世界上首次系统应用二次插值法,比牛顿的同类方法早约千年,为后世历法计算奠定了基础。
印度喀拉拉学派的级数展开
1. 马德哈瓦的正弦、余弦级数(约14世纪)
印度喀拉拉学派的马德哈瓦(Madhava of Sangamagrama)在14世纪发现了正弦、余弦函数的无穷级数展开,早于欧洲同类成果近300年:
- 正弦级数:
sin x = x − x 3 3 ! + x 5 5 ! − ⋯ \sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \cdots sinx=x−3!x3+5!x5−⋯ - 余弦级数:
cos x = 1 − x 2 2 ! + x 4 4 ! − ⋯ \cos x = 1 - \frac{x^2}{2!} + \frac{x^4}{4!} - \cdots cosx=1−2!x2+4!x4−⋯
马德哈瓦通过几何构造和递归计算推导出这些级数。他将圆周四等分,利用无穷小弧长与弦长的关系,结合迭代方法逐项计算系数,最终得到收敛的无穷级数。
2. 马德哈瓦的π级数与递推公式
- π的无穷级数:
π = 4 ( 1 − 1 3 + 1 5 − 1 7 + ⋯ ) \pi = 4 \left( 1 - \frac{1}{3} + \frac{1}{5} - \frac{1}{7} + \cdots \right) π=4(1−31+51−71+⋯)
该级数通过正多边形逼近圆周长的方法导出,马德哈瓦还提出了加速收敛的修正项:
π ≈ 4 ( ∑ k = 0 n ( − 1 ) k 2 k + 1 ) + ( − 1 ) n + 1 2 n + 1 ⋅ 4 4 n + 5 . \pi \approx 4 \left( \sum_{k=0}^n \frac{(-1)^k}{2k+1} \right) + \frac{(-1)^{n+1}}{2n+1} \cdot \frac{4}{4n+5}. π≈4(k=0∑n2k+1(−1)k)+2n+1(−1)n+1⋅4n+54.
3. 喀拉拉学派的传播与影响
马德哈瓦的成果通过师徒相传的方式在喀拉拉地区延续了数百年。16世纪,尼拉坎塔(Nilakantha Somayaji)在《坦特罗 Sangraha》中进一步发展了级数理论,并将其应用于天文计算。尽管未直接影响欧洲数学,但喀拉拉学派的工作表明,东方数学在函数展开领域已达到相当高的理论水平。
中印数学的比较与交融
维度 | 中国插值法 | 印度级数展开 |
---|---|---|
目标 | 解决天文历法的实际计算问题 | 追求数学理论的精确性与普适性 |
方法 | 分段多项式逼近,强调实用性 | 无穷级数展开,注重逻辑推导 |
符号体系 | 文字描述为主,缺乏符号化 | 使用梵文诗歌形式记录数学公式 |
传播范围 | 局限于中国本土,影响东亚 | 限于印度半岛,未形成国际影响 |
二、泰勒级数的正式诞生:从插值术到解析工具的范式改变
思想起源:插值法与无穷级数的暗流涌动
17世纪末至18世纪初,微积分的创立引发了数学界对函数局部行为的关注。牛顿的幂级数展开(如1669年《分析学》中对正弦函数的级数表示)和詹姆斯·格雷戈里(James Gregory)的插值公式(1670年)已为泰勒的突破埋下伏笔。但这些成果局限于特定函数或离散点,缺乏统一的理论框架。
- 格雷戈里-牛顿插值公式(1670-1676):通过差分法构造多项式逼近函数,但仅适用于等距节点。
- 莱布尼茨的微分符号(1684):为函数局部变化的量化提供了工具,但未解决级数展开的普适性问题。
- 约翰·伯努利的积分级数(1694):首次将无穷级数用于积分计算,启发了泰勒对连续性的思考。
泰勒的突破性贡献(1712-1715)
1. 从插值到展开的逻辑跨越
1712年7月,布鲁克·泰勒(Brook Taylor)在给导师约翰·梅钦(John Machin)的信中首次提出“泰勒定理”的雏形。他通过将格雷戈里-牛顿插值公式推广到连续变量,发现任意函数在某点附近可表示为无穷多项式:
f
(
x
+
h
)
=
f
(
x
)
+
h
f
′
(
x
)
+
h
2
2
!
f
′
′
(
x
)
+
⋯
f(x + h) = f(x) + hf'(x) + \frac{h^2}{2!}f''(x) + \cdots
f(x+h)=f(x)+hf′(x)+2!h2f′′(x)+⋯
这一公式的核心是用高阶导数刻画函数的局部行为,将离散插值转化为连续展开。
2. 《正的和反的增量方法》的发表
1715年,泰勒在《Methodus Incrementorum Directa et Inversa》中系统阐述了这一理论。他以“流数”(牛顿术语)为基础,通过逐次差分推导级数系数,并首次明确提出“泰勒级数”的一般形式。尽管证明依赖几何直观且未考虑收敛性,但这一工作标志着函数解析表达的里程碑。
3. 物理应用的早期尝试
泰勒将级数应用于弦振动问题(1713年),通过展开位移函数推导出弦的基频公式:
ω
=
π
L
T
ρ
\omega = \frac{\pi}{L}\sqrt{\frac{T}{\rho}}
ω=LπρT
这一成果不仅验证了级数的实用性,也开创了微分方程与级数结合的先例。
冷落与再发现:从边缘到核心的半个世纪
1. 初期的学术冷遇
泰勒的工作在英国本土未受重视,部分原因是其晦涩的几何论证和对“流数”术语的坚持。同时,欧洲大陆数学家(如伯努利家族)更关注莱布尼茨的微分符号体系,对泰勒的成果持怀疑态度。
2. 欧拉的系统化推广
1748年,欧拉在《无穷分析引论》中重新诠释泰勒级数,将其与微分方程结合,提出“解析函数”概念:
- 指数函数 e x = ∑ n = 0 ∞ x n n ! e^x = \sum_{n=0}^\infty \frac{x^n}{n!} ex=∑n=0∞n!xn
- 对数函数
ln
(
1
+
x
)
=
∑
n
=
1
∞
(
−
1
)
n
+
1
x
n
n
\ln(1+x) = \sum_{n=1}^\infty (-1)^{n+1}\frac{x^n}{n}
ln(1+x)=∑n=1∞(−1)n+1nxn
欧拉通过逐项积分和求导,证明了级数在收敛域内的等价性,并首次将其应用于复变函数(如 $e^{i\theta} = \cos\theta + i\sin\theta ))。
3. 麦克劳林的特例化贡献
1742年,科林·麦克劳林(Colin Maclaurin)在《流数论》中提出泰勒级数的特例——麦克劳林级数($x=0 )处的展开),并用于极值判定。尽管他本人承认这是泰勒定理的简化形式,但后世仍以其名命名,反映了英国数学界对牛顿传统的坚守。
严格化与理论升华(19世纪)
1. 柯西的收敛性革命
1821年,奥古斯丁·柯西(Augustin-Louis Cauchy)在《分析教程》中引入极限严格定义,首次证明泰勒级数的收敛条件:
- 余项估计:若 f ( n ) ( x ) f^{(n)}(x) f(n)(x)在区间 ( a − δ , a + δ ) (a-\delta, a+\delta) (a−δ,a+δ)内有界,则级数收敛于 $f(x) )。
- 收敛半径:通过柯西-阿达马公式
R
=
lim
n
→
∞
1
∣
a
n
∣
n
R = \lim_{n\to\infty} \frac{1}{\sqrt[n]{|a_n|}}
R=limn→∞n∣an∣1确定级数的有效范围。
这一突破终结了级数展开的盲目性,使其成为严谨的数学工具。
2. 复分析的奠基
1841年,卡尔·魏尔斯特拉斯(Karl Weierstrass)在复平面上建立解析函数理论,证明解析函数与泰勒级数的等价性:
- 若函数在某点解析,则其泰勒级数在此点邻域内收敛于原函数。
- 反之,任何收敛的幂级数定义一个解析函数。
这一成果将泰勒级数从实分析扩展到复分析,为现代数学奠定了基础。
跨文明对话:中国的西学东渐
-
李善兰的引入(1859年)
李善兰与伟烈亚力合译《代微积拾级》,首次将泰勒级数译为“戴劳级数”,并在《则古昔斋算学》中系统阐释其展开方法。他结合中国传统“垛积术”,提出级数求和的新技巧,推动了中西数学的融合。 -
华罗庚的现代拓展
20世纪中叶,华罗庚在《典型域上的调和分析》中利用泰勒级数研究多复变函数,将其与群表示论结合,解决了复分析中的重大难题,标志着中国数学与国际前沿的接轨。