nykpupmf367692 发表于 2015-10-15 13:40

百度索引建立、用户搜索处理以及搜索结果排序核心算法处理基本流程

       随着计算机技术中搜索技术的迅速发展,搜索引擎已经成为人们获取信息的主要手段。当用户输入搜索请求(query)后,搜索引擎能够将与query匹配的搜索结果返回给用户,即将包含query中各词语的页面包含在搜索结果。扩展阅读:算命最准的免费网站​hsm

在现有的搜索技术中,召回的搜索结果中可能有的页面与用户输入query的关键词相关度较低,因此在对搜索结果进行排序时,主要基于搜索结果中页面的特征向量与query的相关度进行将特征向量与query的相关度高的搜索结果排在前面。然而现有的排序方式仍然会存在搜索准确性低的问题。例如,用户输入的query为“刘德华出生日期”,搜索引擎在召回页面时,可能存在一些页面中虽然包含“刘德华”和“出生日期”,但两者之间是毫无关系的,而显然用户需求的页面是“出生日期”作为“刘德华”的属性的,这在现有的搜索方法中并无法识别和满足,搜索准确性很低,搜索效果较差。

百度搜索算法工程师经过多年不断的改进,提供了一种索引建立方法、搜索方法和搜索结果排序方法及对应的算法处理机制,以便于提高搜索的准确性,改善搜索效果。该索引建立方法包括:
A、对页面进行分词和词性标注;

B、基于语义分析或页面中的视觉特征中的至少一种,从分词处理后得到的各词语中确定实体词以及该实体词对应的属性词并分别进行标注;

C、在建立所述页面的索引时,将建立索引所使用词语具有的实体词或属性词标注同时添加入索引中。
步骤B中基于语义分析处理算法,从分词处理后得到的各词语中确定实体词具体包括:将页面词条中的名词、被识别为页面主题词的名词、作为句子中心词的名词、在页面的出现频次在预设范围内的名词或者页面中的命名实体确定为实体词。从分词处理后得到的各词语中确定实体词对应的属性词具体包括:依据上下文关系,将分词处理后得到的各词语中与实体词的属性关系概率达到预设属性概率阈值的词语作为该实体词的属性词;或者依据预设的语义模板,从分词处理后得到的各词语中确定实体词对应的属性词,预设的语义模板中包含实体词与属性词构成的各种句式结构。

其中页面中的视觉特征包括:逻辑块、逻辑块与逻辑块之间的距离、背景颜色、字体颜色和大小、边框、符号或者表格;步骤B中基于页面中的视觉特征,从分词处理后得到的各词语中确定实体词以及实体词对应的属性词具体包括:将页面中具有预设视觉特征的词语确定为实体词或属性词。更优地,添加到索引中的还包括以下标注中的至少一种:实体词与属性词之间对应关系的标注;以及属性词的属性类型标注;实体词具有突出的视觉特征标注;以及属性词具有突出的视觉特征标注。

百度在计算处理用户搜索的方法包括:
A、对接收到的搜索请求query进行分词和词性标注;
B、基于语义分析,从分词处理后得到的各词语中确定实体词以及该实体词 对应的属性词并分别进行标注;
C、查找与分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面,其中各词语的标注为各词语的实体词或属性词标注,所述索引采用上述 索引建立方法建立;
D、将查找到的页面包含在所述query的搜索结果中。

较优地,在步骤A和步骤B之间还包括:基于预设的停用词表对分词处理后得到的各词语进行过滤处理,过滤掉停用词表中包含的词语;而一般停用词表中包含以下所列的至少一种:副词、虚词、助词、疑问词、语气词、代词。

具体地,步骤B中基于语义分析,从分词处理后得到的各词语中确定实体词包括:将作为query中心词的名词或者query中的命名实体确定为实体词。步骤B中基于语义分析算法中的从分词处理后得到的各词语中确定实体词对应的属性词具体包括:依据上下文关系,将所述分词处理后得到的各词语中与实体词的属性关系概率达到预设属性概率阈值的词语作为该实体词的属性词;或者依据预设的语义模板,从所述分词处理后得到的各词语中确定实体词对应的属性词,所述语义模板中包含实体词与属性词构成的各种句式结构。

