首页> 中国专利> 一种基于地理信息的问题推送方法及系统

一种基于地理信息的问题推送方法及系统

摘要

本发明提供了一种基于地理信息的问题推送方法及系统,其问题推送方法预先根据用户属性信息中的地理词建立各用户的用户地理模型,包括:A、获取用户提交的问题,并从所述问题中提取地理词;B、利用提取的地理词与各用户地理模型进行匹配,利用匹配到的用户地理模型对应的用户形成用户列表;C、将所述问题推送给所述用户列表中的用户。本发明通过用户填写的个人信息挖掘用户的地理兴趣词模型,给具有地理位置属性的用户推送具有同样地理位置属性的问题,使问题推送更加精确,减小服务器和客户端的负担和资源浪费。

著录项

  • 公开/公告号CN102279889A

    专利类型发明专利

  • 公开/公告日2011-12-14

    原文格式PDF

  • 申请/专利权人 百度在线网络技术(北京)有限公司;

    申请/专利号CN201110250083.6

  • 发明设计人 谢双宾;罗建岚;李连华;

    申请日2011-08-29

  • 分类号

  • 代理机构深圳市威世博知识产权代理事务所(普通合伙);

  • 代理人何青瓦

  • 地址 100085 北京市海淀区上地十街10号百度大厦

  • 入库时间 2023-12-18 04:00:10

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-30

    授权

    授权

  • 2013-08-28

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20110829

    实质审查的生效

  • 2011-12-14

    公开

    公开

说明书

【技术领域】

本发明涉及互联网应用技术领域,尤其涉及一种基于地理信息的问题推 送方法及系统。

【背景技术】

随着计算机和网络技术的发展,网络互动问答平台为网民提供了一个可 以进行互动交流的平台,越来越受到人们的欢迎,如百度知道、新浪爱问、 谷歌问答、搜搜问问、雅虎知识堂等。人们可以提出问题,接受专家或者其 他用户的帮助,也可以解决问题,为其他用户提供帮助。

在网络互动问答平台的交互过程中,问题推送系统起着十分重要的作用。 问题推送系统根据用户的问答记录,主动地将问题分门别类地传送到相应的 用户设备中。它一方面可以为用户推送其可能感兴趣的问题,增加用户的积 极性,另一方面通过及时的问题推送,有利于解决其他用户的问题,可以提 高问题的解答率。这种主动推送问题的方式,改变了互联网上单一地信息访 问的方式,将用户搜寻信息变为有目的地接收信息,从而改变了信息流动的 方向,有助于减少用户漫无目的浏览、点击等行为,同时通过信息流量的减 少减轻网站服务器的负担。

现有的问题推送系统的主要技术思路是通过挖掘用户的答复或提问等历 史记录得到用户的兴趣词模型,并以相关的兴趣词模型为基础进行推送。然 而,虽然基于用户兴趣进行问题推送,但在很多时候,由于地理位置的原因, 用户无法对感兴趣的问题进行解答。例如,某用户虽然对数码产品感兴趣, 现有问题推送方式可能会向该用户推送诸如“尼康D7000在上海的售价为多 少”、“三星手机在杭州的维修点在哪里”之类的问题,而该用户可能在北 京,对这些问题虽然感兴趣但由于地理位置的限制无法解答。因此,单纯基 于用户兴趣的问题推送方式不但没有起到应有的作用,反而降低用户了的使 用感受,同时对服务器和客户端都会造成负担和资源的浪费。

【发明内容】

为了解决上述问题,本发明提供了一种基于地理信息的问题推送方法及 系统,使得问题推送更加精确,减小服务器和客户端的负担和资源浪费。

具体技术方案如下:

相应地,本发明实施例提供的一种基于地理信息的问题推送方法,预先 根据用户属性信息中的地理词建立各用户的用户地理模型;该方法包括:

A、获取用户提交的问题,并从所述问题中提取地理词;

B、利用提取的地理词与各用户地理模型进行匹配,利用匹配到的用户地理 模型对应的用户形成用户列表;

C、将所述问题推送给所述用户列表中的用户。

