首页> 中国专利> 一种从用户url访问记录中提取用户兴趣话题的系统

一种从用户url访问记录中提取用户兴趣话题的系统

摘要

一种从用户url访问记录中提取用户兴趣话题的系统,所述系统包括搜索词获取模块、数据过滤和整理模块、用户兴趣话题和话题搜索词提取模块、用户搜索词预测模块、搜索网址数据库、用户-话题数据库和话题-搜索词数据库,其基于用户-搜索词列表数据,得到用户对所有兴趣话题中的搜索词的权重,确定用户可能会喜欢的搜索词。本系统将用户、话题与搜索词相互关联,针对性强、个性化程度高、用户体验好。

著录项

  • 公开/公告号CN103714120A

    专利类型发明专利

  • 公开/公告日2014-04-09

    原文格式PDF

  • 申请/专利权人 上海河广信息科技有限公司;

    申请/专利号CN201310643379.3

  • 发明设计人 刘臻;彭正超;徐锡荣;杨愉存;

    申请日2013-12-03

  • 分类号G06F17/30;

  • 代理机构上海顺华专利代理有限责任公司;

  • 代理人陈淑章

  • 地址 200433 上海市杨浦区国定路335号1号楼11010室

  • 入库时间 2024-02-19 22:53:23

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-23

    授权

    授权

  • 2014-05-07

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

    实质审查的生效

  • 2014-04-09

    公开

    公开

说明书

技术领域

本发明涉及一种从用户url访问记录中提取用户兴趣话题的系统。

背景技术

现有的搜索词预测,大多是基于对多数人的搜索行为和习惯进行统计 分析或数据挖掘,得到的是大多数人的搜索偏好,其预测的结论立足于大 数据,预测结果准确度高,能得出用户的一般行为。

但同时,现有的搜索词预测缺乏一定的灵话性,用户得到的是与其他 用户相同的预测结果,个性化程度低,用户体验差。

发明内容

为解决上述问题,本发明提供了一种从用户url访问记录中提取用户 兴趣话题的系统,所述系统包括搜索词获取模块、数据过滤和整理模块、 用户兴趣话题和话题搜索词提取模块、用户搜索词预测模块、搜索网址数 据库、用户-话题数据库和话题-搜索词数据库,

其中,搜索网址数据库保存网址数据,包括已知的搜索引擎的域名、 名称、搜索词在url中的字段位置、收录日期、上次更新日期以及本条目 被匹配次数等;搜索词获取模块包括搜索词识别子模块,搜索词识别子模 块根据搜索网址数据库中的已有数据,识别出用户访问的用户url访问记 录中的搜索词并进行提取;数据过滤和整理模块对识别到的用户搜索词进 行数据预处理,得到并输出用户-搜索词列表数据;用户兴趣话题和话题搜 索词提取模块根据数据过滤和整理模块输出的用户-搜索词列表数据提取 用户感兴趣的话题以及属于同一话题的搜索词列表数据,提取的结果分别 保存到用户-话题数据库和话题-搜索词数据库中,并计算用户在兴趣话题 上的权重和此话题内的所有搜索词的占比权重;用户搜索词预测模块将用 户在兴趣话题上的权重乘以此话题内的所有搜索词的占比权重,得到用户 对所有兴趣话题中的搜索词的权重,然后,将用户对搜索词的权重按照大 小排序,取排名靠前的搜索词作为用户可能会喜欢的搜索词。

特别的,搜索词识别子模块首先从用户url访问记录中取出网址记录, 根据标准网址格式解析将其解析成多级域名和多级目录两部分;然后,在 搜索网址数据库中检索域名,如正确识别,就得到此域名下搜索词字段位 置,进而在多级目录中将该搜索词字段对应的搜索词取出,得到用户访问u rl中的搜索词内容,并保存。

进一步,搜索词获取模块还包括搜索网址数据库更新子模块,其用于 维护网址数据库,包括增加新的搜索网址和去除无效的搜索网址子模块, 若在搜索网址数据库中没有正确识别出用户访问的用户url访问记录中的 搜索词,则将此url网页地址计入匹配失败日志文件;搜索网址数据库更 新子模块定期扫描匹配失败日志文件,判断失败网址是否为满足OpenSear ch标准的搜索网址,若满足,则将其将此网页的名称、多级域名、搜索词 在url网页地址的字段位置、收录日期等信息作为一条新纪录自动加入搜 索网址数据库;定期检索搜索词网址数据库中的匹配次数和修改次数两列, 将匹配次数为0以及修改次数为0的记录去除。