更优地,在所述步骤B和所述步骤C之间还包括:E、对所述query进行需求明确度分析,如果确定所述query需求明确,则继续执行所述步骤C;否则执行步骤F;F、查找与分词处理后得到的各词语相匹配的索引对应的页面,转至所述步骤D。步骤E中对所述query进行需求明确度分析具体包括:如果所述query中含有动词,则确定所述query具有明确的需求;或者如果所述query中包含预设的需求词表中的词语,则确定所述query具有明确的需求,所述需求词表通过手工或数据挖掘的方式形成且包含具有明确需求的词语。较优地,步骤C中所述各词语的标注中还包括:实体词与属性词的对应关系,或者属性词的属性类型。

百度处理搜索结果排序的方法包括:
A、对接收到的搜索请求query进行分词和词性标注;
B、基于语义分析,从分词处理后得到的各词语中确定实体词以及该实体词对应的属性词并分别进行标注;
C、在对所述query对应的搜索结果进行排序时,提高与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面在所述搜索结果中的排序权值;各词语的标注为各词语的实体词或属性词标注,网站索引采用上述索引建立方法建立。

较优地,在步骤A和步骤B之间还包括:基于预设的停用词表对分词处理后的query进行过滤处理,过滤掉所述停用词表中包含的词语;停用词表中包含以下所列的至少一种:副词、虚词、助词、疑问词、语气词、代词。具体地,步骤B中基于语义分析,从分词处理后得到的各词语中确定实体词包括:将作为query中心词的名词或者query中的命名实体确定为实体词。步骤B中基于语义分析,从分词处理后得到的各词语中确定实体词对应的属性词具体包括:依据上下文关系,将分词处理后得到的各词语中与实体词的属性关系概率达到预设属性概率阈值的词语作为该实体词的属性词;或者依据预设的语义模板,从分词处理后得到的各词语中确定实体词对应的属性词,所述语义模板中包含实体词与属性词构成的各种句式结构。较优地,在所述步骤B和所述步骤C之间还包括:E、对所述query进行需求明确度分析,如果确定所述query需求明确,则在所述步骤C中提高与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面在所述搜索结果中的排序权值;否则在所述步骤C中不提高与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面在所述搜索结果中的排序权值。

其中,步骤E中对所述query进行需求明确度分析具体包括:如果所述query中含有动词,则确定所述query具有明确的需求;或者如果所述query中包含预设的需求词表中的词语,则确定所述query具有明确的需求,所述需求词表通过手工或数据挖掘的方式形成且包含具有明确需求的词语。更优地,步骤C中所述各词语的标注中还包括:实体词与属性词的对应关系,或者属性词的属性类型。另外,在确定所述query的需求明确后,进一步确定所述query的需求明确度等级;在步骤C中提高与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面在所述搜索结果中的排序权值时,针对需求明确度等级越高的query,对页面在搜索结果中排序权值的提高幅度越大。其中,确定所述query的需求明确度等级具体包括:根据预设的各需求明确度分级对应的词语位置,确定所述query中需求明确的词语在所述query中的位置所对应的需求明确度分级;或者如果所述query包含有预设的需求词表中的词语,则依据所述query中需求明确的词语在所述需求词表中的明确度确定所述query的需求明确度等级;所述需求词表中各词语的明确度由人工设定或者在数据挖掘过程中基于统计概率设定。更优地,该方法还包括:将与所述分词处理后得到的各词语以及各词语的标注相匹配的索引中,包含实体词具体突出的视觉特征标识或者属性词具有突出的视觉特征标识的索引所对应的页面更进一步提高在所述搜索结果中的排序权值。

