一种纠错对自动生成方法及***
技术领域
本发明属于计算机技术领域,尤其涉及一种纠错对自动生成方法及***。
背景技术
随着互联网的普及,互联网的信息资源成指数增长,搜索引擎为用户提供了一个从海量的信息资源中获取需要的资源的重要途径,然而,对于大多数用户来说,在进行初始搜索时,输入的搜索词是比较模糊的,有时搜索词还存在一定的错误,用户无法用较为准确的搜索词来搜索自己所需要的信息,只有通过不断地筛选和提炼才可能获得最终的搜索词,现有搜索引擎在检测到用户的搜索词时,可以根据用户输入的搜索词向用户提供纠正后的搜索词,用户输入的搜索词(模糊的、不正确的搜索词)和纠正后的搜索词构成了一个纠错对,然而该纠错对主要是依靠在已存储的搜索记录、日志等中进行查询匹配后向用户反馈的,对于尚未存在的搜索词难以提供正确的、更为准确的搜索词,导致信息搜索时间长,信息查准确率低,搜索效率低下。
发明内容
本发明实施例的目的在于提供一种纠错对自动生成方法及***,旨在解决由于现有搜索引擎难以向用户提供更为准确的搜索词,导致信息查准确率低,搜索效率低下的问题。
本发明实施例是这样实现的,一种纠错对自动生成方法,所述方法包括下述步骤:
获取预设时间内用户输入的相邻搜索词;
计算所述相邻搜索词为纠错对的置信度;
当所述置信度大于第一阈值时,将所述相邻搜索词设置为候选纠错对;
当所述候选纠错对符合所述预设条件时,确定所述相邻搜索词为纠错对。
本发明实施例的另一目的在于提供一种搜索候选词自动生成***,所述***包括:
搜索词获取单元,用于获取存储的预设时间长度内用户输入的相邻搜索词;
置信度计算单元,用于计算所述相邻搜索词为纠错对的置信度;
候选纠错对设置单元,用于当所述置信度大于第一阈值时,将所述相邻搜索词设置为候选纠错对;以及
纠错对确定单元,当所述候选纠错对符合所述预设条件时,确定所述相邻搜索词为纠错对。
本发明实施例通过获取存储的预设时间长度内用户输入的相邻搜索词,计算相邻搜索词为纠错对的置信度,当置信度大于预设的第一阈值时,将相邻搜索词设置为候选纠错对,根据预设条件对候选纠错对进行筛选,当候选纠错对符合预设条件时,确定相邻搜索词为纠错对,从而实现了纠错对的自动生成,解决了对于尚未存在的搜索词难以提供正确的、更为准确的搜索词的问题,提高了用户搜索信息时搜索词的准确度,缩短了获取信息的时间,进而提高了用户的搜索效率。
附图说明
图1是本发明第一实施例提供的纠错对自动生成方法的实现流程图;
图2是本发明第二实施例提供的纠错对自动生成方法的实现流程图;
图3是本发明第三实施例提供的纠错对自动生成方法的实现流程图;
图4是本发明第四实施例提供的纠错对自动生成方法的实现流程图;
图5是本发明第五实施例提供的纠错对自动生成***的结构图;
图6是本发明第六实施例提供的纠错对自动生成***的结构图;
图7是本发明第七实施例提供的纠错对自动生成***的结构图;
图8是本发明第八实施例提供的纠错对自动生成***的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过预设时间长度内用户输入的相邻搜索词为纠错对的置信度,当置信度大于预设的第一阈值时,将相邻搜索词设置为候选纠错对,并根据候选纠错对中搜索词的字形相似度、拼音相似度以及该搜索词被点击且其对应的搜索结果被查看确定候选纠错对是否为最终的纠错对,实现了纠错对的自动生成,并提高了纠错对的准确率,为用户提供了更加正确的、准确的搜索词,提高了用户搜索信息时搜索词的准确度,缩短了获取信息的时间,进而提高了搜索效率。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
搜索引擎用户会话(session)是指同一用户为了同一个搜索目的而产生的一系列查询请求,当用户输入搜索词时,用户输入的错误形式以及其相对应的正确形式的搜索词,形成一个纠错对。例如,用户在搜索引擎的输入框中输入“漂亮的好有印象”,其实际需要搜索的是“漂亮的好友印象”,那么“漂亮的好有印象”和“漂亮的好友印象”就构成了一个纠错对。本发明实施例在一个搜索引擎用户会话中,根据用户先后输入的搜索词获取候选纠错对,通过特征针对纠错对进行筛选,最终得到纠错对。
图1示出了本发明第一实施例提供的纠错对自动生成方法的实现流程,详述如下:
在步骤S101中,获取存储的预设时间长度内用户输入的相邻搜索词。
在本发明实施例中,搜索引擎用户会话以一个时间窗口(时间长度)来定义,位于预设时间长度内的搜索被定义为搜索引擎用户会话,该时间长度可以根据用户的搜索偏好进行设置,例如,有的用户发现错误的搜索词后会立即进行修改进行再次搜索,时间长度则可以设置短一些,有的用户发现错误的搜索词后则浏览一下搜索结果,则可以设置一个较长的时间长度,较优地,将该时间长度设置为120秒。具体地,存储的预设时间长度内用户输入的相邻搜索词的获取可以从搜索引擎的查询日志中获取。
在步骤S102中,计算相邻搜索词为纠错对的置信度。
置信度可以称为可靠度、置信水平或置信系数,是指特定个体对待特定命题真实性相信的程度,在本发明实施例中,相邻搜索词中后一时间点的搜索词为前一时间点的搜索词的纠错后的搜索词(即两者构成一个纠错对)的置信系数,可以根据用户对后一时间点的搜索词的搜索结果的点击数据进行置信度的计算,也可以将影响置信度的因素作为置信度计算的因子,例如,保存的用户偏好信息等,较优地,通过将相邻搜索词中前一时间点的搜索词和后一时间点的搜索词分别设为第一搜索词和第二搜索词,分别获取第一搜索词和第二搜索词被点击且其搜索结果被查看的次数,根据获取的第一搜索词和第二搜索词被点击且其搜索结果被查看的次数,计算第一搜索词和第二搜索词为纠错对的置信度,具体地,通过公式
在步骤S103中,当置信度大于第一阈值时,将相邻搜索词设置为候选纠错对。
在本发明实施例,预先设置一个置信度的阈值(第一阈值),阈值的设置可以根据***对纠错对准确度的要求进行设置,例如,当***对纠错对的准确度要求较高时,则相应地将阈值设置为一较大值,当***对纠错对的准确度要求较低时,则相应地将阈值设置为一较小值。当置信度大于预设的阈值时,则该相邻搜索词可能可构成一纠错对,可将该相邻搜索词设置为候选纠错对。
在步骤S104中,当候选纠错对符合预设条件时,确定相邻搜索词为纠错对。
在本发明实施例中,进一步根据预先设置的纠错对的特征对候选纠错对进行筛选,当候选纠错对符合纠错对的特征时,确定相邻搜索词为纠错对,具体地,纠错对的特征有:(1)纠错对中错误的搜索词(前一时间点的搜索词)可能没有被点击且其搜索结果未被查看,而纠错对中正确的搜索词(后一时间点的搜索词)可能被点击且其搜索结果也被查看;(2)纠错对中搜索词的字形相似度较高;(3)纠错对中搜索词的拼音相似度较高等。
在本发明实施例中,预先确定一个搜索引擎用户会话,获取该会话中的相邻搜索词,通过计算相邻搜索词中后一时间点的搜索词为前一时间点的搜索词的纠错后的搜索词构成一个纠错对的置信系数,根据***对纠错对准确度的要求进行设置一阈值,当置信***大于预设的阈值且满足预设条件时,确定该相邻搜索词为纠错对,使得***可以根据用户对纠错对准确度的要求提供相应的纠错对,提高了用户的搜索效率,使得搜索更加人性化。
实施例二:
图2示出了本发明第二实施例提供的纠错对自动生成方法的实现流程,详述如下:
在步骤S201中,获取存储的预设时间长度内用户输入的相邻搜索词。
在步骤S202中,计算相邻搜索词为纠错对的置信度。
在步骤S203中,判断相邻搜索词为纠错对的置信度是否大于第一阈值,是则执行步骤S204,否则执行步骤S209。
在步骤S204中,当置信度大于第一阈值时,将相邻搜索词设置为候选纠错对。
在步骤S205中,当相邻搜索词中前一时间点的搜索词未被点击时,检测相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看,是则执行步骤S206,否则执行步骤S209。
在本发明实施例中,为了提高纠错对的准确度,应对相邻搜索词中的两个搜索词的用户点击操作进行检测,即判断用户输入搜索词后是否输入了搜索命令(例如,点击搜索按钮)进行搜索,当相邻搜索词中前一时间点的搜索词未被点击时,后一时间点的搜索词被点击且该搜索词对应的搜索结果被查看,则表明后一时间点的搜索词更加接近用户的搜索词,若相邻搜索词中前一时间点的搜索词未被点击时,后一时间点的搜索词未被点击,或后一时间点的搜索词被点击但对应的搜索结果未被查看,则表明后一时间点的搜索词也不符合用户的搜索要求,则确定该相邻搜索词为非纠错对。
在步骤S206中,计算候选纠错对中搜索词的字形相似度。
在本发明实施例中,若相邻搜索词中前一时间点的搜索词未被点击,相邻搜索词中后一时间点的搜索词被点击且该搜索词对应的搜索结果被查看时,计算候选纠错对中搜索词的字形相似度,具体地,可以通过编辑距离算法、最长公共子串算法或余弦定理(向量空间算法)等,在此不用以限制本发明。
在步骤S207中,判断候选纠错对中搜索词的字形相似度是否大于第二阈值,是则执行步骤S208,否则执行步骤S209。
在本发明实施例,预先设置一个字形相似度的阈值(第二阈值),阈值的设置可以根据***对纠错对准确度的要求进行设置,例如,当***对纠错对的准确度要求较高时,则相应地将阈值设置为一较大值,当***对纠错对的准确度要求较低时,则相应地将阈值设置为一较小值。
在步骤S208中,当候选纠错对中搜索词的字形相似度大于第二阈值,确定该相邻搜索词为纠错对。
在步骤S209中,当候选纠错对中搜索词的字形相似度不大于第二阈值,确定相邻搜索词为非纠错对。
在本发明实施例中,在相邻搜索词为纠错对的置信度符合要求后,进一步地当相邻搜索词中前一时间点的搜索词未被点击时,判断相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看,若相邻搜索词中后一时间点的搜索词被点击且该搜索词对应的搜索结果被查看,计算候选纠错对中搜索词的字形相似度,若字形相似度大于预设的阈值时,则确定相邻搜索词为纠错对,从而进一步提高了纠错对的可信度。
实施例三:
图3示出了本发明第三实施例提供的纠错对自动生成方法的实现流程,详述如下:
在步骤S301中,获取存储的预设时间长度内用户输入的相邻搜索词。
在步骤S302中,计算相邻搜索词为纠错对的置信度。
在步骤S303中,判断相邻搜索词为纠错对的置信度是否大于第一阈值,是则执行步骤S304,否则执行步骤S309。
在步骤S304中,当置信度大于第一阈值时,将相邻搜索词设置为候选纠错对。
在步骤S305中,当相邻搜索词中前一时间点的搜索词未被点击时,检测相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看,是则执行步骤S306,否则执行步骤S309。
在步骤S306中,对候选纠错对中搜索词进行注音,计算搜索词的拼音相似度。
在本发明实施例中,当相邻搜索词中前一时间点的搜索词未被点击,相邻搜索词中后一时间点的搜索词被点击且该搜索词对应的搜索结果被查看时,为了提高纠错对的准确度,通过候选纠错对中搜索词的拼音相似度对候选纠错对进行筛选,具体地,首先对候选纠错对中的搜索词进行拼音的自动标注,注音后,计算候选纠错对中前、后时间点的搜索词的拼音相似度,在具体实施过程中,可以通过编辑距离算法、最长公共子串算法或余弦定理(向量空间算法)等计算拼音相似度,在此不用以限制本发明。
在步骤S307中,判断候选纠错对中搜索词的拼音相似度是否大于第三阈值,是则执行步骤S308,否则执行步骤S309。
在本发明实施例,预先设置一个拼音相似度的阈值(第三阈值),阈值的设置可以根据***对纠错对准确度的要求进行设置,例如,当***对纠错对的准确度要求较高时,则相应地将阈值设置为一较大值,当***对纠错对的准确度要求较低时,则相应地将阈值设置为一较小值。
在步骤S308中,当候选纠错对中搜索词的字形相似度大于第三阈值,确定该相邻搜索词为纠错对。
在步骤S309中,当候选纠错对中搜索词的字形相似度不大于第三阈值,确定相邻搜索词为非纠错对。
在本发明实施例中,在获得候选纠错对后,计算候选纠错对中搜索词的拼音相似度,若拼音相似度大于预设的第三阈值时,则确定相邻搜索词为纠错对,从而进一步提高纠错对的可信度。
实施例五:
图4示出了本发明第四实施例提供的纠错对自动生成方法的实现流程,详述如下:
在步骤S401中,获取存储的预设时间长度内用户输入的相邻搜索词。
在步骤S402中,计算相邻搜索词为纠错对的置信度。
在步骤S403中,当置信度大于第一阈值时,将相邻搜索词设置为候选纠错对。
在步骤S404中,当候选纠错对符合预设条件时,确定相邻搜索词为纠错对。
在步骤S405中,在预设的时间点对纠错对进行优化,保存优化后的纠错对。
在本发明实施例中,经过预设的时间点后,通过在确定纠错对的时间点到该预设的时间点之间获得的纠错对,采用启发式规则对步骤S404中确定的纠错对进行优化,保存优化后的纠错对。具体地可以通过以下三种方法进行优化,但不限于下述方法:
(1)对纠错对中的搜索词进行分词和词性的标注,当纠错对中的搜索词之间的不同词为助词或数字时,删除该纠错对。
在本发明实施例中,采用分词和词性标注工具对纠错对中的两个搜索词进行分词和词性的标注,当当纠错对中的搜索词之间的不同词为助词或数字时,则表明纠错对中的两个搜索词区别比较小,可以视为等同搜索词,删除该纠错对,例如纠错对(“007的开场音乐”,“007开场音乐”)中两个搜索的区别仅在于助词“的”,因此,可以删除该纠错对。
(2)在预设的时间点检测纠错对是否存在反向纠错对,当纠错对存在反向纠错对时删除该纠错对。
反向纠错对是指第一纠错对中的前一时间点搜索词在第二纠错对中为后一时间点的搜索词,第一纠错对中的后一时间点的搜索词在第二纠错对中为前一时间点的搜索词,两个纠错对互为反向纠错对。例如纠错对(“哪家饭店好”,“哪家饭馆好”)和(“哪家饭馆好”,“哪家饭店好”)互为反向纠错对,在本发明实施例中,当在预设的时间点检测到步骤S404中确定的纠错对存在反向纠错对时,则可以视确定的纠错对中的两个搜索词为等同搜索词,因此,可以删除该纠错对。
(3)在预设的时间点检测纠错对中前一时间点的搜索词的点击次数和其搜索结果被查看的次数是否大于后一时间点的搜索词的点击次数和其搜索结果被查看的次数,当纠错对中前一时间点的搜索词的点击次数和其搜索结果被查看的次数大于后一时间点的搜索词的点击次数和其搜索结果被查看的次数时,删除该纠错对。
在本发明实施例中,在确定纠错对并经过一定的时候段后,通过累积的纠错对数据对,采用启发式规则对确定的纠错对进行优化,保存优化后的纠错对,从而有效地提高纠错对的准确度,提高了用户的搜索体验。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
实施例五:
图5示出了本发明第五实施例提供的纠错对自动生成***的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该纠错对自动生成***可以用于搜索引擎,或者具有搜索功能的其他应用***,其中:
搜索词获取单元51获取存储的预设时间长度内用户输入的相邻搜索词。
置信度计算单元52计算相邻搜索词为纠错对的置信度。
在本发明实施例中,相邻搜索词中后一时间点的搜索词为前一时间点的搜索词的纠错后的搜索词(即两者构成一个纠错对)的置信系数,可以根据用户对后一时间点的搜索词的搜索结果的点击数据进行置信度的计算,也可以将影响置信度的因素作为置信度计算的因子,例如,保存的用户偏好信息等,较优地,通过搜索词设置单元521、查看次数获取单元522和置信度计算子单元523计算相邻搜索词为纠错对的置信度,其中:
搜索词设置单元521,用于将相邻搜索词中前一时间点的搜索词和后一时间点的搜索词分别设为第一搜索词和第二搜索词;
查看次数获取单元522,用于分别获取第一搜索词和第二搜索词被点击且其搜索结果被查看的次数,
置信度计算子单元523,用于根据获取的第一搜索词和第二搜索词被点击且其搜索结果被查看的次数,计算第一搜索词和第二搜索词为纠错对的置信度,具体地。
在具体实施过程中,可以通过下述公式计算相邻搜索词为纠错对的置信度:
当置信度大于第一阈值时,候选纠错对设置单元53将相邻搜索词设置为候选纠错对。
纠错对确定单元54当候选纠错对符合预设条件时,确定相邻搜索词为纠错对。
在本发明实施例中,预先确定一个搜索引擎用户会话,获取该会话中的相邻搜索词,通过计算相邻搜索词中后一时间点的搜索词为前一时间点的搜索词的纠错后的搜索词构成一个纠错对的置信系数,根据***对纠错对准确度的要求进行设置一阈值,当置信***大于预设的阈值且满足预设条件时,确定该相邻搜索词为纠错对,使得***可以根据用户对纠错对准确度的要求提供相应的纠错对,提高了用户的搜索效率,使得搜索更加人性化。
实施例六:
图6示出了本发明第六实施例提供的纠错对自动生成***的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该纠错对自动生成***可以用于搜索引擎,或者具有搜索功能的其他应用***,其中:
搜索词获取单元61获取存储的预设时间长度内用户输入的相邻搜索词。
置信度计算单元62计算相邻搜索词为纠错对的置信度。
当置信度大于第一阈值时,候选纠错对设置单元63将相邻搜索词设置为候选纠错对。
当相邻搜索词中前一时间点的搜索词未被点击时,搜索词检测单元64检测相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看。
字形相似度计算单元65计算候选纠错对中搜索词的字形相似度。
当字形相似度大于第二阈值时,第一纠错对确定子单元66确定相邻搜索词为纠错对。
在本发明实施例中,在相邻搜索词为纠错对的置信度符合要求后,进一步地当相邻搜索词中前一时间点的搜索词未被点击时,判断相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看,若相邻搜索词中后一时间点的搜索词被点击且该搜索词对应的搜索结果被查看,计算候选纠错对中搜索词的字形相似度,若字形相似度大于预设的阈值时,则确定相邻搜索词为纠错对,从而进一步提高了纠错对的可信度。
实施例七:
图7示出了本发明第七实施例提供的纠错对自动生成***的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该纠错对自动生成***可以用于搜索引擎,或者具有搜索功能的其他应用***,其中:
搜索词获取单元71获取存储的预设时间长度内用户输入的相邻搜索词。
置信度计算单元72计算相邻搜索词为纠错对的置信度。
当置信度大于第一阈值时,候选纠错对设置单元73将相邻搜索词设置为候选纠错对。
当相邻搜索词中前一时间点的搜索词未被点击时,搜索词检测单元74检测所述相邻搜索词中后一时间点的搜索词是否被点击且该搜索词对应的搜索结果被查看。
拼音相似度计算单元75对候选纠错对中搜索词进行注音,计算搜索词的拼音相似度。
当拼音相似度大于第三阈值时,第二纠错对确定子单元76确定相邻搜索词为纠错对。
在本发明实施例中,在获得候选纠错对后,计算候选纠错对中搜索词的拼音相似度,若拼音相似度大于预设的第三阈值时,则确定相邻搜索词为纠错对,从而进一步提高纠错对的可信度。
实施例八:
图8示出了本发明第八实施例提供的纠错对自动生成***的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
该纠错对自动生成***可以用于搜索引擎,或者具有搜索功能的其他应用***,其中:
搜索词获取单元81获取存储的预设时间长度内用户输入的相邻搜索词。
置信度计算单元82计算相邻搜索词为纠错对的置信度。
当置信度大于第一阈值时,候选纠错对设置单元83将相邻搜索词设置为候选纠错对。
纠错对确定单元84当候选纠错对符合预设条件时,确定相邻搜索词为纠错对。
纠错对优化单元85在预设的时间点对纠错对进行优化,保存优化后的纠错对。
本发明实施例通过获取存储的预设时间长度内用户输入的相邻搜索词,计算相邻搜索词为纠错对的置信度,当置信度大于预设的第一阈值时,将相邻搜索词设置为候选纠错对,并根据纠错对中两个搜索词被点击、搜索结果被查看的情况,纠错对中搜索词的字形相似度,以及纠错对中搜索词的拼音相似度对候选纠错对进行筛选,确定相邻搜索词是否为纠错对,最后采用启发式规则对纠确定的纠错对进行优化,保存优化后的纠错对,从而实现了纠错对的自动生成和优化,提高了用户搜索信息时搜索词的准确度,缩短了获取信息的时间,进而提高了用户的搜索效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。