根据本发明之一优选实施例,所述预先根据用户属性信息中的地理词建立 各用户的用户地理模型具体包括:

从各用户属性信息中得到各用户的地理字段文本;

对各用户的地理字段文本进行分词;

从分词结果中提取地理词并赋予原始地理权重形成各用户的用户地理模型。

根据本发明之一优选实施例,根据地理词的倒文档率为地理词赋予原始地 理权重。

根据本发明之一优选实施例,所述步骤A具体包括:

A1、获取用户提交的问题或问题的标题文本;

A2、对所述问题或所述标题文本进行分词;

A3、从分词结果中提取地理词,并为所述地理词赋予当前地理权重。

根据本发明之一优选实施例,在步骤A3中,根据地理词的倒文档率与步骤 A2得到的分词结果中各词语的倒文档率之和的比值,为地理词赋予当前地理权 重。

根据本发明之一优选实施例,将建立的各用户的用户地理模型存至用户地 理模型库,且利用各用户地理模型的地理词建立倒排索引;

步骤B中所述利用提取的地理词与各用户地理模型进行匹配具体为:利用 所述提取的地理词在所述用户地理模型库中查找倒排索引,将命中的用户地理 模型对应的用户确定为所述匹配到的用户地理模型对应的用户。

根据本发明之一优选实施例,步骤B中所述利用匹配到的用户地理模型对 应的用户形成用户列表具体包括:

计算所述匹配到的用户地理模型对应的用户与所述问题的匹配得分,所述 匹配得分为从所述问题中提取的地理词的最终权重之和,所述最终权重为地理 词在命中的用户地理模型中的原始地理权重与地理词的当前地理权重的乘积;

选取匹配得分满足预设条件的用户形成所述用户列表。

根据本发明之一优选实施例,所述预设条件包括:

匹配得分排在前N个,N为预设的正整数;或者,

匹配得分达到预设的得分阈值。

相应地,本发明实施例提供的一种基于地理信息的问题推送系统,包括:

用户模型维护模块,用于存储预先根据用户属性信息中的地理词建立的各 用户的用户地理模型;

取词模块,用于获取用户提交的问题,并从所述问题中提取地理词;

匹配模块,用于利用所述取词模块提取的地理词与所述用户地理模型库进 行匹配,利用匹配到的用户地理模型对应的用户形成用户列表;

问题推送模块,用于将所述问题推送给所述用户列表中的用户。

根据本发明之一优选实施例,所述用户模型维护模块具体包括:

信息处理模块,用于从各用户属性信息中得到各用户的地理字段文本;

第一分词模块,用于对各用户的地理字段文本进行分词;

第一赋值模块,用于从分词结果中提取地理词并赋予原始地理权重形成各 用户的用户地理模型。

根据本发明之一优选实施例,所述第一赋值模块,根据地理词的倒文档率 为地理词赋予原始地理权重。

根据本发明之一优选实施例,所述取词模块进一步包括:

问题接口模块,用于获取用户提交的问题或问题的标题文本;

第二分词模块,用于对所述问题或所述标题文本进行分词;

第二赋值模块,用于从分词结果中提取地理词,并为所述地理词赋予当前 地理权重。

根据本发明之一优选实施例,所述第二赋值模块根据地理词的倒文档率与 所述第二分词模块得到的分词结果中各词语的倒文档率之和的比值为地理词赋 予当前地理权重。

根据本发明之一优选实施例,所述用户模型维护模块将建立的各用户的用 户地理模型存至用户地理模型库,并利用各用户地理模型的地理词建立倒排索 引;

所述匹配模块利用所述提取的地理词在所述用户地理模型库中查找倒排索 引,将命中的用户地理模型对应的用户确定为所述匹配到的用户地理模型对应 的用户。

根据本发明之一优选实施例,所述匹配模块计算所述匹配到的用户地理模 型对应的用户与所述问题的匹配得分,选取匹配得分满足预设条件的用户形成 所述用户列表;所述匹配得分为从所述问题中提取的地理词的最终权重之和, 所述最终权重为地理词在命中的用户地理模型中的原始地理权重与地理词的当 前地理权重的乘积。

