vsm向量空间模型实现

本文介绍了在检索中如何使用VSM(Vector Space Model)进行相似度计算,重点讲述了从文档预处理到向量化表示的过程,并提供了Python实现的代码示例。通过VSM,文档被转化为向量形式,以便进行相似度比较。
摘要由CSDN通过智能技术生成
  1. 简介
  2. 代码实现
  3. 总结

一.简介
在检索当中,主要涉及了两个核心问题:
I.相似度计算
II.索引的建立
索引建立参考链接:

http://blog.csdn.net/malefactor/article/details/7256305

这里我们重点讲解第一个问题
1.1整体流程如图:
这里写图片描述
1.2在整个流程当中,第二步骤和第三步骤对于效果影响很多,故此很关键
相似度的vsm经典模型流程如图:
这里写图片描述
经过第三步骤处理后,文档在词典当中均有唯一的表示-表示为一个长向量的形式
第四步骤参考链接:

http://blog.csdn.net/u010598982/article/details/50876831

二.代码实现

# !usr/bin/python
# copyright(c) youfuwen
# Date:2016.03.26
# E-Mail:yfwen@bjtu.edu.cn
# first: cipintongji
import math
import ast
from collections import Counter
wordsCount=0#variable for wordsfrequency
def CountKeyByWen(fileName1):
    global wordsCount
    f1=open(fileName1,'r')
    f2=open(fileName2,'r')
    table={}
    for lines in f1:
        for line in lines.split(' '):
            if line!=' ' and table.has_key(line):
                table[line]+=1
                wordsCount+=1
            elif line!=' ':
                wordsCount+=1
                table[line]=1
    dic = sorted(table.iteritems(),key= lambda asd:asd[1], reverse=True
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值