微博排序、搜索、展示方法和系统的制作方法

文档序号:6364465阅读:137来源:国知局
专利名称:微博排序、搜索、展示方法和系统的制作方法
微博排序、搜索、展示方法和系统
技术领域
本发明涉及网络技术,特别的涉及一种微博排序、搜索、展示方法和系统。
背景技术
随着网络技术的发展,微博已经成为用户相互之间沟通交流以及用户展示自己的重要平台。用户可通过搜索微博来获取自己感兴趣的资讯。传统的微博排序的方法一般将微博按照时间先后进行排序,将时间较新的微博靠前排序。传统的微博排序方法,由于将所有用户的微博混合在一起,只是按照时间先后顺序进行排列,导致用户需要花费大量的精力和时间从纷繁的微博中找到自己感兴趣的、与自己有关的微博。

发明内容基于此,有必要提供一种能方便用户查看的微博排序方法。一种微博排序方法,包括以下步骤:获取用户请求的微博信息;提取所述微博信息中的微博发表用户信息与内容信息,对所述微博信息进行评分;根据所述评分对所述微博信息进行排序;按照所述排序的结果展示所述微博信息。优选的,提取所述微博信息中的微博发表用户信息对所述微博信息进行评分的步骤包括:获取所述微博发表用户的微博操作记录,根据所述微博操作记录计算所述微博发表用户的活跃度;根据所述活跃度对所述微博信息进行评分。优选的,提取所述微博信息中的微博发表用户信息对所述微博信息进行评分的步骤包括:获取所述微博发表用户的个人信息以及微博请求用户的个人信息,计算所述微博发表用户的个人信息与所述微博请求用户的个人信息之间的相似度;获取所述微博发表用户与所述微博请求用户之间的交互记录,根据所述交互记录计算所述微博发表用户与所述微博请求用户之间的关联度;根据所述相似度和所述关联度对所述微博信息进行评分。优选的,提取所述微博信息中的内容信息对所述微博信息进行评分的步骤包括:获取所述微博信息中的微博内容,根据所述微博内容以及微博主题类别的特征获取所述微博信息中的微博的主题类别向量;获取微 博请求用户的历史微博内容,根据所述历史微博内容以及微博主题类别的特征获取所述微博请求用户的历史微博的主题类别向量;根据所述微博信息中的微博的主题类别向量和所述微博请求用户的历史微博的主题类别向量,计算所述微博信息中的微博内容与所述微博请求用户的历史微博内容之间的相似度;根据所述相似度对所述微博信息进行评分。优选的,在提取所述微博信息中的内容信息对所述微博信息进行评分的步骤之前,所述方法还包括:获取预设的微博主题类别;获取所述微博主题类别的训练子集;从所述训练子集中提取出所述微博主题类别的特征。优选的,所述获取所述微博主题类别的训练子集的步骤包括:根据所述微博主题类别的关键词搜索微博,获取所述微博主题类别的初始训练子集;按照预设次数重复执行以下步骤:统计所述初始训练子集中的高频词;根据所述高频词搜索微博,将搜索结果加入所述初始训练子集。优选的,在所述按照 所述排序的结果展示所述微博信息的步骤之前,所述方法还包括:按照预设的微博展示类别对所述微博信息中的微博进行归类,得到所述微博所属的展示类别;所述按照所述排序的结果展示所述微博信息的步骤为:按照所述微博所属的展示类别及所述排序的结果展示所述微博信息。基于此,还有必要提供一种方便用户查看的微博排序系统。—种微博排序系统,包括:微博信息获取模块,用于获取用户请求的微博信息;评分模块,所述评分模块包括用户信息评分模块和内容信息评分模块,所述用户信息评分模块用于提取所述微博信息中的微博发表用户信息,根据所述微博发表用户信息对所述微博信息进行评分;所述内容信息评分模块用于提取所述微博信息中的内容信息,根据所述内容信息对所述微博信息进行评分;排序模块,用于根据所述评分对所述微博信息进行排序;展示模块,用于按照所述排序的结果展示所述微博信息。优选的,所述用户信息评分模块包括:活跃度计算单元,用于获取所述微博发表用户的微博操作记录,根据所述微博操作记录计算所述微博发表用户的活跃度;第一评分单元,根据所述活跃度对所述微博信息进行评分。优选的,所述用户信息评分模块包括:个人信息相似度计算单元,用于获取所述微博发表用户的个人信息以及微博请求用户的个人信息,计算所述微博发表用户的个人信息与所述微博请求用户的个人信息之间的相似度;
关联度计算单元,用于获取所述微博发表用户与所述微博请求用户之间的交互记录,根据所述交互记录计算所述微博发表用户与所述微博请求用户之间的关联度;第二评分单元,用于根据所述相似度和所述关联度对所述微博信息进行评优选的,所述内容信息评分模块包括:提取所述微博信息中的内容信息对所述微博信息进行评分的步骤包括:类别向量提取单元,用于获取所述微博信息中的微博内容,根据所述微博内容以及微博主题类别的特征获取所述微博信息中的微博的主题类别向量;所述类别向量提取单元还用于获取微博请求用户的历史微博内容,根据所述历史微博内容以及微博主题类别的特征获取所述微博请求用户的历史微博的主题类别向量;内容相似度计算单元,用于根据所述微博信息中的微博的主题类别向量和所述微博请求用户的历史微博的主题类别向量,计算所述微博信息中的微博内容与所述微博请求用户的历史微博内容之间的相似度;第三评分单元,用于根据所述相似度对所述微博信息进行评分。优选的,所述系统还包括分类模型训练模块,所述分类模型训练模块包括:主题类别获取模块,用于获取预设的微博主题类别;训练集获取模块,用于获取所述微博主题类别的训练子集;特征提取模块,用于从所述训练子集中提取出所述微博主题类别的特征。
·
优选的,所述训练集获取模块用于根据所述微博主题类别的关键词搜索微博,获取所述微博主题类别的初始训练子集,并按照预设次数重复执行以下步骤:统计所述初始训练子集中的高频词,根据所述高频词搜索微博,将搜索结果加入所述初始训练子集。优选的,所述系统还包括:展示类别分类模块,用于按照预设的微博展示类别对所述微博信息中的微博进行归类,得到所述微博所属的展示类别;所述展示模块还用于按照所述微博所属的展示类别及所述排序的结果展示所述微博信息。此外,还提供一种方便用户查看的微博搜索方法。一种微博搜索方法,按照上述微博排序方法对微博搜索结果进行排序,其中,所述获取用户请求的微博信息的步骤包括:根据用户输入的关键字进行搜索,得到所述用户请求的微博信息。此外,还提供一种方便用户查看的微博搜索系统。一种微博搜索系统,包括上述微博排序系统,其中,所述微博信息获取模块用于根据用户输入的关键字进行搜索,得到所述用户请求的微博信息。此外,还提供一种方便用户查看的微博展示方法。一种微博展示方法,按照上述微博排序方法对微博请求结果进行排序,其中,所述获取用户请求的微博信息的步骤包括:根据用户标识对应的微博请求信息,得到所述用户请求的微博信息。此外,还提供一种方便用户查看的微博展示系统。一种微博展示系统,包括上述微博排序系统,其中,所述微博信息获取模块用于根据用户标识对应的微博请求信息,得到所述用户请求的微博信息。
上述微博排序、搜索、展示方法和系统,提取微博信息中的微博发表用户信息与内容信息,对微博进行评分,并按照评分对微博信息进行排序,可将与用户相关的微博信息排在前面,从而方便用户查看微博信息。

