个性化推荐系统的采集模块

摘 要 :在基于社会计算的个性化推荐系统设计中,采集模块的设计是数据的源头,也是系统数据分析的基础,关系到系统的质量.因此,采集模块作为个性化推荐系统的一个部分,有着举足轻重的作用,该文对该模块进行了详细的研究,为后面模块的设计提供了理论基础,也为相关系统的开发设计提供一定的借鉴经验.

关 键 词 :采集;模块;系统

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)10-2446-04

Abstract: On the base of social puting personalized remendation system design, design of the acquisition module is a data source, but also the basis for system data analysis, related to the quality of the system. Therefore, a collection module as a personalized remendation system, play a decisive role, this paper makes a detailed study of the module, which provides a theoretical foundation for designing the back modules, and also provides some useful experience in development and design for the system.

Key words: acquisition; module; system

基于社会计算的个性化推荐系统的采集模块,关系到系统的质量,为系统的性能指标提供可靠的保证.采集模块实现了对网页文档信息的自动采集“爬虫”功能,能够基于用户的信息关 键 词 来搜索.

采集模块由网页文档信息采集模块、lucene索引建立模块和搜索推荐主干模块构成,分别从模块的描述、功能、输入项、输出项、流程逻辑和接口详细介绍了其实现的原理.

1.网页文档信息采集模块

1)模块描述

本模块的重点之一是网络爬虫的编制.网络爬虫需要实现自动地抓取网页文档,提取网页地址,并且循环进行.尽管网络资源在同一个域之内,但为了提高爬取效率,还需要实现多线程才能保证更新的效率.另外,对于抓取到的文本存储路径相对于网页的,必须进行转换,才能更快速地在本地数据库中搜寻到该网页.而对于 IP地址则要做一个判断,以实现在规定范围的搜索.

2)模块功能

主要功能由start函数实现,其原型为:Start(UribaseURI ,intthreads) ,UribaseURI参数是表示需要下载的链接,后面的函数表示线程数量.路径的转换则需要通过转换字符实现.基本功能如表1网页文档信息采集功能表所示:

3)模块输入项

模块输入主要是对爬虫参数的设置,爬虫参数的设置要求如表2爬虫参数设置说明表所示:

4)模块输出项

本系统主要进行新浪博客的网页文档抓取,数据采集结果主要包括该博客网页文档以及该博客的地址,博客的题目、内容、作者以及采集的时间等.

5)模块逻辑流程

本模块的逻辑流程:首先分析源地址,然后获得地址列表,接下来反复循环每个地址,并调用相关方法来获取内容,通过计算,并得到文章相关信息,最后将获得的信息保存在数据库中.

6)模块接口

数据的采集是从新浪服务端将博客网页文档数据存储到本地数据库的过程,模块的接口如图1所示.

2.lucene索引建立模块

1)模块描述

索引建立模块独立于运行平台,实现了文档的解析和索引的创建,在本系统中解析的文档类型主要是文档.

以 IndexWriter 建立索引 IndexWriter 的构造函数有三种接口,针对目录 Directory 文件 File文件路径 String 三种情况在索引结束时使用 Lucene 的 wirter. optimize( ) 方法优化索引.

2)模块功能

实现模块功能之前需要利用IKAnalyzer中文分词器对文档内容进行分词.分词器IKAnalyzer可以进行文档的筛选,获取目标文档,无用部分则剔除掉.其常用接口有 ,apache, Lucene, analysis,Analyzer 虚构类.

在该模块中主要利用格式转换类的方法,对格式文件采用与其相对应的解析方式来实现格式的转换,HTML文档利用 POI 解析.下一步则是将实现了转换的文件作为分词器的输入,对其进行处理,最后编写框架为所有文档实现索引的创建,通过为字节流创建索引来实现为所有文档建立索引的目标,如表3索引建立模块功能表所示.

3)模块输入项

a)采用IKAnalyzer分析器进行目标文档筛选;

b)利用POI对HTML文档进行解析;

a)后台管理页面数据输入手动操作,下达“索引创建”命令;

