一种基于用户查询日志实时发现热点视频的方法和装置与流程

文档序号:12786472阅读:245来源:国知局
一种基于用户查询日志实时发现热点视频的方法和装置与流程

技术领域

本发明属于互联网数据统计分析技术领域,尤其涉及一种基于用户查询日志实时发现热点视频的方法和装置。



背景技术:

随着互联网的迅猛发展,用户对视频搜索结果提出了更高的要求,不仅需要搜索结果相关,而且还应有较高的实时性,这使得实时搜索变得日趋重要。视频实时搜索指的是对视频库中的信息进行即时、快速的搜索,实现即搜即得的效果。通过实时搜索,用户可以在第一时间获取到热点事件的第一手信息。然而,相比于传统搜索,实时搜索也带来了巨大的挑战。对于热点事件,由于其突发性和不可预测性,很可能相关视频的数量和点击量较少,导致在它们在搜索结果中排序靠后,从而无法真正满足用户对实时性的需求。

因为实时热点具有在较短时间内搜索量大的特点,通过对最新的用户查询日志分析最有可能发现出新的热点词和热点事件,以此来改善搜索排序结果对实时性的反应。分析用户日志时所遇到的一个困难是:每天的用户查询日志中都会不断涌现出新名词、新热点,如“欧洲杯”,“楼道王菲刘美麟”等,而原有的切词程序无法反映出这些新词的语义关联,即有可能将语义上应连接在一起的构成一个词的字符串切分为多个词。切词程序一般采用基于词表的方法,即根据一个预先给定的词表对字符串扫描,通过一定的匹配方法(正向最大、逆向最大、双向匹配等)找到一种最合适的词语切分,这一方法的缺点在于:无法切分出原词表中不包含的词,即新词。这一缺陷将可能导致模糊匹配(即搜索时只对部分查询词进行匹配)的结果不够理想。



技术实现要素:

鉴于现有技术中存在的问题,本发明的目的在于提供一种基于用户查询日志实时发现热点视频的方法,其特征在于包括如下步骤:

S1、将一段时间内的用户视频查询日志输入到切词程序,完成每一条用户视频查询日志的切词,得到每条用户查询的切词结果,并将组成所述切词结果的不同词语作为原子词;

S2、统计所述原子词的每一个在所述一段时间内的用户视频查询日志中出现的次数;

S3、根据步骤S1得到的切词结果统计任意两个原子词同时出现在同一条用户查询中的次数;

S4、根据步骤S2和S3得到的次数值采用逐点互信息(PMI)的方法计算用户视频查询日志中任意两个原子词之间的关联度;

S5、将步骤S4中所计算的关联度超过一定阈值的任意两个原子词合并为一复合词放入复合词词表中;

S6、在复合词表中按照构成复合词的原子词在所述一段时间内的用户视频查询日志中出现的次数对复合词进行降序排序,最终按一定比例将排在前面的复合词作为实时发现热点视频的关键词返回。

进一步,本发明所述的基于用户查询日志实时发现热点视频的方法,其特征在于所述步骤S4中所述逐点互信息(PMI)的方法的具体计算方法如下:

任给两个原子词A、B,它们的关联度表示为

其中,P(A,B)表示A,B出现在同一条用户视频查询日志中次数,P(A)、P(B)分别表示A、B在所述一段时间内的用户视频查询日志中出现的次数。

进一步,本发明所述的基于用户查询日志实时发现热点视频的方法,其特征在于采用最大似然估计(Maximum likelihood estimate)来计算次数。

此外,本发明还提供了一种基于用户查询日志实时发现热点视频的装置,其特征在于包括如下模块:

切词模块,用于将一段时间内的用户视频查询日志输入到切词程序,完成每一条用户视频查询日志的切词,得到每条用户查询的切词结果,并将组成所述切词结果的不同词语作为原子词;

原子词出现次数统计模块,用于统计所述原子词的每一个在所述一段时间内的用户视频查询日志中出现的次数;

原子词共现次数统计模块,用于根据所述原子词出现次数统计模块得到的切词结果统计任意两个原子词同时出现在同一条用户查询中的次数;

