一种搜索方法和系统的制作方法_2

文档序号:8528166阅读:来源:国知局

[0071]步骤201,当接收到查询词串时,对所述查询词串进行语义分析,得到所述查询词串对应的语义表达式;
[0072]查询词串可以为用户在客户端(例如搜索引擎的网页、浏览器的搜索插件等等)输入的词组或句子,用于请求搜索与之相关的信息。
[0073]对于查询词串,需要进行语义分析,具体可以包括判断查询词串是否超过预设的长度、对查询词串进行分词等等,然后标识出查询词串中的实体词和属性词。
[0074]在本申请的一种优选实施例中,所述步骤201具体可以包括如下子步骤:
[0075]子步骤S11,在知识库预置的属性词列表中查找所述查询词串对应的属性词;
[0076]子步骤S12,在知识库预置的实体词列表中查找所述查询词串对应的实体词。
[0077]应用本申请实施例,可以预先根据全网中抓取的数据进行分析构建知识库。具体地,知识库中可以存储有实体词列表和属性词列表。
[0078]在实体词列表中,可以记载有预先采集的实体词;在属性词列表中,可以记载有预先采集的属性词。
[0079]基于资源描述框架(Resource Descript1n Framework, RDF),即网络资源对象和其间关系的数据模型,可以将采用形如“实体一属性一值”的三元组来描述各种资源和它们之间的关系。
[0080]1、实体:对应的一个具体的个体,在明星类别中,比如刘德华,张柏芝,林青霞等,也包含一些宽泛的代表类别的个体,比如人,电影明星,歌手等。
[0081]2、属性:就是实体所包含的特性,除了包含属性名称外,每个属性还有一个反应属性值类型的类型变量,比如[身高:长度],[年龄:整数],[出生日期:日期]等。
[0082]3、属性值:与属性对应的值,比如168cm (身高),87kg (体重)等,这部分也就是知识库中的知识。属性值还会记录知识的来源,用于帮助用户判断知识的可靠性。
[0083]其中,属性词可以通过通过挖掘网页和搜索日志获得。
[0084]基于RDF的三元组“实体一属性一值”,假如实体是“刘德华”,属性“妻子关系”,值是“朱丽倩”,可以通过如下方式查找出描述“夫妻关系”的属性词:
[0085]1、通过挖掘网页和搜索日志,得到实体和值之间的文本片断。比如,“刘德华的老婆朱丽倩”,“刘德华的太太朱丽倩”,“冯小刚的老婆徐帆”。
[0086]2、统计单个“实体-值”之间文本片断的使用频次。比如,“刘德华的老婆朱丽倩”的使用频次为2,“刘德华的太太朱丽倩”的使用频次为3,
[0087]“冯小刚的老婆徐帆”的使用频次为2。
[0088]3、统计同类“实体-值”之间文本片断的使用频次。比如,“〈实体 > 的老婆〈值>”的使用频次为4,“〈实体 > 的太太〈值〉”的使用频次为3。
[0089]4、从文本片断中提取出超过预设的次数阈值的属性词。比如,次数阈值为2,提取使用频次超过2的文本片断作为属性词,就能找到“妻子关系”对应的属性词是“老婆”和“太太”。
[0090]步骤202,结合所述语义表达式进行匹配分析,确定当前所述查询词串中各词所属的语义标签;
[0091]对标识出实体词和属性词的查询词串,基于知识库可以使用上下文无关的方法进行句法分析,得到实体词及属性词的关联关系,进而识别出符合当前语境的实体词的语义标签。
[0092]上下文无关的方法,又称2型文法,是形式语言理论中一种变换文法,用来描述上下文无关语言。具体是通过定义的一套文法规则,可以用来进行句法分析,得到句子结构及各句子成分之间的关联关系。具体地,文法规则可以存储在知识库中。
[0093]在本申请的一种优选实施例中,所述步骤202具体可以包括如下子步骤:
[0094]子步骤S21,提取所述属性词的预置的语义标签;
[0095]属性词可以具有确定含义的语义标签,存储在知识库中。
[0096]子步骤S22,对所述实体词标记一个或多个原始语义标签;
[0097]原始语义标签可以为表达实体词含义的信息。
[0098]例如,对于查询词串“笑傲江湖哪天上映”,“笑傲江湖”为实体词,其可以有很多的原始语义标签,比如电影、电视剧、小说、剧本、游戏等。
[0099]子步骤S23,分别判断被标记原始语义标签的所述实体词,与被标记语义标签的所述属性词是否存在预定义的关联关系;若是,则执行子步骤S24 ;
[0100]比如定义一个文法规则〈实体_人X属性_妻子关系 > 为具有关联关系,那么对于查询词串“刘德华的老婆”,其对应的语义表达式可以为“刘德华〈实体_人 > 的老婆〈属性_妻子关系 >”,通过检查〈实体_人 >〈属性_妻子关系 > 是满足文法规则要求,是合法的,即具有预定义的关联关系,所以可以得到〈属性_妻子关系 > 老婆依赖于〈实体_人>刘德华。
[0101]此外,假设没有预定义〈实体_人X属性_身高 >,那么对于查询词串“刘德华的身高”标识出的“刘德华〈实体_人 > 的身高〈属性_身高〉”,就不合法,没有预定义的关联关系。
[0102]子步骤S24,确定存在所述预定义关联关系的原始语义标签为当前所述实体词所属的语义标签。
[0103]对于上述查询词串“笑傲江湖哪天上映”,通过句法分析得到,“哪天上映”修饰“笑傲江湖”,通过文法规则可以分析出“上映”为“电影”类别实体的属性,因此可以确定此处“笑傲江湖”是电影,而非电视剧、小说、游戏等。
[0104]步骤203,采用所述语义标签对所述查询词串进行改写;
[0105]本申请实施例中,可以对确定语义标签后的带实体属性标记的查询词串进行改写,将用户输入的自然语言(查询词串)改写成对搜索引擎友好的关键字,使搜索结果与查询词串对应的自然语言的语义更加匹配,提高了搜索的覆盖率,也提高了搜索的效率和质量。
[0106]改写可以分为二类:一类是实体词、属性词替换改写,一类是句式替换改写。
[0107]在本申请的一种优选实施例中,所述步骤203具体可以包括如下子步骤:
[0108]子步骤S31,采用所述语义标签查找预置的标识实体词;
[0109]子步骤S32,将所述实体词替换为预置的标识实体词;
[0110]本申请实施例中,对于知识库中的实体词和属性词,事先建立自然语言查询和搜索引擎语言的对应关系,预先记载在翻译字典中,改写时就可以通过查翻译字典替换得到对搜索引擎友好的标识实体词。具体地,翻译字典可以存储在知识库中。
[0111]由于知识库是基于互联网抽取的知识,所以可以统计出每个实体词和属性词的网页标准描述。通过对网页进行网页标准描述识别、正文抽取、中文分词、实体词识别、属性词识别等步骤,统计出每个实体词和属性词在互联网中出现的次数,从而将同一实体不同表达中,在互联网出现频率最高的定义为对搜索引擎友好的实体词和属性词作为标识实体词和标识属性词,以提高实体词和属性词的覆盖度。比如,实体词“史恒侠”、“火冰可儿”、“芙蓉姐姐”是同一个实体,都是代表芙蓉姐姐这个人,结合上下文统计这些实体词在互联网文本中出现的次数,可以得到“芙蓉姐姐”的使用频次远大于“史恒侠”和“火冰可儿”的使用频次。那么这时候就可以认为,“芙蓉姐姐”这个词对应的搜索引擎的友好的实体词是“芙蓉姐姐”,用户自然语言查询中的实体词“史恒侠” “、火冰可儿”进行替换,可以翻译成标识实体词“芙蓉姐姐”。
[0112]即对于本申请实施例,所述标识实体词可以为与所述实体词具有相同的语义标签,且使用频次最多的实体词;
[0113]和/ 或,
[0114]子步骤S33,将所述属性词替换为预置的标识属性词;
[0115]本申请实施例中,对于对属性词可以采用与实体词同样的处理方法建立自然语言查询和搜索引擎语言的对应关系。
[0116]通过互联网中同一类实体对应的同一属性的不同描述(即属性词)的使用频次,得到对应的对搜索引擎友好关键字作为标识属性词。
[0117]即对于本申请实施例,所述标识属性词可以为与所述属性词描述同一类实体词,且使用频次最多的属性词。
[0118]改写的过程就是一个查翻译字典的过程,比如查询词串为“史恒侠哪儿出生的”,在确定当前实体词的语义标签后,语义表达式可以为“史恒侠〈实体_人 > 哪儿出生的〈属性_出生地 >”,通过查询翻译字典,可以得到实体词“史恒侠”对应的标识实体词为“芙蓉姐姐”,属性词“哪儿出生的”对应的标识属性词为“出生地”。
[0119]和/ 或,
[0120]子步骤S34,判断所述查询词串是否符合逆向表达的句法规则;若是,则执行子步骤 S35 ;
[0121]逆向表达可以与正向表达相对,这两者同一语义、为对同一事物的两个相反角度的描述。
[0122]在本申请的一种优选实施例中,所述子步骤S34进一步可以包括如下子步骤:
[0123]子步骤S341,对所述查询词串进行句法分析,获得主语和修饰语,以及,所述主语和所述修饰语之间的依赖关系;所述依赖关系包括所述主语依赖所述修饰词的依赖关系;
[0124]句法分析,可以为根据给定的语法提示,推导出句子的语法结构,分析句子所包含的句法单位和这些句法单位之间的关系。
[0125]具体实现中,可以通过统计来得到句法分析结果,主要分析为三步:
[0126]1、采用人工标注的方法,对采集的语料库中的每个句子进行句法分析标注,进而汇集成句库;
[01
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1