d)执行框架语句,通过为字节流创建索引来实现为所有文档建立索引.

4)模块输出项

此模块的操作是通过登入系统后台管理,在建立索引页面下达命令,进行索引的创建,自动生成,如图2 索引创建界面图所示.

5)模块逻辑流程

本模块的逻辑流程是:首先从本地数据库中获取数据,得到待筛选文档,通过判断该文档信息是否为目标文档.如果不是的话,就剔除,重新原有的操作,如果是目标文档,则将目标文档进行格式转换,从而来建立索引. 6)模块接口

从模块逻辑流程可以知道,本模块的接口也是由本地数据库,通过后台管理程序来自动完成索引的建议,其模块的接口如图3所示.

3.搜索推荐主干模块

1)模块描述

模块中包含服务器 Action 类, Action 类有对应的 Service 类和 Lucene 搜索类.连接应用服务器,下达命令之后可以从索引文件中搜寻出目标文档,其整体框架如图4搜索推荐主干模块整体框架图所示.

服务器接收命令,传递给对应的 Action 类, 然后Action 类调用对应的 Service 类,再利用 Lucene 搜索类从找到目标文档,最后在JSP 页面显示搜索结果.此过程中采用 Action 类解析方法,把字节流以JSP 页面高亮显示出来,检索目标文档则是利用 Lucene 的检索接口 Query 与QueryParser 实现.采用QueryParser.parse 完成对搜索结果的排序,通过.apache.Lucene.search.Sort 实现

2)模块功能

服务器可以利用搜索模块传递文档 URL,进而搜寻到文档的位置,并采用文件系统将文档解析到一个动态页面,即一个可以显示不同文档内容的页面.最后是将搜索结果,即找到的目标文档 URL 集合倒排展示,并且对输入的关 键 词 ,以及关 键 词 出现次数等,以高亮显示出来,如表4搜索推荐主干功能表所示.

3)模块输入项

a)前台页面数据输入:名称:搜索关 键 词 ;标识:keyword;数据类型:varchar;数据来源:用户键盘输入.

b)模块类调用命令:

服务器识别用户提交的关 键 词 ,传递给对应的 Action 类,Action 类再调用对应的的 Service 类,然后交给 Lucene 的搜索类处理.

4)模块输出项

Jsp界面将搜索结果推荐出来,以高亮显示博客作者,搜索关 键 词 以及关 键 词 出现次数等,如图5搜索结果推荐页面图所示:

5) 模块流程逻辑

本模块的逻辑流程是:首先从接收搜索命令获得搜索的目标,传递给Action类,从而找出其对应的Service类,再通过Lucene搜索类来实现目标文档的推荐,最后以设置好的高量度形式显示出来.

6) 模块接口

本模块主要是把数据存储层的数据,通过业务逻辑层的业务处理,来实现表示层的表示,从而实现目标文档的搜索推荐功能,其接口如图6 搜索推荐主干模块接口图所示.

4.模块管理

为了更好的实现资源的统一管理,将其设计在后台统一界面进行管理,其管理页面结构如图7统一管理结构图所示.


类似论文

电子商务个性化智能推荐系统

【摘 要】随着互联网应用的普及,电子商务的迅速发展,消费者在海量商品信息面前无所适从,个性化智能推荐系统可以帮助消费者在。
更新日期:2024-1-17 浏览量:20387 点赞量:5802

个性化技术与推荐系统

UchyigitGuldedetalPersonalizationTechniquesandRemenderSystems2008;HardbackISBN9789812797018G 乌克伊吉特等编因特网的迅速成长。
更新日期:2024-5-23 浏览量:69214 点赞量:15396

个性化推荐系统

摘 要:信息技术和互联网的迅猛发展把我们带进了信息过载的时代 海量信息的同时呈现,一方面增大了用户发现೽。
更新日期:2024-10-8 浏览量:16943 点赞量:4410

购物网站个性化推荐系统应用

摘 要:个性化推荐系统具有良好的发展和应用前景,几乎所有的大型电子商务购物网站都不同程度。
更新日期:2024-9-26 浏览量:119963 点赞量:26060