此外,本系统还包括用户编号与搜索词编号还原模块,数据过滤和整 理模块还输出用户列表数据和搜索词列表数据,其中,用户-搜索词列表数 据包括三列,分别是用户id编号,搜索词id编号和搜索频次,用户列表 数据为两列,分别是用户代号IMSI和用户id编号,搜索词列表数据包括 两列,分别是搜索词和搜索词id编号,用户编号与搜索词编号还原模块将 用户列表数据和搜索词列表数据中的用户id编号和搜索词id编号还原为 用户号IMSI和搜索词。

其中,用户兴趣话题和话题搜索词提取模块首先根据数据过滤和整理模 块输出的用户-搜索词列表数据,构建一个m行n列的用户-搜索词矩阵V, 其中m,n分别为用户的数量和搜索词数量;矩阵V的每一行表示一个用户 的搜索记录,行中的数值为用户对搜索词的搜索频次,对于用户未搜索的 关键词,用数值0填充,然后,采用非负矩阵分解的方法将用户-搜索词矩 阵V分解为两个非负矩阵W和H的乘积,分解用户-搜索词矩阵的方法是求 取最优的wia和hbj,使得求解后的最小二乘差值与原矩阵V最小,即求解以 下带有约束项的优化目标函数,得到最优的wia和hbj

argminwia0,hbj0Σi=1mΣj=1n(vij-wiahbj)2

满足0<a≤r,0<b≤r,r<<m,r<<n,

最后,W和H分别为m*r和r*n的矩阵,r是用于控制提取的话题个数 的参数,W表示用户-话题矩阵,H表示话题-搜索词矩阵,W的每一行表示 用户对于给定的r个话题的兴趣程度,即用户在兴趣话题上的权重,H的每 一行表示话题中搜索词所占的重要性,即此话题内的这一搜索词的占比权 重。

此外,本系统还包括用户兴趣更新模块,其利用过滤和整理模块处理 输出的用户-搜索词列表数据更新用户的兴趣话题,对系统中已有记录用 户,更新用户兴趣话题;对于不存在记录的用户,直接利用新数据计算得 到的话题作为用户的兴趣话题。

其中,用户-话题更新模块的更新方法如下:对于系统中出现的新用户, 将其搜索记录构建为一个长度为n的向量u,n是系统已识别的搜索词数量, 向量的每个维度的数值用新用户搜索对于词汇的频次,对于用户没有搜索 的词汇,用0进行填充,利用非负最小二乘法求解方程

HTX=u,

其中,HT为话题-搜索词矩阵的转置,每一列表示一个话题下的高频关 键词的权重,求解得到的长度为r的向量x就是用户对r个兴趣话题的权 重;对于系统已有的用户,将其新产生的搜索记录视作一个新用户产生的 记录,然后对其使用上述针对新用户的兴趣话题提取方法对其提取话题得 到长度为r的话题向量unew,然后用一个更新参数α对用户的兴趣话题进行 更新,

ui=(1-α)uoldi+αunewiifuoldi0unewiifuoldi=0,

另外,话题搜索词更新模块利用数据过滤和整理模块处理输出的用户- 搜索词列表数据来更新话题-搜索词数据库,首先利用新数据计算新的话 题,然后将计算结果与原有话题进行比较,并进行合并和更新。

其中,话题-搜索词更新模块更新话题的方法包括:定期积累一定量的 用户-搜索词数据后,进行一次非负的矩阵分解,分解得到Wnew和Hnew矩阵, Hnew为新的话题-搜索词矩阵,矩阵大小为mnew*rnew,原有的话题-搜索词矩 阵为Hold,对Hnew中的每一个话题hnew(一行),计算其与原有Hold中的每一个 话题hold的余弦相似度:

Sim(hold,hnew)=<hnew,hold>||hold||||hnew||,

如果相似度大于给定的阈值t,就将其认定为属于同一个话题,将其合 并为一个话题;如果相似度小于给定阈值t,那么将其为一个新话题加入到 原有的话题-搜索词矩阵中,合并的方式用如下公式计算:

hi=(1-β)holdi+βhnewiifholdi0hnewiifholdi=0.

附图说明

图1为本发明的从用户url访问记录中提取用户兴趣话题系统的系统 结构图;

图2为本发明的从用户url访问记录中提取用户兴趣话题系统中的搜 索词获取模块的工作流程图;