根据本发明之一优选实施例,所述预设条件包括:

匹配得分排在前N个,N为预设的正整数;或者,

匹配得分达到预设的得分阈值。

由以上技术方案可以看出,本发明提供的一种基于地理信息的问题推送 方法及系统,是通过用户填写的个人信息挖掘用户的地理兴趣词模型,给具 有地理位置属性的用户推送具有同样地理位置属性的问题,使问题推送更加 精确,减小服务器和客户端的负担和资源浪费。

【附图说明】

图1是本发明基于地理信息的问题推送方法的流程图;

图2是本发明建立用户地理模型的流程图;

图3是本发明存储或更新用户地理模型库的流程图;

图4是本发明从用户提交的问题中提取地理词的流程图;

图5是本发明利用提取的地理词与各用户地理模型匹配的流程图;

图6是本发明基于地理信息的问题推送系统的架构图;

图7是本发明的用户模型维护模块10的内部架构图;

图8是本发明的取词模块20的内部架构图。

【具体实施方式】

为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体 实施例对本发明进行详细描述。

如图1所示,为本发明一实施例中提供的一种基于地理信息的问题推送 方法的流程图,所述的问题推送方法包括以下步骤:

步骤T00、预先根据用户属性信息中的地理词建立各用户的用户地理模型。

对于网站的注册用户,在注册时要求填写个人属性信息,包括姓名、出生 地、出生日期以及工作地点等,例如,用户“张小明”,出生地“广州市天河区 天河北路888号”,出生日期“1980年5月4号”,工作地为“北京市海淀区交 大东路46号”,工作单位“北京***有限公司”等,系统会记录该用户属性信息。 上述用户填写的个人属性信息中包括多个地理信息,如出生地、工作地,利用 这些地理信息可以预先建立各用户的用户地理模型。下面结合图2和图3进一 步详述建立各用户地理模型的方法。

如图2所示,为建立用户地理模型的流程图,其中包括:

T10、从各用户属性信息中得到各用户的地理字段文本。

其中用户的地理字段文本可以包括不限于:出生地字段或工作地字段,如 用户“张小明”,相应地选取“广州市天河区天河北路888号”作为出生地字 段,选取“北京市海淀区交大东路46号”为工作地字段。用户个人信息的具体 识别过程为本领域公知技术,在此不再赘述。

T20、对各用户的地理字段文本进行分词,得到分词结果。

分词的作用是将获取的地理字段文本切分成有意义的字词,以便后续处理。 具体分词的方法包括:正向匹配分词、反向匹配分词、正向反向匹配分词、基 于全切分词图的分词、最大熵马尔科夫模型分词、最大熵分词或条件随机场分 词等。相应地,出生地字段分词为“广州市/天河区/天河北路/888号”,工作地 字段分词为“北京市/海淀区/交大东路/46号”。

T30、从分词结果中提取地理词,并赋予原始地理权重,形成各用户的用户 地理模型。

从地理字段文本的分词结果中得到地理词“广州市”、“天河区”、“天河北 路”、“北京市”、“海淀区”、“交大东路”。在优选的实施例中,可以对地理词进 行同义词扩充,如“交大东路”扩充为“交大”、“交通大学”和“交大东路”。 然后为每个地理词赋予原始地理权重,赋予原始地理权重的作用是便于后续进 行计算匹配得分以及排序。

优选地,在赋予原始地理权重时可以基于倒文档率(IDF),原始地理权重 W的计算公式可以是W=a*(1/log(DF+1)),其中a为固定值,可默认设置为 100,DF是该地理词在所有用户中的出现次数。

在本实施例中,建立各用户的用户地理模型后,还将建立的用户地理模型 存储或更新至用户地理模型库,并利用各用户地理模型的地理词建立或更新该 用户地理模型在用户地理模型库中的倒排索引。如图3所示,具体包括以下步 骤:

A201、在用户地理模型库中查找所得到的用户地理模型。

A202、判断用户地理模型库是否有该用户地理模型,若是,则进入步骤A203; 若否,在进入步骤A204。