关联度计算模块,用于根据所述原子词出现次数统计模块和所述原子词共现次数统计模块得到的次数值采用逐点互信息(PMI)的方法计算用户视频查询日志中任意两个原子词之间的关联度;

复合词生成模块,用于将所述关联度计算模块所计算的关联度超过一定阈值的任意两个原子词合并为一复合词放入复合词词表中;

热点关键词确定模块,用于在复合词表中按照构成复合词的原子词在所述一段时间内的用户视频查询日志中出现的次数对复合词进行降序排序,最终按一定比例将排在前面的复合词作为实时发现热点视频的关键词返回。

进一步,本发明所述的基于用户查询日志实时发现热点视频的装置,其特征在于所述关联度计算模块中所述逐点互信息(PMI)的方法的具体计算方法如下:

任给两个原子词A、B,它们的关联度表示为

其中,P(A,B)表示A,B出现在同一条用户视频查询日志中次数,P(A)、P(B)分别表示A、B在所述一段时间内的用户视频查询日志中出现的次数。

进一步,本发明所述的基于用户查询日志实时发现热点视频的装置,其特征在于采用最大似然估计(Maximum likelihood estimate)来计算次数。

本发明将逐点互信息这一信息论中的概念,应用于用户查询日志的分析,解决了新名词涌现而导致的切词不准确以及视频实时热点的发现问题。本发明不仅有严格的理论基础,而且在工程实现上简单高效,有效地避免了因采用级联方式(即穷举任意两词或多词的组合)而带来的组合爆炸的问题。本方法可使得视频热点发现完全自动化,无需人工的参与,在极大提高效率的同时又保证了较高的准确率。

附图说明

图1是本发明基于用户查询日志实时发现热点视频的方法的实现原理图;

图2是本发明基于用户查询日志实时发现热点视频的方法的流程图;

图3是本发明基于用户查询日志实时发现热点视频的装置的功能框图。

具体实施方式

为使本发明的上述目的、特征和优点更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明:

因为实时热点具有在较短时间内搜索量大的特点,通过对最新的用户查询日志分析最有可能发现出新的热点词和热点事件,以此来改善搜索排序结果对实时性的反应。图1是本发明基于用户查询日志实时发现热点视频的方法的实现原理图;如图1所示,本发明将一段时间内的用户查询日志输入到切词程序中,得到每条用户查询的切词结果,这里所提取出的词我们称为原子词。然后,在此基础上统计原子词的词频信息和它们的共现次数(即两词同时出现在同一条用户查询中),并采用逐点互信息(PMI)的计算方法,将语义上密切关联的两个或多个原子词合成为一个复合词,由此迭代生成出新词表。最后,按新词表中词的词频排序,自动发现出热点词和热点事件。

图2是本发明基于用户查询日志实时发现热点视频的方法的流程图;如图所示,本发明基于用户查询日志发现视频实时热点的方法包括如下步骤:

S1、将一段时间内的用户视频查询日志输入到切词程序,完成每一条用户视频查询日志的切词,得到每条用户查询的切词结果,并将组成所述切词结果的不同词语作为原子词;

切词程序根据已有词表以最大正向匹配的方法对查询进行切分。

例如,用户输入查询:“还珠格格主题曲”,切词程序返回结果“还珠|格格|主题曲”,即该查询中包含了三个原子词:“还珠”、“格格”和“主题曲”。

S2、统计所述原子词的每一个在所述一段时间内的用户视频查询日志中出现的次数;

例如,从一天的用户查询日志中统计得到:“还珠”出现61,661次,“格格”出现65,564次,“主题曲”出现306,050次。

S3、根据步骤S1得到的切词结果统计任意两个原子词同时出现在同一条用户查询中的次数;

例如,从一天的用户查询日志中统计得到:“还珠格格”出现60,245次,“格格主题曲”出现1,505次。

S4、根据步骤S2和S3得到的次数值采用逐点互信息(PMI)的方法计算用户视频查询日志中任意两个原子词之间的关联度;

采用逐点互信息(Pointwise Mutual Information,简记为PMI)的方法用以刻画用户查询日志中两词之间的关联度。该方法的基本思想阐述如下。

逐点互信息的计算方法