图3为应用本发明的从用户url访问记录中提取用户兴趣话题系统的 搜索词获取示例图;

图4为本发明的从用户url访问记录中提取用户兴趣话题系统中的搜 索词过滤和整理模块的工作流程图;

图5为应用本发明的从用户url访问记录中提取用户兴趣话题系统的 用户-话题和话题-搜索词提取示例图;

图6为应用本发明的从用户url访问记录中提取用户兴趣话题系统的 用户-话题更新示例图;

图7为应用本发明的从用户url访问记录中提取用户兴趣话题系统的 更新话题搜索词示例图;

图8为应用本发明的从用户url访问记录中提取用户兴趣话题系统的 用户可能感兴趣搜索词预测示例图。

具体实施方式

下面结合附图对本发明作进一步详细说明。

图1为本发明的从用户url访问记录中提取用户兴趣话题系统的系统 结构图,如图所示,所述系统包括搜索词获取模块、数据过滤和整理模块、 用户兴趣话题和话题搜索词提取模块、用户兴趣更新模块、话题搜索词更 新模块、用户搜索词预测模块、搜索网址数据库、用户-话题数据库和话题 -搜索词数据库。

1.搜索词获取模块

搜索词获取模块从用户url访问记录中识别出用户的搜索词,包括搜索 词识别子模块、搜索网址数据库更新子模块,用户url访问记录中记录有 用户访问的网页地址数据。搜索网址数据库保存的数据包括已知的搜索引 擎的域名、名称、搜索词在url中的字段位置、收录日期、上次更新日期 以及本条目被匹配次数等。搜索词识别子模块根据搜索网址数据库中的已 行数据,识别出用户访问的用户url访问记录中的搜索词并进行提取。搜 索网址数据库更新子模块负责维护网址数据库,包括增加新的搜索网址和 去除无效的搜索网址。

搜索词获取模块的处理流程如图2所示。首先,从用户url访问记录 中取出网址记录,根据标准网址格式解析将其解析成多级域名和多级目录 两部分;然后,在搜索网址数据库中检索域名,如正确识别,就得到此域 名下搜索词字段位置,进而在多级目录中将该搜索词字段对应的搜索词取 出,得到用户访问url中的搜索词内容,并保存;若在搜索网址数据库中 没有正确识别,则将此url网页地址计入匹配失败日志文件;搜索网址数 据库更新子模块定期扫描匹配失败日志文件,判断失败网址是否为满足 OpenSearch标准的搜索网址,若满足,则将其将此网页的名称、多级域名、 搜索词在url网页地址的字段位置、收录日期等信息作为一条新纪录自动 加入搜索网址数据库;定期检索搜索词网址数据库中的匹配次数和修改次 数两列,将匹配次数为0以及修改次数为0的记录去除。【“网页访问记 录”包括用户访问的url记录,已修改为更名确的“用户url访问记录”。】

如图3所示的用户url访问记录,通过搜索词获取模块提取到的信息 是在“手机百度”搜索了“智能手机”这一关键词。具体的搜索词识别过 程为:首先,将此url解析为多级域名:m.baidu.com和多级目录: /ssid=0/from=0/bd_page_type=1/uid=1F15D3AA08F0E0070304875B3894CB 89/pu=sz224_220,tamiddle_3_537,usm6/baiduid=F5569797655A537 8853CFA12C8350833/s?ref=www_colorful&sa=tb&prest=111041&rn=10&st =111041&tn=webmain&uc_param_str=upssntdnvelami&word=智能手机&su= 搜索;然后,根据多级域名m.baidu.com查询搜索网址数据库,得到此用 户在“手机百度”搜索引擎上发起了一次搜索,且搜索词内容在“word” 字段中;最后将多级目录中“word”对应字段内容“智能手机”提取并作 为用户搜索词保存。

若上一步在搜索网址数据库中查询时失败,那么此url地址将被保存 到匹配失败日志,搜索词数据库更新模块扫描到这条记录后,如果通过网页 分析发现此url满足OpenSearch标准,则将此搜索网址“m.baidu.com”、 网页名称“手机百度”、搜索词对应的字段名称“word”等内容作为一条 记录加入搜索网址数据库。

2.数据过滤和整理模块

数据过滤和整理模块对识别到的用户搜索词进行数据预处理,去除无效 乱码数据;过滤搜索量过小的词汇,包括乱码及无意义词汇去除模块和搜 索词频次统计模块。数据过滤和整理的流程如图4所示。

