请 [注册] 或 [登录]  | 返回主站

量化交易吧 /  量化平台 帖子:3365811 新帖:18

【量化课堂】信息增益入门

萨达撒撒发表于:5 月 10 日 00:58回复(1)

导语:我们知道,资产价格的波动受到非常多因素的影响,比如上一个交易日的价格,交易量,国家经济走势,交易者的心理预期,各种技术指标,财务指标,甚至还可以是交易日的天气情况等等。每个人都可以总结出非常多影响资产价格的特征(也可以叫因子,变量)。但是如何在这些特征中,选取出真正有效的特征呢?这时候就可以用到本文中要介绍的信息增益了。



一、熵

即:下一个交易日的涨跌的不确定性。

由于影响资产价格的因素很多,因此人们往往用随机性描述资产的价格波动,把它看成一个随机变量。但是,随机变量的不确定性不是一成不变的。比如扔*,如果 90%90%

90\%

的概率都是正面向上,我们认为它的不确定性比 50%50%

50\%

正面向上的*要低。那么如何衡量一个离散变量的不确定性呢?在信息论和概率统计中,人们使用一个变量的‘熵’来表示这个变量的不确定性。为了简明起见,我们都用离散变量进行举例。

如果一个离散变量 YY

Y

的概率分布是:

P(Y=yi)=pi, i=1,2,,nP(Y=yi)=pi, i=1,2,…,n

P(Y=y_i )=p_i,\ i=1,2,…,n


那么变量 YY

Y

的熵定义为:

H(Y)=?i=1npilog2piH(Y)=?∑i=1npilog2?pi

H(Y)=-\sum_{i=1}^n p_i \log_2 p_i


由上述公式看出,当变量 YY

Y

的分布只有一个值的时候,它没有任何不确定性,计算出的熵是 00

0

。一个变量的熵越大,它的不确定性也越大,也越难预测。举个例子:如果我们用变量X表示第二天的资产涨跌,XX

X

只能取上涨或者下跌。当 XX

X

取上涨的概率从 0%0%

0\%

变化到 100%100%

100\%

时,其熵的变化是先变大再变小的。如下图所示,资产涨跌概率都是 50%50%

50\%

的时候,熵最大,表示这时候的状态最不稳定,最无序。

1.png


二、条件熵

即:知道了今天的涨跌,下一个交易日的涨跌的不确定性。

上文中,我们介绍了离散变量的熵及其计算公式。但是为了更好的预测未来的涨跌情况,我们需要更多的信息。例如,在股票涨跌的预测中,如果不知道其他信息,可以假设涨跌的概率都是 50%50%

50\%

,股票变动的熵就是 11

1

;但在已知今天的涨跌的情况下,下一个交易日涨跌的概率就变成 P(XtXt?1=)P(Xt∣Xt?1=涨)

P(X{t}\mid X{t-1} =涨 )

或者是 P(XtXt?1=)P(Xt∣Xt?1=跌)

P(X{t}\mid X{t-1} =跌 )

此时怎么进行熵的衡量呢?

假设我们要研究的变量为 YY

Y

,已观测到的变量为 XX

X

;用 H(YX=xi)H(Y∣X=xi)

H(Y\mid X= x_i )

表示在 XX

X

取值为 xixi

x_i

的情况下,变量 YY

Y

的熵,那么条件熵 H(YX)H(Y∣X)

H(Y\mid X)

就表示在已知信息 XX

X

的情况下,变量 YY

Y

的不确定性。条件熵的计算公式是:

H(YX)=i=1npxiH(YX=xi)H(Y∣X)=∑i=1npxiH(Y∣X=xi)


H(Y\mid X)=\sum{i=1}^n p{x_i} H(Y\mid X=x_i )


在这里,pxi=P(X=xi)pxi=P(X=xi)

p{x_i}=P(X= x_i )

i=1,2,,mi=1,2,…,m

i=1,2,…,m

。注意这个公式中的 H(YX=xi)H(Y∣X=xi)

H(Y\mid X=x_i )

H(YX)H(Y∣X)

H(Y\mid X)

的符号比较像,但 H(YX=xi)H(Y∣X=xi)

H(Y\mid X=x_i )

的意思是将 (YX=xi)(Y∣X=xi)

(Y\mid X=x_i )

整体看成一个变量 ZZ

Z

,利用 H(Z)=?ni=1pilog2piH(Z)=?∑i=1npilog2?pi

H(Z)=-\sum
{i=1}^n p_i \log_2 p_i

进行计算,不要被迷惑了。


三、信息增益

即:特征中包含的信息度量。
熵是变量不确定性的度量,条件熵就是在已知某些特征信息的情况下,对变量的不确定性的度量。那么这些已知的特征信息做了多少贡献呢?这就得引入信息增益的概念了。特征 XX

X

对于变量 YY

Y

的信息增益 g(Y,X)g(Y,X)

g(Y,X)

的计算公式如下:

g(Y,X)=H(Y)?H(YX)g(Y,X)=H(Y)?H(Y∣X)


