logistics 方程由比利时数学家Pierre François Verhulst提出,是一个对S型曲线进行数学描述的模型。这个方程应用于一些特殊的领域建模与预测,例如单位面积内某种生物的数量、人口数量等社会经济指标、某种商品(例如手机)的普及率等。
logistics 方程定义:
x t = 1 c + a e b t (1) x_t = \frac{1}{c+ae^{bt}} \tag{1} xt=c+aebt1(1)
其中,t 表示时间变量,a,b,c 为模型的参数;当趋势比较完整时, a > 0 , b < 0 , c > 0 a>0, b<0, c>0 a>0,b<0,c>0 。其曲线如下图:
根据方程和图像可知:
当 t → − ∞ , x ( t ) → 1 / c t \to -\infty,x(t) \to 1/c t→−∞,x(t)→1/c。为研究 Logistics 曲线好的增长特性,对 Logistics 方程求一阶导数:
d x d t = − a b e b t ( c + a e b t ) 2 > 0 \frac{dx}{dt}=\frac{-abe^{bt}}{{(c+a e^{bt})}^2} > 0 dtdx=(c+aebt)2−abebt>0
根据方程 (1),微分写成差分式:
x t + 1 − x t x t + 1 \frac{x_{t+1}-x_t}{x_{t+1}} xt+1xt+1−xt
= 1 − x t x t + 1 = 1 - \frac{x_t}{x_{t+1}} =1−xt+1xt
= 1 − c + a e b ( t + 1 ) c + a e b t = 1 - \frac{c+ae^{b(t+1)}}{c+ae^{bt}} =1−c+aebtc+aeb(t+1)
= ( a e b t + c − c ) ( 1 − e b ) c + a e b t = \frac{(ae^{bt}+c-c)(1-e^b)}{c+ae^{bt}} =c+aebt(aebt+c−c)(1−eb)
= ( 1 − e b ) − c ( 1 − e b ) x t = (1-e^b)-c(1-e^b)x_t =(1−eb)−c(1−eb)xt
设 z t = x t + 1 − x t x t + 1 , γ = 1 − e b , β = − c ( 1 − e b ) z_t=\frac{x_{t+1}-x_t}{x_{t+1}}, \gamma=1-e^b, \beta=-c(1-e^b) zt=xt+1xt+1−xt,γ=1−eb,β=−c(1−eb),那么上面的方程可以写成线性方程:
z t = γ + β x t z_t=\gamma+\beta x_t zt=γ+βxt
利用最小二乘法(OLS)可以得到这个方程参数的估计值,进而 b 和 c 的估计值也可以进一步得到。
为了得到 a 的估计值,Logistics 方程两边同时取对数:
l n ( 1 x t − c ^ ) = l n a ^ + b ^ t (2) ln(\frac{1}{x_t}-\hat{c})=ln \hat{a}+\hat{b}t \tag{2} ln(xt1−c^)=lna^+b^t(2)
左右分别对 t 求和:
∑ t = 1 n l n ( 1 x t − c ^ ) = n l n a ^ − n ( n + 1 ) 2 b ^ (3) \sum_{t=1}^{n} ln(\frac{1}{x_t}-\hat{c})=nln\hat{a}-\frac{n(n+1)}{2}\hat{b} \tag{3} t=1∑nln(xt1−c^)=nlna^−2n(n+1)b^(3)
可以很容易得到 a 的估计值:
a ^ = e x p ( 1 n ( ∑ t = 1 n l n ( 1 x t − c ^ − n ( n + 1 ) 2 b ^ ) ) ) (4) \hat{a}=exp \left( \frac{1}{n} \left( \sum_{t=1}^n ln(\frac{1}{x_t}-\hat{c}-\frac{n(n+1)}{2}\hat{b}) \right) \right) \tag{4} a^=exp(n1(t=1∑nln(xt1−c^−2n(n+1)b^)))(4)
根据 Logistics 方程可以得到:
1 x t + 1 \frac{1}{x_{t+1}} xt+11
= c + a e b ( t + 1 ) = c + ae^{b(t+1)} =c+aeb(t+1)
= c − c e b + c e b + a e b ( t + 1 ) =c-ce^b+ce^b+ae^{b(t+1)} =c−ceb+ceb+aeb(t+1)
= c ( 1 − e b ) + e b x t =c(1-e^b)+\frac{e^b}{x_t} =c(1−eb)+xteb
设 z t = 1 x t + 1 、 s t = 1 x t 、 γ = c ( 1 − e b ) 、 β = e b z_t=\frac{1}{x_{t+1}}、s_t=\frac{1}{x_t}、\gamma =c(1-e^b)、\beta =e^b zt=xt+11、st=xt1、γ=c(1−eb)、β=eb,那么该方程可以写成线性方程:
z t = γ + β s t z_t=\gamma + \beta s_t zt=γ+βst
利用最小二乘法(OLS)可以得到这个方程参数的估计值,进而 b 和 c 的估计值也可以进一步得到。利用方程 (2)-(4) 可以得到 a 的估计值。
Yule 算法的差分式结果可以进一步写成:
x t + 1 − x t x t + 1 = ( 1 − e b ) ( 1 − c x t ) \frac{x_{t+1}-x_t}{x_{t+1}}=(1-e^b)(1-cx_t) xt+1xt+1−xt=(1−eb)(1−cxt)
1 1 − e b = x t + 1 ( 1 − c x t ) x t + 1 − x t \frac{1}{1-e^b}=\frac{x_{t+1}(1-cx_t)}{x_{t+1}-x_t} 1−eb1=xt+1−xtxt+1(1−cxt)
1 + e b 1 − e b = 2 1 − e b − 1 \frac{1+e^b}{1-e^b}=\frac{2}{1-e^b}-1 1−eb1+eb=1−eb2−1
= 1 x t + 1 x t + 1 − 2 c 1 x t − 1 x t + 1 =\frac{\frac{1}{x_t}+\frac{1}{x_{t+1}}-2c}{\frac{1}{x_t}-\frac{1}{x_{t+1}}} =xt1−xt+11xt1+xt+11−2c
进一步整理得到;
1 x t − 1 x t + 1 = 1 − e b 1 + e b ( 1 x t + 1 x t + 1 ) − 2 c ( 1 − e b ) 1 + e b (5) \frac{1}{x_t}-\frac{1}{x_{t+1}} = \frac{1-e^b}{1+e^b}(\frac{1}{x_t}+\frac{1}{x_{t+1}})-\frac{2c(1-e^b)}{1+e^b} \tag{5} xt1−xt+11=1+eb1−eb(xt1+xt+11)−1+eb2c(1−eb)(5)
设 z t = 1 x t − 1 x t + 1 、 s t = 1 x t + 1 x t + 1 、 γ = 2 c ( 1 − e b ) 1 + e b 、 β = 1 − e b 1 + e b z_t=\frac{1}{x_t}-\frac{1}{x_{t+1}}、s_t=\frac{1}{x_t}+\frac{1}{x_{t+1}}、\gamma =\frac{2c(1-e^b)}{1+e^b}、\beta = \frac{1-e^b}{1+e^b} zt=xt1−xt+11、st=xt1+xt+11、γ=1+eb2c(1−eb)、β=1+eb1−eb ,那么方程 (5) 可以写成线性方程:
z t = γ + β s t z_t = \gamma + \beta s_t zt=γ+βst
利用最小二乘法(OLS)可以得到这个方程的参数估计值,进而 b 和 c 的估计值也可以得到,利用方程 (2)-(4) 可以得到 a 的估计值。
Logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。Logistic回归的因变量可以是二分类的,也可以是多分类的。
P ( Y = 1 ∣ x 1 , x 2 , . . . , x n ) = e x p ( β 0 + β 1 x 1 + . . . + β n x n ) 1 + e x p ( β 0 + β 1 x 1 + . . . + β n x n ) P(Y=1 | x_1, x_2, ..., x_n)=\frac{exp(\beta _0+\beta _1x_1 + ... + \beta _n x_n)}{1+exp(\beta _0+\beta _1x_1 + ... + \beta _n x_n)} P(Y=1∣x1,x2,...,xn)=1+exp(β0+β1x1+...+βnxn)exp(β0+β1x1+...+βnxn)
在实际应用该模型的时候,常常不是不是直接对P进行回归,而是先 定义单调连续概率函数 π \pi π :
π = P ( Y = 1 ∣ x 1 , x 2 , . . . , x n ) , 0 < π < 1 \pi=P(Y=1 | x_1, x_2, ..., x_n), 0 < \pi < 1 π=P(Y=1∣x1,x2,...,xn),0<π<1
于是Logistic模型就可以变形为:
l n π 1 − π = β 0 + β 1 x 1 + . . . + β n x n , 0 < π < 1 ln\frac{\pi}{1- \pi}=\beta _0+\beta _1x_1 + ... + \beta _n x_n, 0 < \pi < 1 ln1−ππ=β0+β1x1+...+βnxn,0<π<1
即:
l n π 1 − π = β 0 + β 1 x 1 + . . . + β n x n , 0 < π < 1 (1) ln\frac{\pi}{1- \pi}=\beta _0+\beta _1x_1 + ... + \beta _n x_n, 0 < \pi < 1 \tag{1} ln1−ππ=β0+β1x1+...+βnxn,0<π<1(1)
π = e x p ( β 0 + β 1 x 1 + . . . + β n x n ) 1 + e x p ( β 0 + β 1 x 1 + . . . + β n x n ) (2) \pi=\frac{exp(\beta _0+\beta _1x_1 + ... + \beta _n x_n)}{1+exp(\beta _0+\beta _1x_1 + ... + \beta _n x_n)} \tag{2} π=1+exp(β0+β1x1+...+βnxn)exp(β0+β1x1+...+βnxn)(2)
P = { 0 π ≤ A 1 π ≥ 1 − A (3) P=\begin{cases} 0 & \pi \le A \\ 1 & \pi \ge 1 - A \end{cases} \tag{3} P={01π≤Aπ≥1−A(3)
通过多元线性回归解出 β 0 , β 1 , . . . , β n \beta _0, \beta _1, ..., \beta _n β0,β1,...,βn ,带入求得 π \pi π ,根据 π \pi π 的值判断 P 的取值。