本实施例中,则是查找是否有“张小明”这个用户的用户地理模型,其中, 每个用户地理模型可以用对应用户信息进行标识,例如采用“张小明”标识其 用户地理模型。

A203、删除查找到的用户地理模型及对应的倒排索引。

在本实施例中,删除该用户“张小明”对应的用户地理模型,包括地理词 和地理权重,以及对应在用户地理模型库中的倒排索引。

A204、添加所述用户及用户地理模型至所述用户地理模型库中,并建立或 更新倒排索引。在本实施例中,添加用户“张小明”以及对应的用户地理模型, 包括地理词和地理权重,以及对应在用户地理模型库中的倒排索引。

为了更清楚地说明倒排索引,假设用户模型数据库中还有用户A和用户B, 用户A的用户地理模型中的地理词包括“广州市”“越秀区”“北京市”“朝阳区” 等,用户B的用户地理模型中的地理词包括“北京市”“朝阳区”“海淀区”等。 同时也分别采用“用户A”和“用户B”标识其用户地理模型。在用户地理模型 库中的倒排索引如表1所示:

表1

在查找时,根据地理词“广州市”,可以找到“张小明”,“用户A”等的用 户地理模型。根据地理词“北京市”,可以找到张小明”,“用户A”,“用户B”等 的用户地理模型。

在本实施例中,根据系统记录的所有注册用户的个人属性信息,建立用户 地理模型库。在新增注册用户后,只需要新增该用户及其用户地理模型至已有 用户地理模型库中,并建立其倒排索引,进行用户地理模型库的维护。

继续参见图1,步骤A、获取用户提交的问题,并从所述问题中提取地理词。

所述问题可以是由注册用户提交,也可以是非注册用户随机提交的。具体 地处理过程,如图4所示,包括以下步骤:

A1、获取用户提交的问题或问题的标题文本。

在本发明中可以直接对用户提交的问题进行处理,对于用户提交的问题可 能很长,其中参杂很多无用的信息,而问题的标题文本通常较为简洁,且表意 能力更强,因此在本发明实施例中可以选择问题的标题文本。例如,用户提交 的问题是“请问学知桥北到交大怎么走?在线等答案”,则可得到标题文本“请 问学知桥北到交大怎么走?在线等答案”。标题文本具体识别过程为本领域公知 技术,在此不再赘述。

A2、对所述问题或所述标题文本进行分词。

具体分词的方法包括:正向匹配分词、反向匹配分词、正向反向匹配分词、 基于全切分词图的分词、最大熵马尔科夫模型分词、最大熵分词或条件随机场 分词等。在本实施例中,将标题文本分词为“请问/学知桥北/到/交大/怎么走/?/ 在线/等/答案”。

A3、从分词结果中提取地理词,并为所述地理词赋予当前地理权重。

在执行本步骤之前,可以首先对分词结果进行过滤处理,过滤掉标点符号, 以及停用词。

在本实施例中,用户提交的问题为“请问学知桥北到交大怎么走?在线等 答案”,则通过上述步骤可以识别出地理词为“学知桥北”、“交大”为地理词。 在优选实施例中,可以对地理词进行同义词扩充。例如,将“交大”扩充为“交 通大学”,“学知桥北”扩充成“学知桥”和“学知桥北”。

根据地理词的倒文档率IDF在所有分词的倒文档率IDF之和的比重为地理 词赋予当前地理权重。针对某个地理词,当前地理权重W’的计算公式可以是W’= 该地理词的IDF/所有分词的IDF之和。地理词与所有分词的IDF的计算公式均 为W=a*(1/log(DF+1)),其中a为固定值,可默认设置为100,DF是该地理 词在所有用户中的出现次数。在本实施例中,可计算得到“学知桥北”、“学知 桥”、“交大”和“交通大学”各地理词的当前地理权重。

继续参见图1,步骤B、利用提取的地理词与各用户地理模型进行匹配,利 用匹配到的用户地理模型对应的用户形成用户列表。

在将建立的各用户的用户地理模型存至用户地理模型库,且利用各用户地 理模型的地理词建立倒排索引之后,如图5所示,步骤B中所述利用提取的地 理词与各用户地理模型进行匹配具体为:

