搜索引擎:数字信息搜索,理论著作

一部指导搜索引擎理论的书

引言,打算业余的时间将这本书的骨架写出来,至于其中的血肉,有空了再补充上。这里基本上最主要的内容是数学+信息学,基本上是我这几年的工作。

因此基本上以理论知识为主,当然也会有一些实用的例子,如果您问“如何提高网站的排名?”或者“如何提高被搜索到的次数?”,抱歉,这些问题不在我的回答范围内,我这里要写的是关于搜索的理论,已经被搜索引擎用到的和没有用的到,已经公开的或者未公开的知识。

第一章 数字信息概述

讲述数字信息的历史,特征。。。(略)

第二章 信息的相关性

信息的相关性在没有良好的方法来进行计算其相关性的时候,可以采用信息空间差值法:

为了简单期间,我们架设A元素得到了A_n个结果,搜索B得到了B_n个结果,联合A + B 得到了AB_n 个结果,那么A 与 B 的相关性可以这么定义:

Correlation = (AB_n)/(A_n + B_n - AB_n)

第三章:信息的表达

本章讲述两个问题:信息的夹角和信息的表达

1] 信息的夹角

Theta(I_A, I_B) = sqrt(arccos( Relation(I_A, I_B)))

信息在上述表达式里是矢量,信息之间的夹角表现为信息之间的点乘。而点乘的结果表现为信息之间的关系(见上一章里面信息的相关性)的开方,由此定义信息之间的夹角应是从0度到90度之间的数值:

0度,表明信息平行,或者乘平行的信息,说明信息之间完全相关。
90度,表明信息正交,正交的信息,说明信息之间没有相关性。

由此推算unix 和 Linux 之间的夹角为:73度。

2] 信息的表达:

信息失的概念:
对于任何信息失,对其取模可以得到信息失的长度,M_A=||I_A|| ,那么单位信息失表达为:
i_A = I_A/M_A = I_A/||I_A||

适当的选取信息失,从而可以选择单位信息失,那么任何的信息矢量可以通过单位信息失的组合得到。

我们首先来假设建立如下的一组信息失:

i_1, i_2, i_3,... i_n. 即整个信息空间有n 维,并由信息失(i_1,..,i_n)来构造,那么任何这个信息空间的信息失A可以写成如下的格式:

A = a_1 * i_1 + a_2 * i_2 +..+ i_n*a_n

其中 a_j = A点乘i_j , j从1到n。

第四章:信息的形状

本章主要介绍信息空间和信息的形状

keywords: 信息空间 Information space, 信息的形状 information shape

1] 什么是信息空间

信息空间是由一组信息失 (information base vector) 构成的一个能够将需要表达的信息完全含概其中的一个多维向量空间。

正如上一章所阐述的概念,任何一个信息矢量可以通过信息基失的组合得到,也就是说信息在信息空间里具有线性的表达方式。

2] 什么是信息的形状

the shape of information 是对一个信息在信息空间里的一个总体概括。信息的形状与信息所表达的内容息息相关,我在这里对信息的形状进行如下的分类:
以信息A 为例
A = a_1 * i_1 + a_2 * i_2 +..+ i_n*a_n
其中 a_j = A点乘i_j , j从1到n。

(1) 直线型信息
这类信息表示这个信息基本上投影在一个信息基失上,表象为整个信息同一个信息基失平行。
A = i*||A||

(2) 平面型信息
这类信息可以通过两个基失进行表达,因此是平面型的:
A = ||A||(Sin(theta) * i + Cos(Theta) * j )

(3) 锥型信息

这类信息投影在3个或者3个以上的基失空间

(4) 球形型信息
这类信息投影在所有的基失空间,且基本均匀分布。

现实中的信息都是有以上4类的组合而成,真正完全属于以上(1,2,4)类的信息并不多见,而属于锥形的信息就比较常见。

第五章:信息的分类

信息依照体特征进行分类,通常有两种分类方法:
1] 信息分类按照定义好的人为的划分进行分类,例如:教育,娱乐,商业等等。
2] 自动类聚依照信息在空间的夹角,并且对信息进行 Cluster 的寻找。

分类方法的;实例:

采用的方法比较常用的是”Sliding-Window“的做法,就是用一个大小合适的窗口在信息空间的球表面进行移动,当这个Window里包涵了较大的信息矢量个数的话,就说明这里是一个信息Cluster,或者叫做 info-jet.

这个window在这个位置一定是一个最大值,扫描到了信息cluster的中心,扩展可以得到整个cluster.

第六章:信息的聚类

对自动聚类又进行了测试,发现sliding window可以进行简化,实现简并算法,算是一个突破吧,因此重写这一章。

LL 2004/11/22

有了良好的分类机制,才能够对信息进行有效的聚类。
聚类采取自动的方法基本上基本上有三种:
1] 现有的依靠大量样本进行NNet训练后进行单次模糊模式识别的方法。
方法的特长是能够快速的准确的进行自动聚类,缺点是需要大量的样本进行预先的训练。
防止过度训练和如何处理误差等变得非常关键。
类似的机制还有 Knn,SVM和贝叶斯统计法,回头细致介绍。

2] 平移算法,或者也叫卷积(自相关)算法。
Corr= Intergal( f(x)*f(x-t) dt )

Clusty 的自动聚类就是采用的平移算法。
平移算法的特点是计算迅速,简单易用。
缺点是计算的次数和信息的数量的平方成正比:N^2/2

3] Sliding Window以及兼并算法
sliding window方法根据信息间的夹角,能非常有效的发现一簇信息,并且控制窗口的大小可以来订制聚类后信息的相识度。
Sliding window的优点是非常精确,可调节性强。
缺点是非常繁琐,所计算的次数和信息空间的维数的阶数成正比,例如1000维,大约要计算10^1000 次,天文数字。

简并算法:在对sliding window进行了分析后,可以采用一种简并算法来快速收敛。简并算法是先找到任何两个信息之间的最小夹角,然后进行简并,成为一个信息矢量,这样经过若干次的简并后就收缩到非常少的信息矢量上。而这些较少的信息矢量的夹角都比较大,是不同类别的信息矢量,即实现自动聚类。

举例说明:1000组的信息进行简并处理,六次就可以收缩到15个分类里面,而六次所需要的计算量大约为60万次,基本上不会有难处了。

转自: JAVA之路 Blog

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值