个性化搜索引擎调研(三)

2019-03-27 01:06|来源: 网路

七、如何表达用户兴趣与结果的关系?

1、如何有效地处理垃圾信息?(对我们来说,暂无意义)

采用可定制的白名单的方式,过滤掉与用户无关的、使用户反感的文档或网站。

2、如何处理个性化信息(如何建立文档和用户兴趣关系的表达)?

目的是,建立文档和用户兴趣之间的关系,实现用户兴趣的建立、更新。

A、矢量空间模型

通常文档的表达是矢量空间模型,这个很容易理解,将文本文档看成由一组词条,对于每一词条,根据其在文档中的重要程度赋予一定的权重,所有的文档都表示用词条特征矢量来表示,也就保证了文档和用户兴趣之间相似性计算。

不足之处:

1、预先定义好主题词表。

2、进行精确匹配不能保证两个矢量之间存在很多相交的词。

B、概率统计模型

建立一个领域分类模型,然后计算所有文档和用户兴趣在这个分类模型上的概率分布,用该概率分布来表达文档和用户兴趣。用户在领域分类上更容易产生相似性。概率模型比矢量空间模型能更好地表达了用户的兴趣和变化。

(这是我们可能采用的方式,具体建模及计算概率公式,省略)

C、改进的地方:

概率统计模型实际上是建立另一个搜索引擎,对搜索结果中的每一篇文档都必须计算其在领域分类模型上的概率分布,这会极大地影响算法的性能,如果该搜索引擎能够预先计算好每一篇文档在领域分类模型上的概率分布,则算法的性能会得到很大的提高,从而满足实时处理的需要。

 

八、回顾整个个性化搜索引擎的实现流程

整个个性化模块实现步骤:

1) 对用户兴趣进行收集。

2) 用户描述信息确定、分类。

3) 资源信息特征选取、分类。

4) 建立用户和兴趣的关联,兴趣和资源的关联。

5) 利用资源和用户兴趣的关系,计算出搜索结果中的每个文档和用户兴趣的相似度,并对相似度进行排序。

6) 用户对搜索结果进行评分(或记录用户行为),更新该类用户的兴趣规则。

 

九、预想的能够实际实施的个性化搜索方案

只言片语,最终结果需要大家探讨。

几个实施的接入点(划分模块):

1) 用户信息、行为收集、维护。

2) 用户兴趣领域模型的建立。

3) 资源的特征捕获。

4) 相似度算法植入现有搜索引擎。

搜索后端:

立足在目前Solr引擎,通过改进建立索引时的预测计算、预留字段,对用户行为改变进行记录,周期性对某些用户关注度高的关键词,索引进行预留字段的更新。

搜索前端:

用户行为分析、隐私保护

十、结语

说到底,个性化搜索引擎技术难点主要在数据挖掘和语义分析,而优秀和卓越的差距不外乎于这两点关键。

对于目前属于争取做到优秀的我们而言,用户需求和产品设计本身也是较为重要的内外在因素。

参考文献:

1、曾春:《基于内容过滤的个性化搜索算法》,清华大学,2003

2、林洁:《基于用户的个性化综合倒排索引》,贵州电子科技信息技术学院,2008

3、魏小梅:《个性化搜索引擎技术探讨》,华中理学院,2006

4、王秀坤:《垂直搜索引擎及其个性化推荐研究 》,大连理工大学,2009


转自:http://www.cnblogs.com/lvpei/archive/2010/08/03/1790964

相关问答

更多
  • if ($http_user_agent ~* (baiduspider|googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)){ return 503; } //大概意思就是http_user_agent中,含有列出的字符就返回503。例子中是常见的搜索引擎,如百度谷歌等,看你具体情况增删,用 | 分隔。
  • “西林街”、“盘搜一下”这两个网盘搜索速度快,资源丰富,我所钟爱用的。
  • 全文搜索 MATCH() 函数 全文索引在 MySQL 中是一个 FULLTEXT 类型索引。FULLTEXT 索引用于 MyISAM 表,可以在 CREATE TABLE 时或之后使用 ALTER TABLE 或 CREATE INDEX 在 CHAR、VARCHAR 或 TEXT 列上创建。对于大的数据库,将数据装载到一个没有 FULLTEXT 索引的表中,然后再使用 ALTER TABLE (或 CREATE INDEX) 创建索引,这将是非常快的。将数据装载到一个已经有 FULLTEXT 索引的表中 ...
  • 首先要弄清楚是自己的站内检索,还是对网络的检索?如果仅仅检索自己本站里面的东西很简单,在apache上把lucene下载下来,里面有个很好的例子,再去找找相关资料就行了,如果想对中文分词做好点,去看看庖丁分词法.
  • 1、首先,到域名查询中心,比如万网、新网或者能查询域名所有者的地方去查询域名的注册信息,是否以前被注册过(就是我们常用的Whois查询)。如果域名曾经被注册过,我们就需要关心一下这个域名是否有过不良记录。 2、通过在Google中(site:域名),看下是否有记录,然后查看下反向链接,利用(link:域名)或者(domain:域名)可以到一些提供查询反向连接的网站去查询或者自己到搜索引擎利用命令查询。如果存在反向连接,而没有该站点被搜索引擎收录,那么这个域名很有可能被K过了,也就是存在不良记录。 3、直接输 ...
  • 在浩如烟海的Internet上,特别是其上的Web(World Wide Web万维网)上,不会搜索,就不会上网。网虫朋友们,你了解搜索引擎吗?它们是怎么工作的?你都使用哪些搜索引擎?今天我就和大家聊聊搜索引擎的话题。 一、搜索引擎的分类 获得网站网页资料,能够建立数据库并提供查询的系统,我们都可以把它叫做搜索引擎。按照工作原理的不同,可以把它们分为两个基本类别:全文搜索引擎(FullText Search Engine)和分类目录Directory)。 全文搜索引擎的数据库是依靠一个叫“网络机器人(Spi ...
  • 这方面的书还是比较多的,我所看过的有《搜索引擎技术》、《个性化搜索引擎原理与技术》、《搜索引擎原理、实践与应用》。此外还有很多基于开源软件如Lucene、nutch的开发搜索引擎的书籍,其中也介绍了不少关于原理方面的东西,而且更加面向应用。
  • 全文搜索 MATCH() 函数 全文索引在 MySQL 中是一个 FULLTEXT 类型索引。FULLTEXT 索引用于 MyISAM 表,可以在 CREATE TABLE 时或之后使用 ALTER TABLE 或 CREATE INDEX 在 CHAR、VARCHAR 或 TEXT 列上创建。对于大的数据库,将数据装载到一个没有 FULLTEXT 索引的表中,然后再使用 ALTER TABLE (或 CREATE INDEX) 创建索引,这将是非常快的。将数据装载到一个已经有 FULLTEXT 索引的表中 ...
  • lucene的效率没有问题,你可以100W条记录的索引放在一台机器上,用nutch分开检索的算法,或者用hadoop存储索引,自己写一个indexsearcher,但是需要注意各个机器上的结果是本地最优不是全局最优的结果,如果想全局最优的结果还得采用全局频率计数(Nutch现在有没有我不清楚),或者放开各个机器返回结果的数量,从算法理论的角度上最大可能的获得最优解。100W记录的响应我测试过,应该可以满足要求。等你遇到什么问题,可以再联系,lucene后面的基准测试你也可以看看。 老吴
  • http://baike.baidu.com/view/371811.htm lucene是一款开源的搜索引擎工具,你可以用这个!