B1、利用所述地理词查找所述用户地理模型库的倒排索引,确定命中的用 户地理模型,将命中的用户地理模型对应的用户确定为所述匹配到的用户地理 模型对应的用户。

利用识别出来的地理词在用户地理模型库中进行查找倒排索引。在本实施 例中,利用“学知桥北”、“学知桥”、“交大”和“交通大学”等地理词在用户 地理模型库中查找相同的地理词,再根据地理词在用户地理模型库中的倒排索 引获取相关联的用户地理模型以及相对应的用户。例如,在用户地理模型库中, 用户1的用户地理模型包括“学知桥北”、“学知桥”、“交大”、“交通大学”、 “上海市”、“静安区”等地理词,用户2的用户地理模型包括“学知桥”、“交 大”、“交通大学”等地理词,用户3的用户地理模型包括“交大”、“交通大学” 等地理词,用户4的用户地理模型包括“学知桥北”、“学知桥”等地理词。根 据倒排索引,从地理词“学知桥北”可以找到用户1的用户地理模型、用户4 的用户地理模型等,因而,确定匹配到的用户有用户1、用户4等。从地理词“学 知桥”可以找到用户1的用户地理模型、用户2的用户地理模型等,因而,确 定匹配到的用户有用户1、用户4等。依次类推,可以得到地理词“学知桥北”、 “学知桥”、“交大”和“交通大学”在用户地理模型库中相关联的用户地理模 型和对应的用户,称为关联用户。

步骤B中所述利用匹配到的用户地理模型对应的用户形成用户列表具体包 括:

B2、计算所述匹配到的用户地理模型对应的用户与所述问题的匹配得分。

即,计算每一个关联用户(将步骤B确定的用户称为关联用户)的匹配得 分。所述匹配得分为从所述问题中提取的地理词的最终权重之和。其中,最终 权重为地理词在命中的用户模型中的原始地理权重与地理词的当前地理权重的 乘积。

在本实施例中,用户1的匹配得分=地理词“学知桥北”的当前地理权重*“学 知桥北”在用户1的用户地理模型中的原始地理权重+地理词“学知桥”的当前 地理权重*“学知桥”在用户1的用户地理模型中的原始地理权重+地理词“交 大”的当前地理权重*“交大”在用户1的用户地理模型中的原始地理权重+地 理词“交通大学”的当前地理权重*“交通大学”在用户1的用户地理模型中的 原始地理权重;用户2的匹配得分=地理词“学知桥”的当前地理权重*“学知 桥”在用户2的用户地理模型中的原始地理权重+地理词“交大”的当前地理权 重*“交大”在用户2的用户地理模型中的原始地理权重+地理词“交通大学” 的当前地理权重*“交通大学”在用户2的用户地理模型中的原始地理权重;用 户3的匹配得分=地理词“交大”的当前地理权重*“交大”在用户3的用户地 理模型中的原始地理权重+地理词“交通大学”的当前地理权重*“交通大学” 在用户3的用户地理模型中的原始地理权重;用户4的匹配得分=地理词“学知 桥北”的当前地理权重*“学知桥北”在用户4的用户地理模型中的原始地理权 重+地理词“学知桥”的当前地理权重*“学知桥”在用户4的用户地理模型中 的原始地理权重。依次类推,可计算得到各关联用户的匹配得分。

B3、选取匹配得分满足预设条件的用户形成所述用户列表。

所述预设条件包括:匹配得分排在前N个,N为预设的正整数;或者,匹 配得分达到预设的得分阈值。根据步骤2中的匹配得分可将用户进行排序,并 判断所述关联用户的数量是否超过该预设的N值,若超过,取得得分最高的前 N个用户形成所述用户列表,默认设置N为10000,则取前10000个用户。若 不超过,则取匹配得分达到预设的得分阈值的关联用户形成所述用户列表。

继续参见图1,步骤C、将所述问题推送给所述用户列表中的用户。