PMI是信息论中的一个经典概念,用于度量两个随机事件的之间相关性。我们认为PMI同样适合于计算视频搜索中两词之间的关联度。直观上,通过分析用户查询日志,若两个词共现于同一查询中的次数很多,则意味着两词有极大的可能应合并为一个复合词。下面给出PMI的具体计算方法。

任给两个词A,B,它们的关联度表示为

其中,P(A,B)表示A,B共现的次数,P(A),P(B)分别为A,B出现的次数。

由上式可知,若A,B独立,则PMI(A,B)的值为0;若A,B存在关联(这里指共现),则PMI(A,B)>0,且关联度越高,PMI值越大。

当采用最大似然估计(Maximum likelihood estimate)来估计次数参数时,公式(1)等价于

其中,freq(A,B)表示同时包含A和B的用户查询数量,freq(A)、freq(B)分别表示包含A、B的用户查询数量,|Q|表示的一段时间内的用户查询总数。

通过计算PMI,我们可为任意两个词赋上一个数值,用其表示其关联度,并在此基础上,方便地比较词与词的关联,生成复合词。

例如,统计得到一天的用户查询总数为42,567,550次,则根据公式(2)可得:

S5、将步骤S4中所计算的关联度超过一定阈值的任意两个原子词合并为一复合词放入复合词词表中;

例如,选取一天用户查询日志计算所得的PMI均值3.83作为阈值,则上例中的“还珠”和“格格”因关联度高于阈值,所以可合为复合词“还珠格格”;而“格格”和“主题曲”则因关联度过低,无法合并。

S6、在复合词表中按照构成复合词的原子词在所述一段时间内的用户视频查询日志中出现的次数对复合词进行降序排序,最终按一定比例将排在前面的复合词作为实时发现热点视频的关键词返回。

例如,通过一天用户查询日志的分析,发现得到的新的热点词约15万个,其中排序最靠前的包括“偷天换日”(584,435次)、“快乐大本营”(485,773次)、“非你莫属”(476,852次)等。

图3是本发明基于用户查询日志实时发现热点视频的装置的功能框图,如图所示,本发明的基于用户查询日志实时发现热点视频的装置包括如下模块:

切词模块1,用于将一段时间内的用户视频查询日志输入到切词程序,完成每一条用户视频查询日志的切词,得到每条用户查询的切词结果,并将组成所述切词结果的不同词语作为原子词;

原子词出现次数统计模块2,用于统计所述原子词的每一个在所述一段时间内的用户视频查询日志中出现的次数;

原子词共现次数统计模块3,用于根据所述原子词出现次数统计模块得到的切词结果统计任意两个原子词同时出现在同一条用户查询中的次数;

关联度计算模块4,用于根据所述原子词出现次数统计模块和所述原子词共现次数统计模块得到的次数值采用逐点互信息(PMI)的方法计算用户视频查询日志中任意两个原子词之间的关联度;

复合词生成模块5,用于将所述关联度计算模块所计算的关联度超过一定阈值的任意两个原子词合并为一复合词放入复合词词表中;

热点关键词确定模块6,用于在复合词表中按照构成复合词的原子词在所述一段时间内的用户视频查询日志中出现的次数对复合词进行降序排序,最终按一定比例将排在前面的复合词作为实时发现热点视频的关键词返回。

本发明将逐点互信息这一信息论中的概念,应用于用户查询日志的分析,解决了新名词涌现而导致的切词不准确以及视频实时热点的发现问题。本发明不仅有严格的理论基础,而且在工程实现上简单高效,有效地避免了因采用级联方式(即穷举任意两词或多词的组合)而带来的组合爆炸的问题。本方法可使得视频热点发现完全自动化,无需人工的参与,在极大提高效率的同时又保证了较高的准确率。通过对某视频网站内一天5,000万条左右的用户视频查询日志采用发明所提出方法进行实验,经过六次PMI的迭代计算,共自动获得复合词15万个,且具有85%以上的准确率。

以上是对本发明的优选实施例进行的详细描述,但本领域的普通技术人员应该意识到,在本发明的范围内和精神指导下,各种改进、添加和替换都是可能的,例如调整接口调用顺序、改变消息格式和内容、使用不同的编程语言(如C、C++、Java等)实现等。这些都在本发明的权利要求所限定的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1