g(Y,X)=H(Y)-H(Y\mid X)


信息增益也被称为“互信息”,表示知道特征 XX

X

的信息时,变量 YY

Y

的信息不确定性减少程度。信息增益越大,表示特征提供的信息越多,这个特征也越重要。

下面通过一个小例子,具体展示下信息增益的计算过程:

2.png

在上表中,一共有六个 YY

Y

的数据,其中三个是涨,三个是跌,涨和跌的概率分布都是 50%50%

50\%

。记 p1=p(Y=)=1/2p1=p(Y=涨)=1/2

p_1=p(Y=涨)=1/2

p2=p(Y=)=1/2p2=p(Y=跌)=1/2

p_2=p(Y=跌)=1/2

。那么 YY

Y

的熵是:

H(Y)=?i=12pilog2pi=?12log2(12)?12log2(12)=1H(Y)=?∑i=12pilog2?pi=?12log2(12)?12log2(12)=1

\begin{align}
H(Y) &=-\sum_{i=1}^2 p_i \log_2 p_i\
& =-\frac{1}{2} \text{log}_2\left(\frac{1}{2}\right) -\frac{1}{2}\text{log}_2 \left(\frac{1}{2}\right) \
& =1
\end{align
}


XX

X

为涨的情况下,一共有两个 YY

Y

的数据,都是涨。记 p1=P(Y=X=)=1p1=P(Y=涨∣X=涨)=1

p_1=P(Y=涨\mid X=涨)=1

p2=P(Y=X=)=0p2=P(Y=跌∣X=涨)=0

p_2=P(Y=跌\mid X=涨)=0

,则有:

H(YX=)=?i=12pilog2pi=?1log2(1)?0=0H(Y∣X=涨)=?∑i=12pilog2?pi=?1log2?(1)?0=0

\begin{align}
H(Y\mid X=涨) &=-\sum_{i=1}^2 p_i \log_2 p_i \
& = -1 \log_2(1)-0\
& =0
\end{align
}


这里再重复一下,需要把 (YX=)(Y∣X=涨)

(Y\mid X=涨)

整体看做一个变量,才能更好的理解公式。

XX

X

是跌的情况下,一共有四个 YY

Y

的数据,三个是跌,一个是涨,记 p1=P(Y=X=)=3/4p1=P(Y=跌∣X=跌)=3/4

p_1=P(Y=跌\mid X=跌)=3/4

p2=P(Y=X=)=1/4p2=P(Y=涨∣X=跌)=1/4

p_2=P(Y=涨 \mid X=跌)=1/4

,则有:

H(YX=)=?i=12pilog2pi=?34log2(34)?14log2(14)=0.8113H(Y∣X=涨)=?∑i=12pilog2?pi=?34log2(34)?14log2(14)=0.8113

\begin{align}
H(Y\mid X=涨) & =-\sum_{i=1}^2 p_i \log_2 p_i\
& =-\frac{3}{4} \log_2\left(\frac{3}{4}\right)-\frac{1}{4} \log_2\left(\frac{1}{4}\right)\
& =0.8113
\end{align
}


我们考虑 XX

X

本身的涨跌概率,记 px1=P(X=)=1/3px1=P(X=涨)=1/3

p{x_1}=P(X=涨)=1/3

px2=P(X=)=2/3px2=P(X=跌)=2/3

p
{x_2}=P(X=跌)=2/3

,则最终的条件熵为:

H(YX)=i=12pxiH(YX=xi)=P(X=)H(YX=) P(X=)H(YX=)=0.5409H(Y∣X)=∑i=12pxiH(Y∣X=xi)=P(X=涨)H(Y∣X=涨)P(X=跌)H(Y∣X=跌)=0.5409

\begin{align}
H(Y\mid X)& =\sum{i=1}^{2} p{x_i} H(Y \mid X=x_i )\
& = P(X=涨) H(Y\mid X=涨)\
& \qquad P(X=跌) H(Y\mid X=跌)\
& = 0.5409
\end{align
}


信息增益为:

g(Y,X)=H(Y)?H(YX)=1?0.5409=0.4591g(Y,X)=H(Y)?H(Y∣X)=1?0.5409=0.4591

\begin{align}
g(Y,X)& =H(Y)-H(Y\mid X)\
& =1-0.5409\
& = 0.4591
\end{align
}


小结:

上面给大家介绍了信息论中的信息增益的计算方法。通俗而言,利用信息增益可以衡量在引入一个变量之后,原有变量不确定性减少的程度。信息增益越高,表示新引入的变量效果越好。信息增益可以帮助我们了解各个因子是否有效,也可以用来衡量机器学习中的各个特征的重要性。还有更多的用法,大家可以自己去探索。


本文由JoinQuant量化课堂推出,版权归JoinQuant所有,商业转载请联系我们获得授权,非商业转载请注明出处。


文章更迭记录:
v1.0,2016-07-02,文章上线

全部回复

0/140

量化课程

    移动端课程