基于神经网络的搜索引擎应用_第1页
基于神经网络的搜索引擎应用_第2页
基于神经网络的搜索引擎应用_第3页
基于神经网络的搜索引擎应用_第4页
基于神经网络的搜索引擎应用_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1/6基于神经网络的搜索引擎应用基于神经网络的搜索引擎应用一、绪论1本课题研究的背景搜索是人们学习生活中不可或缺的一个重要环节,它是人们获取所需信息的一个捷径。当用户用关键词查询信息的时候,搜索引擎将在数据库中查询,假如找到和用户要求内容相似度很高的网站,将基于关键词的匹配程度,它们出现的位置,信息和网页连接质量的频率,计算每个网页的相关性及排名回馈给搜索用户。信息检索是当今最热门的网络技术,基于神经网络的搜索引擎是一种信息检索的新方法。1搜索引擎是按照特定的算法,加上运行计算机搜索程序搜索网络上的资源,经过一系列的组织和处理之后,向用户提供搜索功能,将用户检索的相应信息展现给用户的系统。而搜索引擎的算法决定了它的性能和易用性。好的搜索引擎如百度、谷歌,可以在用户几次查询行为之后,自动为用户选择呈现顺序,准确率也可以保持在一个很高的程度。人工神经网络是在模拟人类的思维。信息采用分布式存储和并行协同处理。网络学习的核心在于如果网络2/6给出了错误的决定,通过网络自身的学习,应该做到降低下次犯同样错误的几率。神经网络是一种运算模型,是大量神经元和之间相互链接构成的。每个节点是一个输出函数,每两个节点间连接代表权重。通过总结归纳输出函数求出的值来判断是否激活神经元。并且对输入层、输出层和隐藏层的权重进行校正,这个就是自学习过程。通常是利用反向传播算法来建立模型。2基于以上原因,本文构建一个人工神经网络,并向这个网络提供查询条件中的关键词,返回给用户的搜索结果,用户的点击选择,然后再训练这个神经网络。当网络通过了许多次不同的查询训练之后,利用它我们可以改进搜索结果的次序,这样可以更好地反映用户在之前一段时间里的真实点击情况。3本文由论文联盟HTTP/收集整理本文的创新性和特点现有许多种不同类型的神经网络,但大都以一组神经元构成。而我将用一个名为多层感知机网络。这种网络是由多层神经元构成,第一层的神经元是负责接受输入用户输入的单词。最后一层神经元负责输出包括被返回的不同URL的权重表。中间层可以包含多个神经元,但为了简化运行的过程,只采用一层中间层,叫做隐藏层负责对输入进行排列组合。这样可以直接很直观的验3/6正反向传播算法的可实用性。本文将用PYTHON构建一个人工神经网络,并向这个网络提供查询条件中的关键词,返回给用户的搜索结果,用户的点击选择,然后再训练这个神经网络。当网络通过了许多次不同的查询训练之后,利用它我们可以改进搜索结果的次序,这样可以更好地反映用户在之前一段时间里的真实点击情况。4二、基于神经网络的搜索引擎应用的分析与设计大多数情况下,当人们在构建神经网络的时候,网络中的全部节点都是预先用网络爬虫建好的,可以预先建立一个包含上百节点的隐藏层,并且让链接已就绪,但是我们将在需要的时候建立新的隐藏节点,这样可以让效率更高,也相对简单。5点击跟踪神经网络的设计分析为了让我们建立的神经网络取得查询的最佳结果,设置对应于查询条件中出现的单词的输入节点值为1当这些输入节点的输出端要输出时会尝试激活中间的隐藏层。当隐藏层中的某个节点得到了一个输入,就能被激活输出端,再激活输出层的节点。因为输出层中的节点经过不同的刺激将在处于不同程度上的活跃状态,我们就能利用输出节点的活跃程度,来判断一个URL与最开始查询中的关键单词联系上的紧密程度。图中的实线表示强连接,虚线表示弱链接,标粗文字代表这个节点已经变得很活跃,如4/6图21所示图21神经网络对“;WORLDBANK”;做的反应当然一次的结果并不能说明问题,最终的结果还要被逐渐纠正,通过纠正连接强度。这样,当用户执行搜索的时候,激活输入端,并从结果中选择所需要的链接,我们就能对网络进行训练。在图21所示的网络中,已经有很多人进行过搜索“;WORLDBANK”;,并且点击过WORLDBANK的相应的结果,通过这一步,可以加强单词与URL之间的关联。62数据流程分析基于以上对点击神经网络跟踪过程的分析,得到神经网络的简化数据流程图如图22所示。神经网络从用户输入查询的关键词开始,首先把用户查询的单词与数据库已存在的数据做对比,看是否已经存在,若存在则把关键字和输出的URL之间的连接加强,即增加权重。如果之前不存在这个关键词,则在数据库中插入该数据并记录这次对应的查询输出结果。图2系统数据流程图2数据库的设计神经网络的核心在于通过当用户查询时不断选择来训练网络,所以我们需要在数据库中存储能够反映网络现状的信息。基于前面的分析,建立了以下一些数据库表。具体见表21。表21各数据库表字段说明1、单词表WORDIDSWORDID单词IDNAME单词名2、URL表5/6URLSURLIDURLIDURL_LINK目的链接3、隐藏层数据表HIDDENNODECREATE_KEY隐藏层新建节点4、单词层到隐藏层节点连接状况表WORDHIDDENFROMID输入端单词TOID输出端节点STRENGTH连接强度5、隐藏层与输出层连接状况表HIDDENURLFROMID隐藏层节点TOID输出端URLSTRENGTH连接强度7功能需求分析本文基于神经网络的搜索引擎主要包括以下一些功能模块,如图23所示图2基于神经网络的搜索引擎的功能模块功能模块的说明判断连接强度因为新的连接只在单词不存在数据库时才会被创建,所以在连接不存在时返回一个默认值,从单词层到隐藏层为,从隐藏层到URL连接默认值为0利用新的强度值更新连接用以判断连接是否存在,同时使用新的强度值更新连接或创建连接。为单词在隐藏层建立新节点每当一个新的单词出现,在隐藏层中建立一个新的节点。然后在单词与隐藏节点之间,查询节点与查询返回的URL结果间建立有权重的连接。建立网络利用数据库中保存的信息,建立包括所有当前权重值的相应的网络。图2TANHX函数前馈算法接受输入一组单词,激活链接,并对URL给出输出。选择双曲函数,因为只有在前几次输入对权重影响时很大的,当次数增多,每次用户选择的URL都是同一个的时候,就无限趋近于1。反向传播算法通过沿着网络6/6反向行进,进行权重的调整。当用户点击了预期的结果时,输出层节点的期望为1,反之则为0。只要知道TANH函数在输出级别上的斜率,就能反过来知道该节点的总输入。8三、基于神经网络的搜索引擎的实现1生成节点在现实世界中,搜索引擎中的所有节点都是预先建好的。但本文为了使这个神经网络更高效、简单,采用只有在需要时才建立新的隐藏节点。一个函数GENERATEHIDDENNODE在隐藏层建立新的一个节点,同时还建立了指向新建节点的连接。2前馈算法编写函数,作用是接受一组输入单词,激活网络中的连接,给出输出结果。首先,选择TANH函数用来观察每个节点对输入的响应程度。在数据库中查询节点与连接的信息,然后建立关于查询那部分网络,把所有的连接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论