向量空间分类
介绍部分:
普通的文本分类的方法例如朴素贝叶斯分类的方法,文档的表达方式只是简单的二进制向量(binary vector)的方法,普通点说法就是在文档表达时只是表达这个术语(term)在文档中有和无,如果文档中包含的话就是有记为1,文档中没有的话就记为无。举个例子来说明一下,例如有两个一句话文档:
Document 1: China is beautiful.
Document2: USA is a good country.
对于上面的两个文档来说,我可以建档的通过一个表格来表示上面的意思(在表格中的数据就是表示term的有和无,在这里我们讲去掉停词表中的is 和 a)
| 文档 | China | USA | Beautiful | Good | Country |
| Document1 | 1 | 0 | 1 | 0 | 0 |
| Document2 | 0 | 1 | 0 | 1 | 1 |
所以对于document1来说他的向量表示为(1,0,1,0,0),对于Document2来说其向量表示为(0,1,0,1,1),但是在信息检索中的计算得分的部分,我们可以知道术语在文档中是有权重的,而在朴素贝叶斯分类中并没有添加权重部分。向量空间分类就是将要权重加到向量中,也就是有真实值的向量了(有权值了)。
向量空间分类(Vector space classification) 是基于一个假设条件进行了,这个假设是:邻近假设(Contiguity hypothesis)
Contiguity hypothesis: Document in the same class from a continuous region and the regions of different classes do not overlap.
邻近假设的主要意思就是在不同的类型的文档时没有重叠的,且同一类型文档的连续区域中也是没有重叠的。
在向量空间分类中主要分为两种,一种是Rocchio分类,另外一种是k邻近分类(K Nearest Neighbor)。
向量空间的表达其实以前就接触过,向量的表达方式主要是采用词条的权重来描述文档的,在分类方法中,我们常常会使用在平面上以点的形式来描述文档的向量,但是我们知道,真实的文档向量是一个以向量长度作为归一化的、只想球形表面的单位向量。
Rocchio分类:
主要思想就是找出此文档与每个类型中心点距离,然后再从这里找出与当前文档向量距离最近的类型,这个类型就是这个文档所属的类型。

在上图中,那些类型之间的边缘我们称为类型决策边缘(decision boundaries),决策边缘就是那些距离那些。
TrainingRocchio(C,D)
- For 对于每个类型cj:
- begin
- 计算出每个类型中所有文档的向量的中心点左边
- end
- 返回所有类型的文档重重点坐标O
AppliyRocchio (d,O)
找出与那些类型文档中心点最近的那个分类
KNN分类:
1NN分类的决策边缘
对于上图中决策边缘是由一些泰森多边形组成的,那图中的那些细线和粗线是怎么得来的呢。这个主要还是依赖于前面说的决策边缘,这个里面的每个点之间都有一个决策边缘,然后粗线部分就是两种不同类型决策边缘。
对于KNN算法来说,K是一个可以变动值,当k=1时,我们就称它为1NN意思就是说从文本数据中找出一个与此文档(需要分类的文档)最相近的一个文档,那么这个类型就是这个文档的类型。那么对于k个文档来说,KNN算法就是从训练数据中找出与当前文档最相近的K个文档,然后再分别计算在这K个文档中,每种类型文档占有的比例,然后找出占有比例最高的那个类型那么此文档就是属于这个类型的。
Train-KNN(C,D)
- 将文档进行预处理为D’
- 从文档集中得出参数k
- 返回处理后的文档集和参数K
Apply-KNN(C,D’,k,d)
- 从文档集中计算出与d最相近的k个文档的集合Sk
- For 对于每个文档cj begin:
- 计算每种类型的概率
- End
- 返回概率最大的那个类型
总结:
上面介绍的分类方法关于相似度算法都是用欧几里得空间的算法来实现,在实际的处理过程中还可以用其他的相似度算法来实现:余弦值和Pearson等算法。我们知道文档向量的表达中,我们很少会直接使用Term来直接进行处理,对于文本数据来说主要采用词汇来表达,还出清理掉一些停用此表中的词语。在实际的处理过来中,特别是针对网页要对文档进行去掉标签等处理,在中文文档方面还是会使用中文分词技术等等。文本分类是一件很有意义的事情,特别是在信息检索和给予内容的推荐领域(可以通过文档分类获取用户的喜好特征数据)。
注明:
上面的算法和图都来自于:Introduction to Information Retrieval. C.D. Manning, P. Raghavan, H. Schütze. Cambridge UP, 2008. Classical and web information retrieval systems: algorithms, mathematical foundations and practical issues.