在本实施例中,将所接收的问题“请问学知桥北到交大怎么走?在线等 答案”,推送给所述用户列表中的用户。系统为每一个用户维护一个推送问 题的列表,该用户推送问题的列表的显示方式,在本发明中不作限制,本领 域技术人员可根据实际的应用需求而确定。

当然,本发明基于地理信息的问题推送方法也可以采用与现有的用户提问 兴趣值结合的方式。针对于同一个注册用户,系统从其个人信息中获取地理信 息建立用户地理模型库,系统也将记录其各种行为数据,根据其提问/回答的历 史记录,得到该用户历史行为数据中的地理词,并赋予地理权重,更新该用户 的用户地理模型,为其推送相关的问题。因而,在更新所述用户地理模型库时, 其倒排索引是根据用户的个人信息中的地理词以及历史行为数据中的地理词进 行倒排索引的。

在建立用户地理模型库时,可采用现有的已经存储用户及其历史记录的地 理模型数据库,在此基础上进行维护更新来完善所述地理模型数据库。

如图6所示,本发明一实施例中提供一种基于地理信息的问题推送系统 的架构图,该问题推送系统包括:

用户模型维护模块10,用于存储预先根据用户属性信息中的地理词建立各 用户的用户地理模型。

对于网站的注册用户,在注册时要求填写个人属性信息,包括姓名、出生 地、出生日期以及工作地点等,例如,用户“张小明”,出生地“广州市天河区 天河北路888号”,出生日期“1980年5月4号”,工作地为“北京市海淀区交 大东路46号”,工作单位“北京***有限公司”等,系统会记录该用户属性信息。 上述用户填写的个人属性信息中包括多个地理信息,如出生地、工作地,利用 这些地理信息可以预先建立各用户的用户地理模型。

取词模块20,用于获取用户提交的问题,并从所述问题中提取地理词。所 述用户提交的问题可以是由注册用户提出,也可以是非注册用户随机提出的。

匹配模块30,用于利用取词模块20提取的地理词与各用户地理模型进行匹 配,利用匹配到的用户地理模型对应的用户形成用户列表。

问题推送模块40,将所述用户提交的问题推送给匹配模块30中生成的 用户列表中的用户。

以下结合图7和图8对本发明的问题推送系统作进一步详细说明:

如图7所示,为用户模型维护模块10的内部架构图,具体包括:

信息处理模块101,用于从各用户属性信息中得到各用户的地理字段文本。

其中用户的地理字段文本可以包括不限于:出生地字段或工作地字段,如 用户“张小明”,相应地选取“广州市天河区天河北路888号”作为出生地字 段,选取“北京市海淀区交大东路46号”为工作地字段。用户个人信息的具体 识别过程为本领域公知技术,在此不再赘述。

第一分词模块102,用于对信息处理模块101得到的各用户的地理字段文本 进行分词,得到分词结果。

分词的作用是将获取的地理字段文本切分成有意义的字词,以便后续处理。 具体分词的方法包括:正向匹配分词、反向匹配分词、正向反向匹配分词、基 于全切分词图的分词、最大熵马尔科夫模型分词、最大熵分词或条件随机场分 词等。相应地,出生地字段分词为“广州市/天河区/天河北路/888号”,工作地 字段分词为“北京市/海淀区/交大东路/46号”。

第一赋值模块103,用于从第一分词模块102的分词结果中提取地理词,并 赋予原始地理权重,形成各用户的用户地理模型。

从地理字段文本的分词结果中得到地理词“广州市”、“天河区”、“天河北 路”、“北京市”、“海淀区”、“交大东路”。在优选的实施例中,可以对地理词进 行同义词扩充,如“交大东路”扩充为“交大”、“交通大学”和“交大东路”。 然后为每个地理词赋予原始地理权重,赋予原始地理权重的作用是便于后续进 行计算匹配得分以及排序。

优选地,在赋予原始地理权重时可以基于倒文档率(IDF),原始地理权重 W的计算公式可以是W=a*(1/log(DF+1)),其中a为固定值,可默认设置为 100,DF是该地理词在所有用户中的出现次数。