百度索引建立的处理流程包括:文本处理单元、属性标注单元以及索引建立单元;文本处理单元用于对页面进行分词和词性标注;属性标注单元用于基于语义分析或页面中的视觉特征中的至少一种,从文本处理单元分词处理后得到的各词语中确定实体词以及该实体词对应的属性词并分别进行标注;索引建立单元用于在建立页面的索引时,将建立索引所使用词语具有的实体词或属性词标注同时添加入索引中。

具体地,属性标注单元将页面词条中的名词、被识别为页面主题词的名词、作为句子中心词的名词、在页面的出现频次在预设范围内的名词或者页面中的命名实体确定为实体词。属性标注单元具体依据上下文关系,将分词处理后得到的各词语中与实体词的属性关系概率达到预设属性概率阈值的词语作为该实体词的属性词;或者依据预设的语义模板,从分词处理后得到的各词语中确定实体词对应的属性词,语义模板中包含实体词与属性词构成的各种句式结构。

在步骤C中,将对所述query进行分词处理后得到的各词语相匹配的页面作为所述query对应的搜索结果。其中,页面中的视觉特征包括:逻辑块、逻辑块与逻辑块之间的距离、背景颜色、字体颜色和大小、边框、符号或者表格;属性标注单元具体将页面中具有预设视觉特征的词语确定为实体词或属性词。索引建立单元还将实体词与属性词之间对应关系的标注、属性词的属性类型标注、实体词具有突出的视觉标注以及属性词具有突出的视觉特征标注中的至少一种添加入所述索引。

搜索算法处理流程包括:文本分析单元、属性标注单元和搜索处理单元;文本分析单元,用于对接收到的搜索请求query进行分词和词性标注;属性标注单元用于基于语义分析,从文本分析单元分词处理后得到的各词语中确定实体词以及该实体词对应的属性词并分别进行标注;搜索处理单元用于查找与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面,并将查找到的页面包含在所述query的搜索结果中;其中各词语的标注为各词语的实体词或属性词标注,索引由上述索引建立装置建立。其中文本分析单元具体包括:分词处理子单元、词性标注子单元和过滤处理子单元;分词处理子单元用于对接收到的query进行分词处理;词性标注子单元用于对所述分词处理后的词语进行词性标注;过滤处理子单元用于基于预设的停用词表;分词处理后得到的各词语进行过滤处理,过滤掉所述停用词表中包含的词语;停用词表中包含以下所列的至少一种:副词、虚词、助词、疑问词、语气词、代词。具体地,属性标注单元将作为query中心词的名词或者query中的命名实体确定为实体词。属性标注单元具体依据上下文关系,将所述分词处理后得到的各词语中与实体词的属性关系概率达到预设属性概率阈值的词语作为该实体词的属性词;或者依据预设的语义模板,从所述分词处理后得到的各词语中确定实体词对应的属性词,语义模板中包含实体词与属性词构成的各种句式结构。

较优地,该装置还包括:需求分析单元,用于对所述query进行需求明确度分析,如果确定所述query需求明确,则触发所述搜索处理单元查找与所述分词处理后得到的各词语以及各词语的标注相匹配的索引对应的页面,并将查找到的页面包含在所述query的搜索结果中;否则,触发所述搜索处理单元查找与分词处理后得到的各词语相匹配的索引对应的页面,并将查找到的页面包含在所述query的搜索结果中。

百度建立页面的索引时,引入词语的实体词和属性词标注,使得在对query进行搜索或排序时,在将query中各词语与索引进行匹配的同时也匹配各词语的实体词或属性词标注,从而使得召回的页面或页面排序能够体现出query中词语的实体和属性关系,从而提高了召回的页面或排序靠前的页面与query的相关度,提高了搜索准确性,改善了搜索效果。
本文由:登封招聘网转载发布!
页: [1]
查看完整版本: 百度索引建立、用户搜索处理以及搜索结果排序核心算法处理基本流程