图1为一个实施例中的微博排序方法的流程示意图;图2为一个实施例中的提取微博信息中的微博发表用户信息对微博信息进行评分的流程示意图;图3为另一个实施例中的提取微博信息中的微博发表用户信息对微博信息进行评分的流程示意图;图4为一个实施例中的提取微博信息中的内容信息对微博信息进行评分的流程示意图;图5为一个实施例中的训练微博主题类别的特征的流程示意图;图6为一个实施例中的获取微博主题类别的训练子集的流程示意图;图7为一个实施例中的获取科技网络类训练子集的示意图;图8为一个实施例中的微博排序方法的原理示意图;图9为一个实施 例中的微博排序系统的结构示意图;图10为一个实施例中的评分模块的结构示意图;图11为一个实施例中的用户信息评分模块的结构示意图;图12为另一个实施例中的用户信息评分模块的结构示意图;图13为一个实施例中的内容信息评分模块的结构示意图;图14为一个实施例中的分类模型训练模块的结构示意图。
具体实施方式如图1所示,在一个实施例中,一种微博排序方法,包括以下步骤:步骤S101,获取用户请求的微博信息。步骤S102,提取微博信息中的微博发表用户信息与内容信息,对微博信息进行评分。优选的,若微博信息中的微博发表用户信息和内容信息与微博请求用户的相关性高,则对该微博信息的评分也高。步骤S103,根据评分对微博信息进行排序。优选的,按照评分的高低对微博信息进行排序,即微博信息评分越高,其排序越靠
N /.刖。步骤S104,按照排序的结果展示微博信息。上述微博排序方法,提取微博信息中的微博发表用户信息与内容信息,对微博进行评分,并按照评分对微博信息进行排序,可将与用户相关的微博信息排在前面,从而方便用户查看微博信息。如图2所示,在一个实施例中,步骤S102中提取微博信息中的微博发表用户信息对微博信息进行评分的步骤包括:
步骤S112,获取微博发表用户的微博操作记录,根据微博操作记录计算微博发表用户的活跃度。在一个实施例中,可根据微博发表用户的ID在已经存储了用户的微博操作记录的数据库中查找到用户的ID对应的微博操作记录。优选的,微博操作记录可包括:是否为VIP用户、微博更新频率、微博转贴率、微博原创率、微博被转发评论次数、微博平均字数、搞笑分值等。在一个实施例中,搞笑分值可根据其它用户对微博发表用户的微博的搞笑评分获得。微博发表用户的微博操作记录体现了微博发表用户的活跃度。具体的,若微博发表用户为VIP用户,或者其微博更新频率高、转帖率高、原创率高、被转发评论次数多、平均字数多、或搞笑分值高等,则可相应的设置微博发表用户的活跃度也高。步骤S122,根据活跃度对微博信息进行评分。优选的,微博发表用户的活跃度高,可相应的增加对该微博的评分,因为活跃度高的微博发表用户发表的微博更容易让用户感兴趣。本实施例中,对活跃度高的微博发表用户 的微博信息的评分也高,并将评分高的微博信息排在前面,即将更能引起用户兴趣的微博信息排在前面,从而方便了用户查看其感兴趣的微博信息。如图3所示,在一个实施例中,步骤S102中提取微博信息中的微博发表用户信息对微博信息进行评分的步骤包括:步骤S132,获取微博发表用户的个人信息以及微博请求用户的个人信息,计算微博发表用户的个人信息与微博请求用户的个人信息之间的相似度。在一个实施例中,可根据用户的ID在已经存储了用户的个人信息的数据库中查找到用户的ID对应的个人信息。具体的,个人信息可包括:兴趣爱好、学历、专业、地域、个性签名、收藏的微博信息、共同好友数、用户类型信息等。在一个实施例中,用户类型可分为:科技型、娱乐型、体育型、艺术型、政治型等。优选的,用户类型信息包括用户类型向量,用户类型向量的分量表示用户偏向某一用户类型的分值,例如,可定义用户类型向量的第一个分量表示科技型分值、第二个分量表示娱乐型分值,等等依此类推;若用户偏向科技型的分值为3、偏向娱乐型的分值为4,则用户类型向量可表示为(3,4,...)。优选的,可选择用户类型向量的分量中分值最高的分量对应的用户类型为该用户的用户类型。在一个实施例中,用户类型向量可通过用户手动设置获得,也可以通过统计用户关注的微博用户以及用户的好友的用户类型来获得。例如,用户关注的微博用户以及用户的好友中,属于科技型的人数为5,则可设置用户类型向量中科技型对应的分量为5。在一个实施例中,若用户的兴趣爱好相同或者兴趣爱好所属的分类相同,如都为艺术类,则可提高微博发表用户与微博请求用户的相似度的值。在一个实施例中,可在存储了兴趣爱好的所属的分类的数据库中查找用户的兴趣爱好所属的分类。相应的,若用户的学历相同,如都为本科,或都是博士以上学历,则也可增加用户之间的相似度的值。同样的,若用户的专业相同或专业所属的分科相同,或者用户的地域相同或所属的地区相同,或者用户个性签有相同的关键词,或者用户收藏的微博信息相同,或者用户的用户类型信息相似,或者用户之间的共同微博好友的数量超过设定的阈值等,都可以增加用户之间的相似度的值。在一个实施例中,还可通过计算上述用户类型向量的距离来获取用户类型信息的相似度,两用户类型向量的距离越小,则用户类型信息的相似度越高,相应的用户之间的相似度也高。步骤S142,获取微博发表用户与微博请求用户之间的交互记录,根据交互记录计算微博发表用户与微博请求用户之间的关联度。在一个实施例中,交互记录包括用户之间的引用、访问、评论、转发记录等。具体的,若用户之间的引用、访问、评论、转发次数高,则可相应的设置用户之间的关联度也高。步骤S152,根据上述相似度和关联度对微博信息进行评分。优选的,若微博发表用户与微博请求用户之间的相似度高或关联度高,则可增加对微博信息的评分。本实施例中,若微博发表用户与微博请求用户之间的个人信息相似度高或者二者之间的关联度高,则对微博信息的评分也高,并将评分高的微博信息排在前面,这些微博信息也是更可能引起微博请求用户的兴趣的微博信息,因而可方便用户查看其感兴趣的微博信息。在一个实施例中,步骤S102中提取微博信息中的微博发表用户信息对微博信息进行评分的步骤包括步骤S112 S152。步骤S152对微博信息的评分可在步骤S122对微博信息的评分的基础上进行,即综合根据微博发表用户的活跃度获得的评分以及根据微博发表用户与微博请求用户之间的个人信息相似度和关联度获取的评分作为微博信息的综合评分,并可设置上述两个评分在综合评分中所占的比重。如图4所示,在一个实施例中,步骤S102中提取微博信息中的内容信息对微博信息进行评分的步骤包括:步骤S162,获取微博信息中的微博内容,根据微博内容以及微博主题类别的特征获取微博信息中的微博的主题类别向量。优选的,微博内容包括微博的正文内容即微博发表用户发表的内容,微博内容还可包括微博的评论内容。在一个实施例中,若微博内容的字数不多,则可以获取该微博的发表用户在该微博发表时间点的相近时间(可预先设置)内发表的微博,将多条微博内容拼合成在一起。优选的,微博主题类别包括:政治军事、文化艺术、财经股票、情感人生、社会法制、娱乐八卦、科技网络、健康美食、体育运动、汽车房产、教育求职、时尚旅游等。优选的,主题类别向量的每一个分量表示微博内容偏向归属于某一主题类别的分值,例如,主题类别向量的第一个分量表示政治军事类的分值、第二个分量表示文化艺术类的分值,等等依次类推。则主题类别向量(5,10,...)表示微博内容偏向归属于政治军事类的分值为5,而偏向归属于文化艺术类的分值为10。优选的,可取分值最高的分量对应的主题类别为微博所属的主题类别。具体的,可预先训练出微博主题类别的特征,进一步的,可采用现有的朴素贝叶斯文本分类算法对微博内容进行分类,获得微博的主题类别向量,在此不再赘述。步骤S172,获取微博请求用户的历史微博内容,根据历史微博内容以及微博主题类别的特征获取微博请求用户的历史微博的主题类别向量。