用户地理模型库104,用于存储或更新建立的用户地理模型,并利用各用户 地理模型的地理词建立或更新该用户地理模型在用户地理模型库中的倒排索引。

以用户“张小明”为例,先在用户地理模型库中查找是否有“张小明”这 个用户的用户地理模型,其中,每个用户地理模型可以用对应用户信息进行标 识,例如采用“张小明”标识其用户地理模型。如果有,则先删除旧的用户“张 小明”对应的用户地理模型,包括地理词和地理权重,以及对应在用户地理模 型库中的倒排索引,再添加新的用户“张小明”以及对应的用户地理模型,包 括地理词和地理权重,以及对应在用户地理模型库中的倒排索引。如果没有, 则添加用户“张小明”以及对应的用户地理模型,包括地理词和地理权重,以 及对应在用户地理模型库中的倒排索引。

为了更清楚地说明倒排索引,假设用户模型数据库中还有用户A和用户B, 用户A的用户地理模型中的地理词包括“广州市”“越秀区”“北京市”“朝阳区” 等,用户B的用户地理模型中的地理词包括“北京市”“朝阳区”“海淀区”等。 同时也分别采用“用户A”和“用户B”标识其用户地理模型。在用户地理模型 库中的倒排索引可以如表1所示。

在查找时,根据地理词“广州市”,可以找到“张小明”,“用户A”等的用 户地理模型。根据地理词“北京市”,可以找到“张小明”,“用户A”,“用户B” 等的用户地理模型。

如图8所示,为取词模块20的内部架构图,具体包括:

问题接口模块201,用于获取用户提交的问题或问题的标题文本。

在本发明中可以直接对用户提交的问题进行处理,对于用户提交的问题可 能很长,其中参杂很多无用的信息,而问题的标题文本通常较为简洁,且表意 能力更强,因此在本发明实施例中可以选择问题的标题文本。例如,用户提交 的问题是“请问学知桥北到交大怎么走?在线等答案”,则可得到标题文本“请 问学知桥北到交大怎么走?在线等答案”。标题文本具体识别过程为本领域公知 技术,在此不再赘述。

第二分词模块202,对所述问题或所述标题文本进行分词。

具体分词的方法包括:正向匹配分词、反向匹配分词、正向反向匹配分词、 基于全切分词图的分词、最大熵马尔科夫模型分词、最大熵分词或条件随机场 分词等。在本实施例中,将标题文本分词为“请问/学知桥北/到/交大/怎么走/?/ 在线/等/答案”。

第二赋值模块203,用于从分词结果中提取地理词,并为所述地理词赋予当 前地理权重。

在执行本步骤之前,可以首先对分词结果进行过滤处理,过滤掉标点符号, 以及停用词。

在本实施例中,用户提交的问题为“请问学知桥北到交大怎么走?在线等 答案”,则通过上述步骤可以识别出地理词为“学知桥北”、“交大”为地理词。 在优选实施例中,可以对地理词进行同义词扩充。例如,将“交大”扩充为“交 通大学”,“学知桥北”扩充成“学知桥”和“学知桥北”。

根据地理词的倒文档率IDF在所有分词的倒文档率IDF之和的比重为地理 词赋予当前地理权重。针对某个地理词,当前地理权重W’的计算公式可以是W’= 该地理词的IDF/所有分词的IDF之和。地理词与所有分词的IDF的计算公式均 为W=a*(1/log(DF+1)),其中a为固定值,可默认设置为100,DF是该地理 词在所有用户中的出现次数。在本实施例中,可计算得到“学知桥北”、“学知 桥”、“交大”和“交通大学”各地理词的当前地理权重。

所述匹配模块30利用所述提取的地理词在所述用户地理模型库中查找倒排 索引,确定命中的用户地理模型,将命中的用户地理模型对应的用户确定为所 述匹配到的用户地理模型对应的用户。

