搜索基本概念
2015-06-15 09:41
225 查看
文本相关性,是搜索技术相关的最基本的概念,是单从文本的字面上来计算一个搜索的关键词与一篇文章的相关性。是搜索排序的一项重要因素,有多种计算文本相关性的方法,如余弦值计算,TF/IDF计算等等,下面介绍一下TF/IDF。
一,TF/IDF
TF/IDF(Term Frenquency/Inverse Term Frenquency),称之为词步与逆向词频。
TF:词频,广义的词频记录的是一个词在一篇文章中的出现次数。
IDF:逆向词频,一个词在在所有文章中的出现次数除以在当前文章中的次数,然后取对数。
二,TF/IDF在垂直搜索中的应用
垂直搜索的数据源一般来源来公司内部的数据仓库或数据库,如mysql,sqlserver或其它nosql。
在实际的应用过程中,TF很容易统计出来,对一件商品而言,可能有多个属性,比如有名称和描述信息两个字段的数据要建立倒排索引,建立倒排索引的过程就可以统计出每个词在一件商品中各个属性字段的出现次数。
所有商品中出现的总词数也可以通过创建索引结束后统计出来。
实际运用过程中还可能会根据一个词在不同的字段中而设置不同的权重,来进一步来控制文本相关性
三,计算方法
假设一件商品有两字段(名称,name,20),(描述,desc,5),它们对应的权重分别是5与20
在名称字段手机出现2次,在描述字段手机出现4次,手机在所有商品的所有字段中的出现总次数是10000次,那么可得出
手机在这部商品中的TF=name两次+desc中4次.
IDF=log(10000/6)
那个有用户搜索手机的时候手机这个词的与该件商品的文本相关性即为
textWeight=((2*20+4*4))*log(10000/6)
一,TF/IDF
TF/IDF(Term Frenquency/Inverse Term Frenquency),称之为词步与逆向词频。
TF:词频,广义的词频记录的是一个词在一篇文章中的出现次数。
IDF:逆向词频,一个词在在所有文章中的出现次数除以在当前文章中的次数,然后取对数。
二,TF/IDF在垂直搜索中的应用
垂直搜索的数据源一般来源来公司内部的数据仓库或数据库,如mysql,sqlserver或其它nosql。
在实际的应用过程中,TF很容易统计出来,对一件商品而言,可能有多个属性,比如有名称和描述信息两个字段的数据要建立倒排索引,建立倒排索引的过程就可以统计出每个词在一件商品中各个属性字段的出现次数。
所有商品中出现的总词数也可以通过创建索引结束后统计出来。
实际运用过程中还可能会根据一个词在不同的字段中而设置不同的权重,来进一步来控制文本相关性
三,计算方法
假设一件商品有两字段(名称,name,20),(描述,desc,5),它们对应的权重分别是5与20
在名称字段手机出现2次,在描述字段手机出现4次,手机在所有商品的所有字段中的出现总次数是10000次,那么可得出
手机在这部商品中的TF=name两次+desc中4次.
IDF=log(10000/6)
那个有用户搜索手机的时候手机这个词的与该件商品的文本相关性即为
textWeight=((2*20+4*4))*log(10000/6)
相关文章推荐
- 遇到的有关myeclipse异常问题(导入jquery项目显示红叉,加载非本机项目报错)
- 操作系统执行可执行程序时,内存是如何分配的?
- 最大公约数GCD
- 解决xftp远程连接后出现中文乱码
- EclipseLink/Features/JPA
- Perl学习笔记之文件操作
- NP问题和NP完全问题
- Java 多线程编程
- MFC combbox级联使用
- Android学习 7 -> 线型布局LinearLayout
- 9-3修复画笔/修补/污点修复画笔/颜色替换/红眼移除工具
- 浅析 Linux 初始化 init 系统,第 1 部分: sysvinit
- Android_Button背景色的变化
- eclipse操作快捷键
- fgetc与EOF的错综复杂关系
- 添加视图控制器间的关系
- Linux开发基于Qt的Android应用指定调试设备
- Linux curl命令详解
- Eleven Things Smart People Won’t Say
- 这个知识点不错,,学习一下先。。。无状态服务(stateless service)(转)