搜索引擎优化毕业论文(信息推荐系统的设计22第五章实验结果分析与比较比较)
优采云 发布时间: 2022-04-15 23:23搜索引擎优化毕业论文(信息推荐系统的设计22第五章实验结果分析与比较比较)
内容
摘要2
摘要3
第 1 章 引言 5
第二章 用户行为挖掘 6
2.1 网页的特征表示 6
2.2 文本表示 6
2.3 自动分词技术 7
2.4 专有名词的分词 8
2.5关键词 和 关键词 的标识 8
2.5.1噪声词去除算法9
2.5.2 固定关键词词库算法 9
2.6分词分类10
第三章 用户兴趣模型 11
3.1 特征权重 11
3.2 特征权重的时间校正:快启动,慢减算法12
3.3 页面聚类 13
3.4 用户兴趣概念知识库 13
3.5 生成推荐信息 14
3.5.1获取推荐信息14
3.5.2 搜索结果预处理 15
3.5.3搜索结果评分算法15
3.5.4 搜索结果的去重算法 18
3.5 勒夏特列的用户利益变化原则 19
3.6 分布式处理 19
第四章正文章节信息推荐系统分析与设计22
4.1 系统架构和数据设计 22
4.1.1分词与分类22
4.1.2分词权重计算23
4.1.3公共热点推荐24
4.1.4个性化推荐25
第5章实验结果分析与比较27
5.1 收敛测试 27
5.1.1 系统收敛精度测试 27
5.1.2分词词典无心词测试30
5.2 专有名词的分词算法31
5.3 兴趣识别算法测试 33
5.3.1噪声词去除算法33
5.3.2 固定关键词词库算法 34
结论 36
参考文献 37
谢谢 37
第一章 简介
自1991年CREN诞生以来,互联网以其丰富多彩的内容吸引了众多用户,其信息呈指数级增长,现已成为人们获取信息的重要途径。由于网络信息收录大量重复的、过时的、分散的、混乱的数据和信息,人们不得不花费大量时间搜索自己可能感兴趣的信息。搜索引擎是检索信息的最常用工具。传统的信息检索技术可以满足人们的一般需求,但对于不同用户关注的特定领域的信息却无能为力。
人们不再满足于借助传统的搜索引擎和其他门户网站网站来查找自己感兴趣的信息,而是希望自动获取自己需要的信息。即“人找信息”的模式转变为“信息找人”的信息提供模式。系统可以分析用户的行为,然后将用户需要的信息发送给他,并源源不断地提供信息。当用户离线时,系统会在网络上抓取他想知道的任何信息,并在用户在线时推送给他。根据用户独特的信息需求,从互联网上搜索相关信息并整合在一起,从而有针对性地满足不同用户的信息需求。
本项目采用人工智能常用的专家系统思维方式来分析识别用户兴趣。首先分析用户的浏览记录,项目只分析用户浏览记录的标题,因为用户是根据标题搜索自己感兴趣的内容。本项目将用户浏览记录的标题分词结果与用户兴趣概念的知识库进行匹配,找出可能是用户兴趣概念的分词。然后访问搜索引擎,从搜索引擎中获取用户兴趣概念的推荐信息。
全文分为三个部分。第一部分是用户行为的挖掘涉及两个部分:自动分词和分词分类。本项目采用前向最大分词算法。本文提出了一种改进的专有名词切分和噪声词消除算法。第二部分建立用户兴趣概念知识库。系统将用户浏览记录的分词结果与兴趣概念知识库进行比对,识别出用户的兴趣词。本章提出了一种VSM权重的时间校正算法,可以更好地适应用户兴趣随时间的变化。第三部分是测试和结论部分。本项目的测试主要集中在用户兴趣的识别和收敛以及推荐信息的准确性。同时,本章还讨论了算法中可能影响推荐结果收敛性的一些因素。
第二章用户行为挖掘
互联网数据挖掘分为三种类型的挖掘;一是数据内容挖掘,二是数据结构挖掘,三是用户行为挖掘。用户行为挖掘的第三个本质也与数据内容挖掘密切相关。但是,它不仅仅关注数据的内容,因此它成为独立的第三数据挖掘。网页的本质是网页中的文本内容,但它是以html标签为载体呈现给用户的。本项目对网页的文本内容进行分析,通过内容中的文本分类分析,记录用户的喜好。例如,如果用户浏览了一个名为“苹果新任 CEO 库克”的网页,本项目可以通过分析该标题得出用户对 IT 行业的苹果有一定兴趣的结论。当然,如果他总是阅读与“Apple”相关的内容,这个项目可以将“some”这个词替换为“very”——即用户对 IT 行业的 Apple 非常感兴趣。本项目可以概括为: 文本章节分析与处理的过程是根据已建立的领域知识库中的知识结构,分析某一领域的文本章节与主题之间的关系。然后根据本项目分类的信息,从网上检索信息,对检索到的信息进行打分处理,最后将得分高的信息推荐给用户。本项目可以概括为: 文本章节分析与处理的过程是根据已建立的领域知识库中的知识结构,分析某一领域的文本章节与主题之间的关系。然后根据本项目分类的信息,从网上检索信息,对检索到的信息进行打分处理,最后将得分高的信息推荐给用户。本项目可以概括为: 文本章节分析与处理的过程是根据已建立的领域知识库中的知识结构,分析某一领域的文本章节与主题之间的关系。然后根据本项目分类的信息,从网上检索信息,对检索到的信息进行打分处理,最后将得分高的信息推荐给用户。
2.1 网页的特征表示
网页的文本信息、文本格式、文档结构、页面布局和链接结构都是网页的表征特征。普通用户在阅读报纸时,大多会先阅读新闻的标题,然后再选择是否阅读新闻的具体内容。同样,当用户使用互联网时,他们会查看头条新闻,然后决定是否需要阅读具体内容。因此,本项目只需要关心网页的文本信息,这是网页的一种特征表示,而忽略其他方面。为了加快对用户行为分类的处理速度,本项目只需要分析网页的标题,而不考虑网页的全部内容。
2.2 文本表示
文本的内容和形式非常复杂。本项目需要选择一个语言特征,并以此为基础分析子文本[2]。
文本的内容特征
用什么作为特征来描述文本内容是文本表示的核心问题。英语常用词、词串(指文本中出现多个固定长度的词)、词组
文本作为特征。相关研究的实验结果表明,英语中基于词的特征表示最适合文本分类。由于中文的特殊性,该项目中经常使用的短语与英语中的单词相似。
关键词 的相互评估
该项目需要评估关键词 之间的相互关系。VectorSpaceModel(VSM)模型是描述分词关系的常用模型。在VSM模型中,文档被视为由特征二元组组成的特征向量,其表达式如下(2.1)[5].
(2.1)
其中,是特征的二元组,是文档中的权重;s 是特征集的大小。在VSM中,这个项目没有考虑特征在文本中的位置和语法信息的作用。
一个特征向量对应高维特征空间中的一个点,可以将(2.1)简化为(2.2)。此时,特征向量对应于权重向量。
(2.2)
在 VSM 中,文档被描述为向量,可以通过向量操作对文档进行各种操作,例如合并、删除和比较文档。文档与文档之间的相似度可以是向量之间的相似度。测量。
2.3 自动分词技术
用户在浏览一条新闻时,经常会看到该新闻的标题中收录一个或几个自己感兴趣的分词。为了准确表达用户的兴趣,本项目需要对文本进行切分和切句成几个准确的词。然后对分词进行分类。本项目介绍自动分词技术。
自动分词技术是指将输入计算机的句子自动切割成单词序列的过程。在某些情况下,切分结果还收录一些短语和词素。一般来说,构建好的自动分词算法的关键是选择好的分词算法,建立好的分词词典(分词词库)。
分词算法常用的方法如下[13]:
1、字典匹配法:最大匹配法、逐字遍历法、反向匹配法。
2、联想词组法:如联想回溯AB法、联想树分析法、无词库法等。
3、知识与规则法:如分词规则法、分词与语义修正法、规则描述分词法。
4、人工智能方法:如专家系统、神经网络。
中文分词的难点在于:
1、语法复杂度。汉语词组的组合非常灵活,很难确定汉字在词组中的位置。例如,“被子”不适合拆分成“被子”和“孩子”两个词;而“炊具”则适合拆分为“菜”和“刀”两个词。[4]
2、分割的模糊性。例如,句子“好好学习”可以分为三种理解方式:“好”、“爱学习”(四个声调)和“学习”。
这里,本项目采用最大匹配分词算法,也称为贪心算法。分词过程需要去除无意词和噪声词。例如:“姚明在瑞士公主的陪同下参观瑞士残疾学校”,最大匹配算法结果为:“姚明”、“访问”、“瑞士”、“残疾”、“学校”、“瑞士”、 “公主”、“陪伴”。
2.4 专有名词的分词
专有名词的切分应该是2.3小节内容的一部分,但是2.3小节描述的前向最大切分算法最大的问题是容易切分专有名词不正确。4.3.第3节的测试部分有一个多余的例子。测试中很常见将“F-22”的分词称为“F”、“-22”,这个分词的结果是因为这个词结构不符合常用的语言习惯,而且大多数专有名词的出现在科技领域,有一个特定的编号习惯。“F”是英文字母。在自然语言中,英文字母后面通常跟着英文字母。“-22”没有多大意义,所以根据人类的语言习惯,上述分词结果是合理的。然而,F-22实际上是一个专有名词,它的分词不能被常规的分词算法识别。该项目必须提供专有名词词库来解决专有名词分割问题[7]。
加入了带专有名词校正的分词算法的伪代码,如算法2-1。
算法 2-1
字符串;
对于(inti=0;i
{
if(str收录专有名词)
{
将专有名词部分作为一个整体添加到分词结果中;
继续常规分词;
}
}
这个算法可以解决专有名词的分词问题,但是这个算法不是很完善,也没有完美的结合语言环境进行分词。因此,本项目必须结合常规的分词算法来避免这个问题。
2.5关键词 和 关键词 的标识
上一节提到的分词算法2.4 可以将一个句子分成多个分词,对于本项目来说是不够的;用户在阅读一条新闻时可能只关注其中一个或几个关键词,本项目需要从分词结果中找出用户可能关注的重点。因此,本项目引入了关键词和关键词的识别问题。例如:
对于“姚明和瑞士公主参观瑞士残疾学校”这句话,前向最大匹配算法得到:“姚明”、“访问”、“瑞士”、“残疾”、“学校”、“瑞士”、“公主” “, “随同”。对于一个NBA球迷来说,他只关心这句话中的“姚明”两个字,这句话的关键词应该是“姚明”,换成了另一位作家“孔乙己君”,“孔乙己君问瑞士残障学校瑞士公主护送”体育迷不会有兴趣阅读的新闻。为了识别文章中的关键词,本文提出了两种算法来识别文本中的关键词,在4.第3节的测试部分,有两种算法用于识别这两种算法。算法经过测试和比较。
2.5.1噪声词去除算法
该算法是发散算法。系统只去掉那些明显没有语义区别的分词,其余的都被认为是有意义的词。然而,系统的噪声词库并不完善。因此,总会有一些干扰词被系统误认为是关键词。此时系统的推荐信息会出现错误。所以这是一个发散算法。该算法的伪代码实现如算法2-2所示。
算法 2-2
StringGetKeyWord(stringinstring)
{
if(噪声词库收录字符串)
{
返回字符串;
}
别的
{
返回空;
}
}
当然,与第二种算法相比,这种算法也有它的优势。该算法不会错误地缩小用户的实际兴趣,可以自动收录new关键词。
2.5.2 固定关键词词库算法
fixed关键词thesaurus 算法并不意味着 关键词thesaurus 是固定的,fixed关键词thesaurus 算法的意思是:只有存在于 关键词thesaurus 中的分词,才能存储为 关键词。该算法的伪代码如算法 2-3 所示。
算法 2-3
StringGetKeyWord(stringinstring)
{
if(关键词 收录词库中的字符串)
{
返回字符串;
}
别的
{
返回空;
}
}
与算法2-3相比,算法2-2的收敛效果会更好,但是算法2-3可能会漏掉一些用户感兴趣的关键词,需要手动维护关键词词库, 这个 关键词 词库的 关键词 数量在数量级上。
2.6分词分类
本项目采用三级分类法对分词进行分类。图 2-1 是一个分类示例。
图2-1 三层分类图
顶级体育类别下有“NBA”、“CBA”、“世界杯”三个子类别。为了保证系统的准确性,本项目采用手动顶层和子分类,并手动添加一个初始化的子节点分类训练样本,第三级分类为具体文本分割。这部分内容在聂荣进的论文中有详细描述。
第三章用户兴趣模型
个性化信息推荐研究的关键是建立准确的用户兴趣模型。根据VSM模型,用户兴趣是一个向量空间,可以用一个表达式(2.1)来描述。用户兴趣模型可以从线性代数的向量空间理论中抽象理解。兴趣总和是由单个不相交的用户兴趣向量作为基向量组成的向量空间,本章介绍了本项目中个性化信息的推荐研究,关键是建立一个准确的用户兴趣模型。传统的用户兴趣模型如图3-1所示。
图3-1 传统用户兴趣模型构建流程
图 3-1 所示的用户兴趣模型的构建过程并不能反映用户兴趣的变化。本文提出了一种基于计算机网络拥塞控制算法和路由算法的“用户-兴趣-时间”模型来反映用户的兴趣曲线。随着时间的推移而变化。并讨论了模型曲线尽可能收敛到用户实际兴趣曲线的几种算法。
计算用户兴趣强度值通常有以下三种方式:
1、用户填写
2、根据用户行为分析用户兴趣
3、根据用户对推荐信息的反馈进一步更新兴趣强度
系统中的第一种方式是用户设置自己感兴趣的领域。这种方式会增加用户的负担,不是一种用户友好的方式,所以不是本项目的主要研究方向。第二和第三个是本文主要关注的方向。第三种方法会有增强效果:同时会增强兴趣曲线的收敛速度,同时也会扩大收敛曲线的误差。本文下一部分将讨论第三种方式的增强效果。
3.1 个特征权重
特征确定后,需要计算该特征在向量中的权重,以描述该特征在文档中的重要性。常用的权重计算方法有布尔权重、权重和熵权重。
鉴于布尔权重不能准确描述向量之间权重的量化关系,本项目使用权重来描述向量中特征的权重。
基于两个观点:特征在文档中出现的次数越多,越重要;文本中出现的特征越多,它就越不重要。(G.Salton, et al., 1975)。一般有两种权重,一种反映第一种观点,一种反映第二种观点。
权重的计算方法如下(3.1):
(3.1)
其中, 是该特征在文档中出现的频率, 是该特征出现的文档数。
3.2 特征权重的时间校正:快启动,慢减算法
计算机网络是一个动态变化的网络。网络各部分的状态动态变化。及时检测网络拥塞状态的变化对提高网络利用率非常重要。利用,并具有较低的网络延迟,TCP协议采用“加法增加,乘法减少”算法的拥塞控制策略。[JamesF.Kurose, KeithW.Ross.177] 同样,人们的兴趣和爱好会随着时间而改变。为了更快的收敛到用户的兴趣,反映用户兴趣随时间的变化,我用“快启动,慢减”的算法来表达人的兴趣和时间的关系。“快启动,慢减速”算法的描述如下:
本项目介绍了以下一些概念的描述:
时间轴:在图3-2中,横坐标为本项目所表示的时间,其含义为:“用户登录两次相邻使用系统,与实际时间不符,第一次登录本月,下次登录时,间隔为1"。
权重增量:用户浏览某个词A,相应词A的权重增量增加。此项定义为0.125,词段最大权重为1. 也就是说,如果用户浏览同一个词段8次,该词段的权重会增加到最大值1,继续浏览,权重依然保持为1.,之所以定义权重增量为0.125,也就是最大权重可以增加到浏览八次后的最大权重是因为,如果设置为布尔权重,即0或1,本项目无法准确衡量一个人的兴趣爱好。但是,如果权重增量太小,某个词达到最大权重需要太多次,用户很难快速收敛到自己的短期爱好之一,也就是收敛太慢。比如,一个对IT不感兴趣的女人A,看到乔布斯去世的消息,突然对乔布斯的生平产生了浓厚的兴趣,然后她想在下周了解乔布斯的情况。肖,她需要浏览乔布斯相关网页一百次,系统才会发现她对乔布斯很感兴趣,然后主动向用户推送乔布斯相关内容,此时用户可能已经回归平静的生活。. 看到乔布斯去世的消息,顿时对乔布斯的生平产生了浓厚的兴趣,接下来的一周她就想了解乔布斯的情况。肖,她需要浏览乔布斯相关网页一百次,系统才会发现她对乔布斯很感兴趣,然后主动向用户推送乔布斯相关内容,此时用户可能已经回归平静的生活。. 看到乔布斯去世的消息,顿时对乔布斯的生平产生了浓厚的兴趣,接下来的一周她就想了解乔布斯的情况。肖,她需要浏览乔布斯相关网页一百次,系统才会发现她对乔布斯很感兴趣,然后主动向用户推送乔布斯相关内容,此时用户可能已经回归平静的生活。.
缓慢下降:世界上有什么是不可变的?不,只有变化是不可变的。人们的兴趣爱好也在不断变化。一个不太在意乔布斯,乔布斯去世几天后,她突然对这个传说产生了兴趣,然后浏览了很多乔布斯的介绍。此时,系统已将用户A对“Jobs”的分词权重设置为最大权重。半个月后,她不再关心乔布斯,相应地,她对“乔布斯”的加权分数也应该相应地逐渐降低。因此,本项目提出“慢归约”,即用户对每个词段的权重应该随着时间轴而减小。本项目将“慢减”的权重定义为0.05,
该算法需要较少的编程工作,本项目只需要在数据库服务器上创建一个定时作业。该作业的伪代码描述如算法3-1。
算法 3-1
而时间是0:0:0
updatet_PersonalWordsetkdegree=kdegree-1其中kdegree>1;
结束时
3.3 页聚类
本项目试图记录、描述和分析用户行为,最终由页面的内容来描述——即基于内容的页面聚类。页面聚类技术基于以下假设:同一类的文档更相似,不同类的文档不太相似。网页聚类根据网页的某种联系或相关性来组织网页。
3.4 用户兴趣概念知识库
人工智能专家系统经常使用人工收录领域特定的知识库和规则库来提供自动化的解决方案。为了提高用户兴趣分割的识别准确率,本项目采用构建用户兴趣概念知识库的方法对用户兴趣进行识别。用户兴趣概念知识库的本质是一个数据字典。它收录尽可能完整的用户兴趣的概念分割。
用户兴趣概念知识库的逻辑结构也满足图2-1描述的三级分词分类结构。所有的知识库知识都存储在图 2-1 的叶子节点上。本项目并没有使用这种三层森林存储结构,而是使用存储在数据库中的二维关系表来存储知识库。为了使用二维关系数据库存储图2-1的三层逻辑结构,用户兴趣概念知识库的内容应包括表3-1所示的内容。
表3-1 知识库存储内容
知识
父节点
层
3.5 生成推荐信息
用户使用搜索引擎通过关键词手动检索他们想知道的内容,而基于知识库的信息推荐系统使用构建的用户兴趣模型访问搜索引擎生成推荐信息。用户兴趣是以用户兴趣知识库的知识为基向量构成的向量空间。本项目使用用户兴趣向量空间的基向量作为生成推荐信息的基础,即表达式 (2.1) 中。此时项目无法确定本项目生成的推荐信息给不同的用户。
3.5.1获取推荐信息
本项目选取用户最感兴趣的关键词,通过访问搜索引擎检索关键词的信息,获得推荐信息。这种方法类似于元搜索引擎。本项目不需要像google那样维护互联网页面的数据库备份。其次,单一搜索引擎的搜索结果召回率并不理想。即使对于像谷歌这样的搜索引擎巨头,其数据库中收录的网页备份在互联网上的网页总数中所占的比例也很小。这个项目可以访问多个权威搜索引擎,并且可以获得更多用户感兴趣的关键词信息。它被称为元搜索引擎,因为这个项目不是即时搜索。本地服务器长时间访问搜索引擎,
图3-3 服务端搜索引擎交互
元搜索引擎的架构:
接口代理
这部分管理与各种搜索引擎的交互。某个搜索引擎对应的接口代理需要将用户的查询转换成搜索引擎可以识别的格式(以谷歌新闻搜索为例:)发送出去,负责解析接收到的搜索结果引擎,搜索结果传递给调度中心。
重新排序机制
这部分结合各种搜索引擎的搜索结果,对每次搜索得到的结果进行评分,并根据评分重新排序,形成统一的搜索结果列表。
结果存储
这部分将重新排序的搜索结果保存到数据库中,并在用户在线登录时将推荐结果推送给用户。
3.5.2搜索结果预处理
通过采集采集到的海量原创网页也必须经过预处理,形成良好的数据结构,才能成为用户提供查询服务的核心和关键。搜索结果的预处理主要包括以下几个方面:
(1)、关键词的提取是在带有大量HTML标签的网页文件中,按照一定的规则,提取出能够代表网页内容的关键词即提取后,一个关键词Integrated(3.2)表示。
(3.2)
使用这组词来表示 Web 内容。
(2),链接分析人们可以通过分析HTML文档中收录的指向其他文档的链接信息来判断网页与网页内容的关系。
(3),网页重要性的计算是指在预处理中对网页重要性的判断,与后面要讲的用户查询得到的网页的重要性不同。也就是说,它与用户查询无关,比如使用谷歌PageRank的核心技术就可以体现这种重要性。
3.5.3搜索结果评分算法
传统的元搜索引擎评分排名不涉及其他用户数据,只是孤立地对搜索结果进行排名。通常有两种重新排序的方法:
(1),使用标准评分机制重新评分后,再对搜索结果进行排序。
该方法会对元搜索引擎调用的其他爬虫搜索引擎单独设置评分。
积分换算比例,然后按照这个评分标准重新排序。但是,这种方法所依赖的各种评分标准不一定可靠。
(2),使用你自己的排序算法来合并搜索结果并重新完全排序。
这里的排序算法与传统搜索引擎中的排序算法相同。这种方法一般可以
获得更准确的排序结果。但是,这种方法需要下载并分析所有网页,所以
应该比较慢。
推荐结果的分数计算:
为了表达方便,本项目假设有用户“张三”,本项目搜索关键词为“Jobs”,二级分类为IT。本项目需要为张三评估某个页面的性能。pageA 的评分。本项目使用传统的概率统计方法来计算一个页面的得分。首先,本项目根据本项目检索到的关键词“Jobs”的二级分类“IT”,得到该类别下的所有分词,并记录这个分词的权重,然后计算外观此网页中的每个分段词。次数,所以可以通过公式(3.3).
(3.3)
并非所有推荐结果都符合推荐要求。为了过滤掉那些用户不感兴趣的搜索结果,本项目引入了一种搜索结果去噪算法。
对搜索引擎返回的结果进行评分后,项目需要对结果进行过滤,去除噪声数据。这个项目设定了一个更合理的门槛。当评分结果大于定义的阈值时,为正常数据,否则为噪声数据,需要剔除。
搜索结果去噪算法的伪代码如算法3-2所示。
算法3-2 搜索结果去噪
#defineVALUE5
如果(评级>5)
{
结果存储在数据库中;
}
别的
{
此时是噪声数据,被消除;
}
阈值是谨慎定义的。当阈值定义过大时,会严重影响系统收敛速度。尤其是对于用户短期利益的收敛。
当阈值设置过大时,虽然系统可以发现用户新的兴趣倾向,但是在用户兴趣的前期,这个兴趣会被认为是噪声,会被过滤掉,所以系统不会推荐这个兴趣——向用户提供相关信息。浏览; 这使得增加与该兴趣相关的 关键词 的权重变得困难。这样一来,就会出现推荐信息的权重会迅速增加的现象,难以增加新的爱好。基于这些考虑,在评估系统的准确性时,需要仔细修改本项目中定义的阈值。
本项目以必应搜索“Kobe”为例来描述元搜索引擎的算法。
(1),获取关键字。关键字是系统自动分页得到的词段。
(2),调用搜索引擎搜索关键词相关信息。本项目以必应搜索为例
图 3-4 必应搜索关键词“Kobe”
但是,搜索的返回结果是普通的 HTML 代码,如下所示。本项目需要提取HTML中每个搜索结果的超链接。
.htm"target="_blank"οnmοusedοwn="returnsi_T('&ID=news,5034.2')">科比公开质疑工会接替保罗出任下一任主席的举动?