利用识别出来的地理词在用户地理模型库中进行查找倒排索引。在本实施 例中,利用“学知桥北”、“学知桥”、“交大”和“交通大学”等地理词在用户 地理模型库中查找相同的地理词,再根据地理词在用户地理模型库中的倒排索 引获取相关联的用户地理模型以及相对应的用户。例如,在用户地理模型库中, 用户1的用户地理模型包括“学知桥北”、“学知桥”、“交大”、“交通大学”、 “上海市”、“静安区”等地理词,用户2的用户地理模型包括“学知桥”、“交 大”、“交通大学”等地理词,用户3的用户地理模型包括“交大”、“交通大学” 等地理词,用户4的用户地理模型包括“学知桥北”、“学知桥”等地理词。根 据倒排索引,从地理词“学知桥北”可以找到用户1的用户地理模型、用户4 的用户地理模型等,因而,确定匹配到的用户有用户1、用户4等。从地理词“学 知桥”可以找到用户1的用户地理模型、用户2的用户地理模型等,因而,确 定匹配到的用户有用户1、用户4等。依次类推,可以得到地理词“学知桥北”、 “学知桥”、“交大”和“交通大学”在用户地理模型库中相关联的用户地理模 型和对应的用户,称为关联用户。

所述匹配模块30计算所述匹配到的用户地理模型对应的用户与所述问题的 匹配得分,选取匹配得分满足预设条件的用户形成所述用户列表。即,计算每 一个关联用户(将步骤B确定的用户称为关联用户)的匹配得分。所述匹配得 分为从所述问题中提取的地理词的最终权重之和。其中,所述最终权重为地理 词在命中的用户地理模型中的原始地理权重与地理词的当前地理权重的乘积。

在本实施例中,用户1的匹配得分=地理词“学知桥北”的当前地理权重* “学知桥北”在用户1的用户地理模型中的原始地理权重+地理词“学知桥”的 当前地理权重*“学知桥”在用户1的用户地理模型中的原始地理权重+地理词 “交大”的当前地理权重*“交大”在用户1的用户地理模型中的原始地理权重 +地理词“交通大学”的当前地理权重*“交通大学”在用户1的用户地理模型 中的原始地理权重;用户2的匹配得分=地理词“学知桥”的当前地理权重*“学 知桥”在用户2的用户地理模型中的原始地理权重+地理词“交大”的当前地理 权重*“交大”在用户2的用户地理模型中的原始地理权重+地理词“交通大学” 的当前地理权重*“交通大学”在用户2的用户地理模型中的原始地理权重;用 户3的匹配得分=地理词“交大”的当前地理权重*“交大”在用户3的用户地 理模型中的原始地理权重+地理词“交通大学”的当前地理权重*“交通大学” 在用户3的用户地理模型中的原始地理权重;用户4的匹配得分=地理词“学知 桥北”的当前地理权重*“学知桥北”在用户4的用户地理模型中的原始地理权 重+地理词“学知桥”的当前地理权重*“学知桥”在用户4的用户地理模型中 的原始地理权重。依次类推,可计算得到各关联用户的匹配得分。

所述预设条件包括:匹配得分排在前N个,N为预设的正整数;或者,匹 配得分达到预设的得分阈值。根据步骤2中的匹配得分可将用户进行排序,并 判断所述关联用户的数量是否超过该预设的N值,若超过,取得得分最高的前 N个用户形成所述用户列表,默认设置N为10000,则取前10000个用户。若 不超过,则取匹配得分达到预设的得分阈值的关联用户形成所述用户列表。

在本实施例中,问题推送模块40将所接收的问题“请问学知桥北到交大 怎么走?在线等答案”,推送给所述用户列表中的用户。系统为每一个用户 维护一个推送问题的列表,该用户推送问题的列表的显示方式,在本发明中 不作限制,本领域技术人员可根据实际的应用需求而确定。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然, 在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

通过以上的实施例的描述可知,本领域的技术人员可以清楚地了解到本 申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本 申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的 形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、 磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机, 信息推送服务器,或者网络设备等)执行本申请各个实施例或者实施例的某 些部分所述的方法。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明 的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或 者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络 单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例 方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理 解并实施。

本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计 算机、信息推送服务器计算机、手持设备或便携式设备、平板型设备、多处 理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、 小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述, 例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类 型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中 实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处 理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备 在内的本地和远程计算机存储介质中。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号