Comments | 1
Quote King : 整理过的MI互信息量实验程序
[ 2007-04-18 09:31:50 ]
c#
朋友,你这是什么语言编的呢?谢谢
[redface] 谢谢指正,确实是打错
在IsUrl函数中的 if ((Result1 == false) && (Result1 == false)) 不对吧,其用一个应该是Result12
[sweat] 之前因为对C#类库不熟悉以为没的BIT容器,结果发现原来2.0的范性命名空间里有个BitArray 完全可以象C++ STL库里的BIT容器一样用了 直接把之前代码稍微改下 INT数组改成BitArray 就只用1M内存OK了 又免的自己写位运算 哈哈
Quote King : 信息论中的MI(互信息公式)
[ 2007-01-08 10:19:29 ]
这个公式主要用于对词与词间关系的考察,可以把集合C内所有文档看成C1,C2,C3......如(C1(X)!=0) && (C1(Y)!=0)成立则结果C1(X,Y)=1,如结果不成立则反之C1(X,Y)=0,就最后C1(X,Y)+C2(X,Y)+C3(X,Y)+.....=C(X,Y)
P(X)的公式至今有点疑问,没专业书籍参考,只好找简化公式了目前简化公式:
1.假设一个文章集合 {C},总文章数目为N,其中含有单词X的文章总数为Nx,含有单词Y的文章总数是Ny,含有{X+Y}的文章总数是 Nxy,那么相关性这么计算
Corr(X,Y)= Math.log10(N/Nx)*Math.log10(N/Ny)*Nxy/(Nx+Ny-Nxy)
来自大鱼的BLOG:http://www.cnblogs.com/polugen/archive/2006/11/29/576213.html
2.MI=log(f(x,y)/N)-log((f(x)/N)*(f(y)/N))
其中:f(x,y)--在当前查找范围内共现的次数
f(x)----关键词在整个语料库中的出现次数
f(y)----上下文中的该词在整个语料库中的出现次数
N-------语料库大小
[Last Modified By King, at 2007-01-08 14:55:03]
没有象GOOGLE那么庞大的数据库之前,IDF的计算几乎是不可能的,不过SOGOU的搜索实验室提供了一份词库,该词库对SOGOU索引中词汇出现的词频进行了统计,我们可以以最大的词频数作为D的数值,从而任意一个词的逆词频 IDF=log(SOGOU词库中词汇中最大词频数/任意词的词频) 郁闷的是SOGOU的词库,似乎有格式问题,我导入EXECL表格都会出现问题,至今还没发现修复,只有人工谁好心修复了才好直接在程序中使用
Comments | 1