具体的,可获取近期时间段(可预先设置)内微博请求用户发表的微博内容。优选的,获得多条历史微博的主题类别向量后,可以求该多个向量的平均值作为微博请求用户的历史微博的主题类别向量。步骤S182,根据微博信息中的微博的主题类别向量和微博请求用户的历史微博的主题类别向量,计算微博信息中的微博内容与微博请求用户的历史微博内容之间的相似度。具体的,可通过计算上述两个主题类别向量之间的距离来计算微博信息中的微博内容与微博请求用户的历史微博内容之间的相似度。优选的,距离越小,则设置相似度越闻。步骤S192,根据该相似度对微博信息进行评分。优选的,相似度越高,则对微博信息的评分越高。本实施例中,若微博信息中的微博内容与微博请求用户的历史微博内容的相似度高,则对微博信息的评分也高,并将评分高的微博信息排在前面,而这些靠前排列的微博内容更容易引起用户的兴趣,因而可方便用户查看其感兴趣的微博。如图5所示,在一个实施例中,在步骤S102中的提取微博信息中的内容信息对微博信息进行评分之前,需要预先训练出微博主题类别的特征,上述微博排序方法还包括:步骤S501,获取预设的微博主题类别。优选的,微博主题类别包括:政治军事、文化艺术、财经股票、情感人生、社会法制、娱乐八卦、科技网络、健康美食、体育运动、汽车房产、教育求职、时尚旅游等。步骤S502,获取微博主题类别的训练子集。优选的,为了·从训练子集中提取出主题类别更好的特征,可获取一定范围内尽可能多的微博训练样本。如图6所示,在一个实施例中,步骤S502的具体过程包括:步骤S512,根据微博主题类别的关键词搜索微博,获取微博主题类别的初始训练子集;步骤S522,按照预设次数重复执行以下步骤S532和步骤S542:步骤S532,统计初始训练子集中的高频词;步骤S542,根据高频词搜索微博,将搜索结果加入初始训练子集。具体的,可将微博主题类别名称及其拆分词作为微博主题类别的关键词,如政治军事类,可将政治、军事以及政治军事作为这一类别的关键词,并根据这些关键词进行搜索,获取该类别的初始训练子集。进一步的,可将初始训练子集进行预处理后,对其进行分词、过滤停用词的处理,并统计初始子集中的高频词。进一步的,可继续将高频词以及高频词的组合作为关键词进行搜索,以获得更多的微博训练样本。并按照预设次数重复统计初始训练子集中的高频词、将高频词作为关键词搜索微博并将搜索结果加入初始训练子集的步骤。例如,如图7所示,可将“科技、网络、科技网络”添加到查询集QS1,将QSl中的词作为关键词搜索微博,得到训练子集RSl ;统计RSl中的高频词,例如,得到“科学、IT、手机、数据、互联网”等等,将得到的高频词添加到QSl中,得到QS2 ;将QS2中的词以及词的组合作为关键词搜索微博,将获得的微博搜索结果加入RSl中,得到RS2 ;统计RS2中的高频词,并将得到的高频词添加至QS2,得到QS3 dfQS3中的词以及词的组合作为关键词搜索微博,将获得的微博搜索结果加入RS2中,得到RS3 ;依次类推,得到QS4和RS4,重复上述统计和搜索步骤,训练子集中样本的数量即会得到扩充。本实施例中获取微博主题类别的训练子集的方法可获得每一主题类别的大量的微博训练样本,为从训练子集中提取出各微博主题类别的特征提供了基础。
步骤S503,从训练子集中提取出微博主题类别的特征。具体的,可利用现有的分类训练方法对每一主题类别的训练子集中的微博内容进行训练,提取出每一主题类别的特征。在此不再赘述。在一个实施例中,在步骤S104之前,上述方法还包括:按照预设的微博展示类别对微博信息中的微博进行归类,得到微博所属的展示类别。具体的,展示类别可包括上文中微博信息的微博主题类别,如政治军事类、文化艺术类、财经股票类等。微博所属的主题类别可根据步骤S162中获取的微博信息的主题类别向量得到,可取主题类别向量中分值最高的分量对应的主题类别为微博信息所属的主题类别。在一个实施例中,除了微博主题类别外,还可以增加其它的展示类别,如好友类、地点类、搞笑类、求助 转发类、广告活动类等。微博信息是否属于好友类,可根据微博发表用户与微博请求用户是否为好友来判断。在一个实施例中,可根据微博发表用户的ID以及微博请求用户的ID在已经存储了好友对应关系的数据库中查找微博发表用户与微博请求用户之间是否为好友。微博信息是否属于地点类,则可根据微博发表用户与微博请求用户的地址是否属于同一地区(可设置为县、区等)来判断。微博是否属于搞笑类,则可根据微博发表用户的ID在已经存储了用户的搞笑分值的数据库中查找到的搞笑分值是否大于预设阈值来判断。在一个实施例中,用户的搞笑分值可根据其它用户对该用户的搞笑评分获得。微博信息是否属于求助转发类、广告活动类,则可根据微博内容中是否出现求助、广告高频词等来判断。在一个实施例中,微博展示类别还可以包括热门话题类。具体的,可解析网页内容获取高频记录;根据微博请求用户的历史微博内容对上述高频记录进行评分;根据高频记录评分选取搜索结果中的微博归为热门话题类。优选的,可根据现有的开源工具Html-parser对网页内容进行解析,得到出现次数超过预设阈值的词组,即高频记录。进一步的,可根据高频记录与微博请求用户的历史微博内容的相似度对高频记录进行评分。具体的,可统计高频记录在微博请求用户发表、转发、评论的微博内容中出现的次数,根据该次数对高频记录进行评分。最后,可选取评分靠前预设位的高频记录,并选取微博内容中出现该高频记录的微博信息,将该微博信息归为热门话题类。在本实施例中,步骤S104的具体过程为:按照微博所属的展示类别及上述排序的
结果展示微博信息。具体的,可将微博信息按照各展示类别分类展示,并在各展示类别中,将评分高的微博信息靠前排列。本实施例中,将微博信息分为多个展示类别进行展示,可方便用户选择自己感兴趣的微博类别进行查看,方便了用户的操作。另外,每一展示类别都是按照对微博的评分的高低顺序进行展示,排列顺序靠前的微博,其微博发表用户的活跃度较高、或微博发表用户的个人信息与微博请求用户的个人信息相似度较高、或微博发表用户与微博请求用户的关联度较高,从而可方便用户查看与自己有关的、感兴趣的微博。图8为一个实施例中的微博排序方法的原理示意图:
一种微博排序方法,可根据微博发表用户信息和内容信息对微博信息进行评分,微博发表用户信息评分记为U,内容信息评分记为C。其中,微博发表用户信息评分U可根据微博发表用户活跃度评分A、微博发表用户与微博请求用户的个人信息相似度评分P、微博发表用户与微博请求用户的关联度评分R计算得到。而微博发表用户活跃度评分A可根据微博发表用户的如下信息获得:是否为VIP用户、微博更新频率、微博转贴率、微博原创率、微博被转发评论次数、微博平均字数、搞笑分值,等等;微博发表用户与微博请求用户的个人信息相似度评分P可根据二者的如下信息获得:兴趣爱好、学历、专业、地域、个性签名、收藏的微博信息、共同好友数、用户类型信息,等等;微博发表用户与微博请求用户的关联度评分R可根据微博发表用户与微博请求用户之间的交互记录获得,交互记录包括引用、访问、评论、转发记录,等等。微博内容信息评分C可根据微博内容与微博请求用户的历史微博内容之间的相似度计算得到,其中,该相似度可根据微博主题类别向量与微博请求用户的历史微博主题类别向量之间的距离计算得到。最后,可整合以上评分获得微博信息的综合评分,在一个实施例中,综合评分=al*U+a2*C = bl*A+b2*P+b3*R+a2*C,其中:al、a2、bl、b2、b3为预设的系数。如图9所不,在一个实施例中,一种微博排序系统,包括微博信息获取模块10、评分模块20、排序模块30、展示模块40,其中:微博信息获取模块10用于获取用户请求的微博信息。评分模块20包括用户信息评分模块201和内容信息评分模块202,如图10所示,其中,用户信息评分模块201用于提取微博信息中的微博发表用户信息,根据微博发表用户信息对微博信息进行评分;内容信息评分模块202用于提取微博信息中的内容信息,根据内容信息对微博信息进行评分。用户信息评分模块201与内容信息评分模块202对微博信息评分得到综合评分。优选的,若微博信息中的 微博发表用户信息和内容信息与微博请求用户的相关性高,则该微博信息的综合评分也高。排序模块30用于根据上述评分对微博信息进行排序。优选的,排序模块30按照上述综合评分的高低对微博信息进行排序,即微博信息评分越高,其排序越靠前。展示模块40用于按照排序的结果展示微博信息。上述微博排序系统,提取微博信息中的微博发表用户信息与内容信息,对微博进行评分,并按照评分对微博信息进行排序,可将与用户相关的微博信息排在前面,从而方便用户查看微博信息。如图11所示,在一个实施例中,用户信息评分模块201包括活跃度计算单元211、第一评分单元221,其中:活跃度计算单元211用于获取微博发表用户的微博操作记录,根据微博操作记录计算微博发表用户的活跃度。在一个实施例中,活跃度计算单元211可根据微博发表用户的ID在已经存储了用户的微博操作记录的数据库中查找到用户的ID对应的微博操作记录。优选的,微博操作记录可包括:是否为VIP用户、微博更新频率、微博转贴率、微博原创率、微博被转发评论次数、微博平均字数、搞笑分值等。在一个实施例中,搞笑分值可根据其它用户对微博发表用户的微博的搞笑评分获得。微博发表用户的微博操作记录体现了微博发表用户的活跃度。具体的,若微博发表用户为VIP用户,或者其微博更新频率高、转帖率高、原创率高、被转发评论次数多、平均字数多、或搞笑分值高等,则可相应的设置微博发表用户的活跃度也高。第一评分单元221用于根据活跃度对微博信息进行评分。优选的,微博发表用户的活跃度高,第一评分单元221可相应的增加对该微博的评分,因为活跃度高的微博发表用户发表的微博更容易让用户感兴趣。本实施例中,对活跃度高的微博发表用户的微博信息的评分也高,并将评分高的微博信息排在前面,即将更能引起用户兴趣的微博信息排在前面,从而方便了用户查看其感兴趣的微博信息。如图12所示,在一个实施例中,用户信息评分模块201包括个人信息相似度计算单元231、关联度计算单元241、第二评分单元251,其中:个人信息相似度计算单元231用于获取微博发表用户的个人信息以及微博请求用户的个人信息,计算微博发表用户的个人信息与微博请求用户的个人信息之间的相似度。在一个实施例中,个人信息相似度计算单元231可根据用户的ID在已经存储了用户的个人信息的数据库中查找到用户的ID对应的个人信息。具体的,个人信息可包括:兴趣爱好、学历、专业、地域、个性签名、收藏的微博信息、共同好友数、用户类型信息等。在一个实施例中,用户类型可分为:科技型、娱乐型、体育型、艺术型、政治型等。优选的,用户类型信息包括用户类型向量,用户类型向量的分量表示用户偏向某一用户类型的分值,例如,可定义用户类型向量的第一个分量表示科技型分值、第二个分量表示娱乐型分值,等等依此类推;若用户偏向科技型 的分值为3、偏向娱乐型的分值为4,则用户类型向量可表示为(3,4,...)。优选的,可选择用户类型向量的分量中分值最高的分量对应的用户类型为该用户的用户类型。在一个实施例中,用户类型向量可通过用户手动设置获得,也可以通过统计用户关注的微博用户以及用户的好友的用户类型来获得。例如,用户关注的微博用户以及用户的好友中,属于科技型的人数为5,则可设置用户类型向量中科技型对应的分量为5。在一个实施例中,若用户的兴趣爱好相同或者兴趣爱好所属的分类相同,如都为艺术类,则个人信息相似度计算单元231可提高微博发表用户与微博请求用户的相似度的值。在一个实施例中,个人信息相似度计算单元231可在存储了兴趣爱好的所属的分类的数据库中查找用户的兴趣爱好所属的分类。相应的,若用户的学历相同,如都为本科,或都是博士以上学历,则也可增加用户之间的相似度的值。同样的,若用户的专业相同或专业所属的分科相同,或者用户的地域相同或所属的地区相同,或者用户个性签有相同的关键词,或者用户收藏的微博信息相同,或者用户的用户类型信息相似,或者用户之间的共同微博好友的数量超过设定的阈值等,都可以增加用户之间的相似度的值。在一个实施例中,还可通过计算上述用户类型向量的距离来获取用户类型信息的相似度,两用户类型向量的距离越小,则用户类型信息的相似度越高,相应的用户之间的相似度也高。关联度计算单元241用于获取微博发表用户与微博请求用户之间的交互记录,根据交互记录计算微博发表用户与微博请求用户之间的关联度。
在一个实施例中,交互记录包括用户之间的引用、访问、评论、转发记录等。具体的,若用户之间的引用、访问、评论、转发次数高,则关联度计算单元241可相应的设置用户之间的关联度也高。第二评分单元251用于根据上述相似度和关联度对微博信息进行评分。优选的,若微博发表用户与微博请求用户之间的相似度高或关联度高,则第二评分单元251可增加对微博信息的评分。本实施例中,若微博发表用户与微博请求用户之间的个人信息相似度高或者二者之间的关联度高,则对微博信息的评分也高,并将评分高的微博信息排在前面,这些微博信息也是更可能引起微博请求用户的兴趣的微博信息,因而可方便用户查看其感兴趣的微博信息。在一个实施例中,用户信息评分模块201包括活跃度计算单元211、第一评分单元221、个人信息相似度计算单元231、关联度计算单元241、第二评分单元251。第二评分单元251对微博信息的评分可在第一评分单元221对微博信息的评分的基础上进行,即综合根据微博发表用户的活跃度获得的评分以及根据微博发表用户与微博请求用户之间的个人信息相似度和关联度获取的评分作为微博信息的综合评分,并可设置上述两个评分在综合评分中所占的比重。如图13所示,在一个实施例中,内容信息评分模块202包括类别向量提取单元212、内容相似度计算单元222、第三评分单元232,其中:类别向量提取单元212用于获取微博信息中的微博内容,根据微博内容以及微博主题类别的特征获取微博信息中 的微博的主题类别向量。优选的,微博内容包括微博的正文内容即微博发表用户发表的内容,微博内容还可包括微博的评论内容。在一个实施例中,若微博内容的字数不多,则类别向量提取单元212可以获取该微博的发表用户在该微博发表时间点的相近时间(可预先设置)内发表的微博,将多条微博内容拼合成在一起。优选的,微博主题类别包括:政治军事、文化艺术、财经股票、情感人生、社会法制、娱乐八卦、科技网络、健康美食、体育运动、汽车房产、教育求职、时尚旅游等。优选的,主题类别向量的每一个分量表示微博内容偏向归属于某一主题类别的分值,例如,主题类别向量的第一个分量表示政治军事类的分值、第二个分量表示文化艺术类的分值,等等依次类推。则主题类别向量(5,10,...)表示微博内容偏向归属于政治军事类的分值为5,而偏向归属于文化艺术类的分值为10。优选的,可取分值最高的分量对应的主题类别为微博所属的主题类别。具体的,可预先训练出微博主题类别的特征,进一步的,类别向量提取单元212可采用现有的朴素贝叶斯文本分类算法对微博内容进行分类,获得微博的主题类别向量,在此不再赘述。类别向量提取单元212还用于获取微博请求用户的历史微博内容,根据历史微博内容以及微博主题类别的特征获取微博请求用户的历史微博的主题类别向量。具体的,类别向量提取单元212可获取近期时间段(可预先设置)内微博请求用户发表的微博内容。优选的,获得多条历史微博的主题类别向量后,类别向量提取单元712可以求该多个向量的平均值作为微博请求用户的历史微博的主题类别向量。
内容相似度计算单元222用于根据微博信息中的微博的主题类别向量和微博请求用户的历史微博的主题类别向量,计算微博信息中的微博内容与微博请求用户的历史微博内容之间的相似度。具体的,内容相似度计算单元222可通过计算上述两个主题类别向量之间的距离来计算微博信息中的微博内容与微博请求用户的历史微博内容之间的相似度。优选的,距离越小,则设置相似度越高。第三评分单元232用于根据相似度对微博信息进行评分。优选的,相似度越高,则第三评分单元232对微博信息的评分越高。本实施例中,若微博信息中的微博内容与微博请求用户的历史微博内容的相似度高,则对微博信息的评分也高,并将评分高的微博信息排在前面,而这些靠前排列的微博内容更容易引起用户的兴趣,因而可方便用户查看其感兴趣的微博。本实施例中,需要预先训练出微博主题类别的特征,上述微博排序系统还包括分类模型训练模块50,用于训练各微博主题类别的样本,并提取出各微博主题类别的特征,如图14所示,分类模型训练模块50包括主题类别获取模块501、训练集获取模块502、特征提取模块503:主题类别获取模块501用于获取预设的微博主题类别。优选的,微博主题类别包括:政治军事、文化艺术、财经股票、情感人生、社会法制、娱乐八卦、科技网络、健康美食、体育运动、汽车房产、教育求职、时尚旅游等。训练集获取模块502用于获取微博主题类别的训练子集。优选的,为了从训练子集中提取出主题类别更好的特征,可获取一定范围内尽可能多的微博训练样本。在一个实施例中,训练集获取模块502可根据微博主题类别的关键词搜索微博,获取微博主题类别的初始训练子集;并按照预设次数重复执行以下步骤 统计初始训练子集中的高频词;根据高频词搜索微博,将搜索结果加入初始训练子集。具体的,训练集获取模块502可将微博主题类别名称及其拆分词作为微博主题类别的关键词,如政治军事类,可将政治、军事以及政治军事作为这一类别的关键词,并根据这些关键词进行搜索,获取该类别的初始训练子集。进一步的,可将初始训练子集进行预处理后,对其进行分词、过滤停用词的处理,并统计初始子集中的高频词。进一步的,可继续将高频词以及高频词的组合作为关键词进行搜索,以获得更多的微博训练样本。并按照预设次数重复统计初始训练子集中的高频词、根据高频词搜索微博并将搜索结果加入初始训练子集的步骤。本实施例中获取微博主题类别的训练子集的方法可获得每一主题类别的大量的微博训练样本,为从训练子集中提取出各微博主题类别的特征提供了基础。特征提取模块503用于从训练子集中提取出微博主题类别的特征。具体的,特征提取模块503可利用现有的分类训练方法对每一主题类别的训练子集中的微博内容进行训练,提取出每一主题类别的特征。在此不再赘述。在一个实施例中,上述微博排序系统还包括展示类别分类模块(图中未示出),用于按照预设的微博展示类别对微博信息中的微博进行归类,得到微博所属的展示类别。具体的,展示类别可包括上文中微博信息的微博主题类别,如政治军事类、文化艺术类、财经股票类等。微博 所属的主题类别可根据类别向量提取单元212中获取的微博信息的主题类别向量得到,可取主题类别向量中分值最高的分量对应的主题类别为微博信息所属的主题类别。在一个实施例中,除了微博主题类别外,还可以增加其它的展示类别,如好友类、地点类、搞笑类、求助转发类、广告活动类等。微博信息是否属于好友类,可根据微博发表用户与微博请求用户是否为好友来判断。在一个实施例中,展示类别分类模块可根据微博发表用户的ID以及微博请求用户的ID在已经存储了好友对应关系的数据库中查找微博发表用户与微博请求用户之间是否为好友。微博信息是否属于地点类,则可根据微博发表用户与微博请求用户的地址是否属于同一地区(可设置为县、区等)来判断。微博是否属于搞笑类,则可根据微博发表用户的ID在已经存储了用户的搞笑分值的数据库中查找到的搞笑分值是否大于预设阈值来判断。在一个实施例中,用户的搞笑分值可根据其它用户对该用户的搞笑评分获得。微博信息是否属于求助转发类、广告活动类,则可根据微博内容中是否出现求助、广告高频词等来判断。在一个实施例中,微博展示类别还可以包括热门话题类。具体的,展示类别分类模块可解析网页内容获取高频记录;根据微博请求用户的历史微博内容对上述高频记录进行评分;根据高频记录评分选取搜索结果中的微博归为热门话题类。优选的,展示类别分类模块可根据现有的开源工具Html-parser对网页内容进行解析,得到出现次数超过预设阈值的词组,即高频记录。进一步的,可根据高频记录与微博请求用户的历史微博内容的相似度对高频记录进行评分。具体的,可统计高频记录在微博请求用户发表、转发、评论的微博内容中出现的次数,根据该次数对高频记录进行评分。最后,可选取评分靠前预设位的高频记录,并选取微博内容中出现该高频记录的微博信息,将该微博信息归为热门话题类。在本实施例中,展示模块40用于按照微博所属的展示类别及上述排序的结果展示微博信息。具体的,展示模块40可将微博信息按照各展示类别分类展示,并在各展示类别中,将评分高的微博信息靠前排列。本实施例中,将微博信息分为多个展示类别进行展示,可方便用户选择自己感兴趣的微博类别进行查看,方便了用户的操作。另外,每一展示类别都是按照对微博的评分的高低顺序进行展示,排列顺序靠前的微博,其微博发表用户的活跃度较高、或微博发表用户的个人信息与微博请求用户的个人信息相似度较高、或微博发表用户与微博请求用户的关联度较高,从而可方便用户查看与自己有关的、感兴趣的微博。一种微博搜索方法,按照上述微博排序方法对微博搜索结果进行排序,其中,获取用户请求的微博信息的步骤包括:根据用户输入的关键字进行搜索,得到用户请求的微博信息。具体的,可利用传统的搜索引擎对用户输入的关键字进行搜索,查找与关键字匹配的微博信息,从而得到用户请求的微博信息。一种微博搜索系统,包括上述微博排序系统,其中,微博信息获取模块10用于根据用户输入的关键字进行搜索,得到用户请求的微博信息。具体的,微博信息获取模块10可利用传统的搜索引擎对用户输入的关键字进行搜索,查找与关键字匹 配的微博信息,从而得到用户请求的微博信息。
—种微博展示方法,按照上述的微博排序方法对微博请求结果进行排序,其中,获取用户请求的微博信息的步骤包括:根据用户标识对应的微博请求信息,得到用户请求的微博信息。在一个实施例中,可预先设置用户标识对应的微博请求信息为:获取用户标识对应的人群的微博信息。例如,当用户登录微博帐户时,可根据用户标识(如用户ID)查找用户关注或收听的人群以及用户的好友,并获取该人群以及用户好友近段时间内的微博信息,从而得到用户请求的微博信息。—种微博展不系统,包括上述微博排序系统,其中,微博信息获取模块10用于根据用户标识对应的微博请求信息,得到所述用户请求的微博信息。在一个实施例中,可预先设置用户标识对应的微博请求信息为:获取用户标识对应的人群的微博信息。例如,当用户登录微博帐户时,微博信息获取模块10可根据用户标识(如用户ID)查找用户关注或收听的人群以及用户的好友,并获取该人群以及用户好友近段时间内的微博信息,从而得到用户请求的微博信息。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发 明专利的保护范围应以所附权利要求为准。
权利要求
1.一种微博排序方法,包括以下步骤: 获取用户请求的微博信息; 提取所述微博信息中的微博发表用户信息与内容信息,对所述微博信息进行评分; 根据所述评分对所述微博信息进行排序; 按照所述排序的结果展示所述微博信息。
2.根据权利要求1所述的微博排序方法,其特征在于,提取所述微博信息中的微博发表用户信息对所述微博信息进行评分的步骤包括: 获取所述微博发表用户的微博操作记录,根据所述微博操作记录计算所述微博发表用户的活跃度; 根据所述活跃度对所述微博信息进行评分。
3.根据权利要求1或2所述的微博排序方法,其特征在于,提取所述微博信息中的微博发表用户信息对所述微博信息进行评分的步骤包括: 获取所述微博发表用户的个人信息以及微博请求用户的个人信息,计算所述微博发表用户的个人信息与所述微博请求用户的个人信息之间的相似度; 获取所述微博发表用户与所述微博请求用户之间的交互记录,根据所述交互记录计算所述微博发表用户与所述微博请求用户之间的关联度; 根据所述相似度和所述关联度对所述微博信息进行评分。
4.根据权利要求1所述的微博排序方法,其特征在于,提取所述微博信息中的内容信息对所述微博信息进行评分的步骤包括:` 获取所述微博信息中的微博内容,根据所述微博内容以及微博主题类别的特征获取所述微博信息中的微博的主题类别向量; 获取微博请求用户的历史微博内容,根据所述历史微博内容以及微博主题类别的特征获取所述微博请求用户的历史微博的主题类别向量; 根据所述微博信息中的微博的主题类别向量和所述微博请求用户的历史微博的主题类别向量,计算所述微博信息中的微博内容与所述微博请求用户的历史微博内容之间的相似度; 根据所述相似度对所述微博信息进行评分。
5.根据权利要求4所述的微博排序方法,其特征在于,在提取所述微博信息中的内容信息对所述微博信息进行评分的步骤之前,所述方法还包括: 获取预设的微博主题类别; 获取所述微博主题类别的训练子集; 从所述训练子集中提取出所述微博主题类别的特征。
6.根据权利要求5所述的微博排序方法,其特征在于,所述获取所述微博主题类别的训练子集的步骤包括: 根据所述微博主题类别的关键词搜索微博,获取所述微博主题类别的初始训练子集; 按照预设次数重复执行以下步骤: 统计所述初始训练子集中的高频词; 根据所述高频词搜索微博,将搜索结果加入所述初始训练子集。
7.根据权利要求1所述的微博排序方法,其特征在于,在所述按照所述排序的结果展示所述微博信息的步骤之前,所述方法还包括: 按照预设的微博展示类别对所述微博信息中的微博进行归类,得到所述微博所属的展示类别; 所述按照所述排序的结果展示所述微博信息的步骤为: 按照所述微博所属的展示类别及所述排序的结果展示所述微博信息。
8.一种微博排序系统,其特征在于,包括: 微博信息获取模块,用于获取用户请求的微博信息; 评分模块,所述评分模块包括用户信息评分模块和内容信息评分模块,所述用户信息评分模块用于提取所述微博信息中的微博发表用户信息,根据所述微博发表用户信息对所述微博信息进行评分;所述内容信息评分模块用于提取所述微博信息中的内容信息,根据所述内容信息对所述微博信息进行评分; 排序模块,用于根据所述评分对所述微博信息进行排序; 展示模块,用于按照所述排序的结果展示所述微博信息。
9.根据权利要求8所述的微博排序系统,其特征在于,所述用户信息评分模块包括: 活跃度计算单元,用于获取所述微博发表用户的微博操作记录,根据所述微博操作记录计算所述微博发表用户的活跃度; 第一评分单元,根据所述活跃度对所述微博信息进行评分。
10.根据权利要求8或9所述的微博排序系统,其特征在于,所述用户信息评分模块包括: 个人信息相似度计算单元,用于获取所述微博发表用户的个人信息以及微博请求用户的个人信息,计算所述微博发表用户的个人信息与所述微博请求用户的个人信息之间的相似度; 关联度计算单元,用于获取所述微博发表用户与所述微博请求用户之间的交互记录,根据所述交互记录计算所述微博发表用户与所述微博请求用户之间的关联度; 第二评分单元,用于根据所述相似度和所述关联度对所述微博信息进行评分。
11.根据权利要求8所述的微博排序系统,其特征在于,所述内容信息评分模块包括: 类别向量提取单元,用于获取所述微博信息中的微博内容,根据所述微博内容以及微博主题类别的特征获取所述微博信息中的微博的主题类别向量; 所述类别向量提取单元还用于获取微博请求用户的历史微博内容,根据所述历史微博内容以及微博主题类别的特征获取所述微博请求用户的历史微博的主题类别向量; 内容相似度计算单元,用于根据所述微博信息中的微博的主题类别向量和所述微博请求用户的历史微博的主题类别向量,计算所述微博信息中的微博内容与所述微博请求用户的历史微博内容之间的相似度; 第三评分单元,用于根据所述相似度对所述微博信息进行评分。
12.根据权利要求11所述的微博排序系统,其特征在于,所述系统还包括分类模型训练模块,所述分类模型训练模块包括: 主题类别获取模块,用于获取预设的微博主题类别; 训练集获取模块,用于获取所述微博主题类别的训练子集; 特征提取模块,用于从所述训练子集中提取出所述微博主题类别的特征。
13.根据权利要求12所述的微博排序系统,其特征在于,所述训练集获取模块用于根据所述微博主题类别的关键词搜索微博,获取所述微博主题类别的初始训练子集,并按照预设次数重复执行以下步骤:统计所述初始训练子集中的高频词,根据所述高频词搜索微博,将搜索结果加入所述初始训练子集。
14.根据权利要求8所述的微博排序系统,其特征在于,所述系统还包括: 展示类别分类模块,用于按照预设的微博展示类别对所述微博信息中的微博进行归类,得到所述微博所属的展示类别; 所述展示模块还用于按照所述微博所属的展示类别及所述排序的结果展示所述微博信息。
15.一种微博搜索方法,其特征在于,按照权利要求1-7任一所述的微博排序方法对微博搜索结果进行排序,其中,所述获取用户请求的微博信息的步骤包括:根据用户输入的关键字进行搜索,得到所述用户请求的微博信息。
16.一种微博搜索系统,其特征在于,包括权利要求8-14任一所述的微博排序系统,其中,所述微博信息获取模块用于根据用户输入的关键字进行搜索,得到所述用户请求的微博信息。
17.—种微博展不方法,其特征在于,按照权利要求1-7任一所述的微博排序方法对微博请求结果进行排序,其中,所述获取用户请求的微博信息的步骤包括:根据用户标识对应的微博请求信息,得到所述用户请求的微博信息。
18.—种微博展不系统 ,其特征在于,包括权利要求8-14任一所述的微博排序系统,其中,所述微博信息获取模块用于根据用户标识对应的微博请求信息,得到所述用户请求的微博信息。
全文摘要
一种微博搜索方法,包括以下步骤获取用户请求的微博信息;提取所述微博信息中的微博发表用户信息与内容信息,对所述微博信息进行评分;根据所述评分对所述微博信息进行排序;按照上述排序的结果展示所述微博信息。上述微博排序方法,提取微博信息中的微博发表用户信息与内容信息对微博进行评分,并按照评分对微博信息进行排序,将与用户相关的微博信息排在前面,从而方便用户查看微博信息。此外,还提供一种微博排序系统以及微博搜索、展示方法和系统。
文档编号G06F17/30GK103246670SQ201210028740
公开日2013年8月14日 申请日期2012年2月9日 优先权日2012年2月9日
发明者马尧, 张鹏, 彭利章 申请人:深圳市腾讯计算机系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1