乱码及无意义词汇去除模块识识别出搜索词汇中的乱码词汇、无意义词 汇,包括分割符号、百分号等,进而将识别到的词汇从搜索词数据中去除。

搜索频次统计模块负责统计已有的搜索词访问频次和访问人次,并将小 于给定阈值的搜索词去除。

数据过滤和整理模块还包括用户及搜索词编号模块,对用户-搜索词数 据中的用户和搜索词分别进行编号。

数据过滤和整理模块输出用户-搜索词列表数据、用户列表数据和搜索 词列表数据。用户-搜索词列表数据包括三列,分别是用户id编号,搜索 词id编号和搜索频次;用户列表数据为两列,分别是用户代号(IMSI)和 用户id编号;搜索词列表数据包括两列,分别是搜索词和搜索词id编号。

3.用户-话题和话题-搜索词提取模块

用户兴趣话题和话题搜索词提取模块根据数据过滤和整理模块输出的 用户-搜索词记录列表数据提取用户感兴趣的话题以及属于同一话题的搜 索词列表数据,话题数目可以根据需求由事先给定的参数确定,参数的值 即为提取出的话题数目。提取的结果分别保存到用户-话题数据库和话题- 搜索词数据库中,计算用户在兴趣话题上的权重和此话题内的所有搜索词 的占比权重。

具体实现的步骤为:

首先,根据数据过滤和整理模块输出的用户-搜索词列表数据,构建一 个m行n列的用户-搜索词矩阵V,其中m,n分别为用户的数量和搜索词数 量;矩阵V的每一行表示一个用户的搜索记录,行中的数值为用户对搜索 词的搜索频次,对于用户未搜索的关键词,用数值0填充。

然后,采用非负矩阵分解的方法将用户-搜索词矩阵V分解为两个非负 矩阵W和H的乘积。分解用户-搜索词矩阵的方法是求取最优的wia和hbj,使 得求解后的最小二乘差值与原矩阵V最小,即求解以下带有约束项的优化 目标函数,得到最优的wia和hbj

argminwia0,hbj0Σi=1mΣj=1n(vij-wiahbj)2

满足0<a≤r,0<b≤r,r<<m,r<<n

最后,W和H分别为m*r和r*n的矩阵,r是用于控制提取的话题个数 的参数,W表示用户-话题矩阵,H表示话题-搜索词矩阵。W的每一行表示 用户对于给定的r个话题的兴趣程度,数值越大表示用户对这一话题兴趣 越大,即用户在兴趣话题上的权重越大;H的每一行表示话题中搜索词所占 的重要性,数值越大表示这一搜索词在本话题中的重要性越大,即此话题 内的这一搜索词的占比权重越大。

图5是用户-话题和话题-搜索词提取的一个示例,边上的数字代表搜索 的次数或权重。用户A和B分别搜索了一系列搜索词,根据这些关键词提 取到两个话题,每个话题分别包含一些搜索词。如图5所示,用户的搜索 词被转换成了用户对话题的权重和每个话题下搜索词的权重,完成对于刻 画用户行为,提取用户兴趣的功能。

4.用户-话题更新模块

用户兴趣更新模块利用用户新的url访问记录经数据过滤和整理模块处 理输出的用户-搜索词列表数据更新用户的兴趣话题,对系统中已有记录用 户,更新用户兴趣话题;对于不存在记录的用户,直接利用新数据计算得 到的话题作为用户的兴趣话题。

用户-话题更新模块包括实时更新模块和定期更新模块。实时更新模块 负责将已有用户产生的新数据进行计算,并实时的更新到用户话题中,调 整用户在各个话题下的权重。

定期更新模块负责将一段时间内积累的数据进行统一计算,更新新用户 的兴趣话题到用户-话题数据库中。

更新用户话题的方法如下:

对于系统中出现的新用户,将其搜索记录构建为一个长度为n的向量u, n是系统已识别的搜索词数量,向量的每个维度的数值用新用户搜索对于词 汇的频次,对于用户没有搜索的词汇,用0进行填充。

利用非负最小二乘法求解方程

HTx=u

其中,HT为话题-搜索词矩阵的转置,每一列表示一个话题下的高频关 键词的权重。求解得到的长度为r的向量x就是用户对r个兴趣话题的权 重。

对于系统已有的用户,将其新产生的搜索记录视作一个新用户产生的记 录,然后对其使用上述针对新用户的兴趣话题提取方法对其提取话题得到 长度为r的话题向量unew,然后用一个更新参数α对用户的兴趣话题进行更 新:

ui=(1-α)uoldi+αunewiifuoldi0unewiifuoldi=0

具体的,如果用户之前对话题i的权重为0,新纪录里面出现了话题i 的权重,那么直接将用户对话题i的权重设置为新纪录的权重;如果用户 之前对话题i的权重为,那么以α的比例将新纪录更新到用户的兴趣话 题中。

图6是用户-话题更新的示例,用户C是一个新用户,其搜索了三个关 键词,经过计算得出用户的三个关键词同属一个话题3,于是得到这个新用 户的话题权重。经过如图7所示的话题合并步骤后,得到新用户对合并后 的话题权重。

5.话题-搜索词更新模块

话题搜索词更新模块利用用户新的url访问记录经数据过滤和整理模块 处理输出的用户-搜索词列表数据来更新话题-搜索词数据库。首先利用新 数据计算新的话题,然后将计算结果与原有话题进行比较,并进行合并和 更新。

话题-搜索词更新模块包括实时更新和定期更新模块。实时更新模块负 责将用户对已有关键词的搜索记录进行计算,并实时更新到话题-关键词数 据中。定期更新模块将积累的用户对新词汇的搜索记录进行计算,发现新 的搜索词话题,然后将新话题合并或更新到原有话题中。

本发明所采用的上更新话题的方法包括:定期积累一定量的用户-搜索 词数据后,进行一次非负的矩阵分解,分解得到Wnew和Hnew矩阵,Hnew为新 的话题-搜索词矩阵,矩阵大小为mnew*rnew

原有的话题-搜索词矩阵为Hold,对Hnew中的每一个话题hnew(一行),计 算其与原有Hold中的每一个话题hold的余弦相似度:

Sim(hold,hnew)=<hnew,hold>||hold||||hnew||

如果相似度大于给定的阈值t,就将其认定为属于同一个话题,将其合 并为一个话题;如果相似度小于给定阈值t,那么将其为一个新话题加入到 原有的话题-搜索词矩阵中。

合并的方式用如下公式计算:

hi=(1-β)holdi+βhnewiifholdi0hnewiifholdi=0

具体的,如果话题中已有搜索词i,那么以β为比例将新话题中词搜索词 的权重加入到原来的话题中;如果搜索词i没有在原有话题中出现过,那 么直接将其加入到原有话题中更新话题下的搜索词。

图7是话题2和话题3合并的一个示例,首先,将新话题按照中的三个 新关键词按照权重和相似度相乘,然后判断“连衣裙”这一搜索词已经存 在,按照比例合并,其他两个搜索词不存在,直接加入到话题2中。

6.用户搜索词预测模块

用户搜索词预测模块将用户在兴趣话题上的权重乘以此话题内的所有 搜索词的占比权重,得到用户对所有兴趣话题中的搜索词的权重;然后, 将用户对搜索词的权重按照大小排序,取排名靠前的搜索词作为用户可能 会喜欢的搜索词。

用户搜索词预测的示例如图8所示,从用户-话题和话题-搜索词数据 库中得到用户对话题2的权重和话题2下包含的搜索词权重,去除掉用户 已经搜索过的词汇,得到用户可能会喜欢的搜索词两个预测结果。

7.用户编号与搜索词编号还原模块

以上步骤都只用到了用户-搜索词列表数据,因此得到的用户兴趣话 题、用户搜索词预测、话题内高频搜索词结果都是用用户id和搜索词id 表示的。

为了实现结果的直观可视化,本发明的从用户url访问记录中提取用 户兴趣话题系统的系统还可以包括用户编号与搜索词编号还原模块,其结 合用户列表和搜索词列表最终结果中的用户编号和搜索词编号还原为用户 代码(IMSI)和搜索词的格式。

综上,本发明的从用户用户url访问记录中提取用户兴趣话题系统通 过分析用户的网页访问日志,从中提取出用户的搜索词,然后对搜索词数 据进行过滤,去除无意义乱码以及访问量过小的词汇,在此基础上,提取 用户兴趣话题和话题搜索词并且依据新数据动态更新用户兴趣话题和话题 搜索词数据库,此外,还可以进行用户可能感兴趣的搜索词预测。

以上已对本发明创造的较佳实施例进行了具体说明,但本发明创造并 不限于所述实施例,熟悉本领域的技术人员在不违背本发明创造精神的前 提下还可作出种种的等同的变型或替换,这些等同的变型或替换均包含在 本申请权利要求所限定的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号