您的位置:首页 > 其它

小样本分析(二)

2015-07-21 07:50 344 查看
东西写好之后,确认了几件事情,今天拿出来水一下。公式这个真是麻烦死了,markDown也不好用,只好把word里面的公式都去掉,重新写一点。

引子:

一个暗盒子里面装满了球(认为足够多),拿出一个球发现是红球,再拿出一个还是红球的概率是多少?。在以前的遇到这些问题时往往会以抽样样本数量太少不具备统计学意义为理由,拒绝回答这类“没有意义”的问题,而当自然语言处理中又必须回答这些问题时,常见的估算也是比较多(前面有一篇已经介绍过了),要么是主观构造一些修正公式,后面验证发现比较好用的;要么则是通过大量已知的数据集合进行训练,得到使目标函数最优的概率结果,但大体缺乏数学基础。

估算的方法:
当我们完全没有取出任何球的时候,我们对盒子里面的球这个集合一无所知,只能认为从里面取出一个红球的概率从0到1之间的任何概率都有,为了满足熵最大假设,其概率密度分布函数为均匀分布,为了简化问题本身,我们把无限种可能性简化为一下11种可能性:0.05的概率以0的概率取出红球,0.1的概率以0.1的概率取出红球,0.1的概率以0.2的概率取出红球,……0.05的概率以1的概率取出红球。这样我们预先构造出一个原假设,这个原假设是均匀分布,熵最大。我们取出一个红球时,问:该黑盒子是以上11种情况的概率分布是多少?对贝叶斯略有了解的同学应该都能计算。那么如果问:黑盒子中再取出一个红球的概率是多少?显而易见,11种情况各自的概率我们是已知的,每种情况的抽出红球的概率是已知的,红容易计算出来。由于公式太难搞了,大家也可以自行把它转换成数学的积分形式推演一遍。

结果观察:

50次抽样抽出25个红球与100次抽样抽出50个红球计算的概率都是50%,但是11种情况概率分布是不同的,后一种我们对这个50%时更确定的。11种情况的分布熵可以作为我们对最后概率的不确定度的度量(越大越不确定)。即使我们只取了一个红球,我们可以给出一个风险最小的估算,但我们也知道我们对此不确定。

随着抽样增加,不确定度会减小(有待考证),而最后的概率值也会和纯粹考察抽样越来越接近。这也是符合我们的生活经验。

进阶——引入有知识的原假设:

根据生活经验:世界颜色有这么多,红球肯定占不到一半(乒乓球里面就没有一个红的)。加入先验知识红球的概率是0.1。即这个世界上每10个球里面有1个红球。如果我们从来没抽过球,对黑盒子完全无知,那么我们肯定要猜0.1了,但是上面的11种情况的概率分布应该如何呢?首先最后的平均概率为0.1,其次我们要风险最小,即分布熵最大。在这两个要求下我们可以构造一个“合理”的分布(如果你要问为甚么分布熵大就风险小,我也不知道从何说起,先假设它是对的吧)。至于怎么推导怎么求这个分布,可以先去看一下这本书上的《MaximumEntropy
Language with Non-Local Dependencies》(吴军)这本书上的骰子的问题,我也是看这这个搞的。最后还是那个把它变成积分的形式推导一遍。

小结:

其实这个思想很简单,如果样本较少,估算概率时就借助外来知识,但是借用知识时,要降低风险,考虑每一种可能性都有可能发生。就好像量子力学里某个学派说的那样:电子他是一个波,但是你一观察他就变成了一个点。世界上每一种可能性他都发生了,但是我们看到的是宏观态。

简化——特征退化方法:

回到上面的例子,我们用熵等乱七八糟的东西搞出一个分布,可能不是很直观,而且计算起来也麻烦(如果使用数值计算的方法,一定要注意精度损失,如果红球的概率只有0.01,那你至少要有一种情况小于0.01,0除外)。所谓特征退化就是抹去个性,我们虽然问:这个黑盒子里面的红球概率是多少?我们退一步问:盒子里面红球的概率是多少?我们可以去统计世界上所有的盒子,也可以只统计和这个盒子很像的盒子,总之我们有了很多(N个)已知的盒子,而且这些盒子是可以打开的。我们简单的认为黑盒子的里面的概率情况有1/N的概率和每一个盒子相同,这是我们算出来是一个平均概率。那么这个黑盒子的特征是什么呢?就是取一个球的时候取出了一个红的。再一次根据贝爷的理论重新分布一下这个黑盒子是每个盒子的概率。最后给出取出红球的期望。

举个栗子:

前面有人问30个样本下,怎么算概率?这里就举这个例子,但是先讲废话一句:不管你怎么牛,玩再多花样,本质是不确定的事情他就是不确定的,我们能改变的是冒较少的风险。我以自然语言处理为例,统计“退化”一词后面出现“方法”的概率。其中“退化”出现了30次,“方法”出现了2次。首先我们把特征(限制)“退化”一词退化掉,变为一个词后面出现“方法”的概率,这个时候所有的词(我们可以选取出现超过300次的词)后面出现”方法“的概率都统计出来。相同的办法先假设“退化”有相同的概率是每一个词,然后优化”退化”是每一个词的可能性。最后给出一个所有可能性的平均值。

实践:

之前我做的贝叶斯文本分类里面就是使用这种方法来做的(这个分类中一共有9个类,每类2000篇博文,投票过程中只有出现次数为1的词被去掉不发表意见,因为它们太多,内存装不下),熵的方法和退化特征的方法都做了,对于预测集效果都在85.5%左右,但是熵的要稍微好一点;对于训练集貌似有98%以上了。贝叶斯是一个统计模型,我也不能武断的说过拟合(毕竟贝叶斯没拟合任何东西),或许仅仅就是训练集与测试集两个样本集有一定差异,知识不完全适用。

(貌似不上公式,更容易说清楚!)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: