使用内容项直方图来标识形成趋势的内容项的制作方法

文档序号:6361013阅读:149来源:国知局
专利名称:使用内容项直方图来标识形成趋势的内容项的制作方法
使用内容项直方图来标识形成趋势的内容项背景在计算的领域内,许多情况涉及可以被各种代理引用的一组内容项。作为第一示例,社交网络的用户可以张贴包括对诸如网页、视频,以及图像之类的Web资源的引用(诸如统一资源定位符,即URL)的消息。作为第二示例,这样的用户还可以张贴包括对特定内容项的引用(诸如Web上可用的各种资源的URL)或指示特定地理位置的地理引用(诸如全球定位系统(GPS)坐标)的消息。作为第三示例,电子商务站点的顾客可以张贴引用可以通过电子商务站点可用的各种产品或服务的消息。在这些及其他情况下,可能希望标识展示出积极地形成趋势的流行度和/或使用的内容项。此信息可以被用来,例如,向用户呈现当前形成趋势的内容项的列表,向用户建议形成趋势的内容项(例如,预测的文本输入设备可以基于形成趋势的内容项的文本名称,建议用户输入的完成或校正),或允许电子商务提供商基于需求的趋势来调整价格并提供产品或服务。

发明内容
·
提供本“发明内容”是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键因素或必要特征,也不旨在用于限定所要求保护的主题的范围。尽管有关形成趋势的内容项的信息可以在许多情况下有用,但是,由于种种原因,标识这样的形成趋势的内容项可能是困难的。例如,可能难以标识引用中所包括的特定内容项,可能涉及会话上下文、对有歧义的术语的歧义消除,以及对缩写词的解释。此外,可能难以用迅速的方式有效地但是全面地评估每一消息的方式,来评估诸如由社交网络的用户张贴的整个消息集合之类的大量的消息集合中的这样的引用。例如,如果消息的量是大的,快速地检测对特定新闻文章(诸如可以指示突发新闻)的引用中的浪涌,可能难以实现。此处呈现了用于以潜在地有效的并且可扩展的方式来跟踪对各种内容项的引用的技术,这些技术甚至在具有大量的这样的引用的环境中也可以支持对形成趋势的内容项的快速的检测。这些技术涉及一组内容项直方图的使用,每一内容项直方图都表示不同的内容项,并包括不同的时段内的对内容项的引用的一组度量。例如,一个内容项直方图可以包括阵列,其中,第一索引(编号O)表示在当前时间段内检测到的对内容项的引用,第二索引(编号I)表示在前一时间段内检测到的对内容项的引用,第三索引(编号2)表示在第二索引的时段前面的时段内检测到的对内容项的引用等等。当检测到对内容项的新引用时,可以将当前时间与内容项直方图的最后的引用时间进行比较,以确定当前测量时间段是否已经消逝。如果是,则可以向内容项直方图添加新引用计数(表示新测量时间段)(例如,通过在阵列的最前面插入新条目)。另外,还可以基于指示其形成趋势的流行度和/或在检测到最后检测到的对内容项的引用时的使用的内容项直方图,来为内容项计算趋势分数。例如,对于在引用中表现出了最近的并急剧上升的内容项,可以计算高趋势分数,即使引用的数量比较低,而对于在检测到的引用中表现出最近的平台期或降低的内容项,可以计算低趋势分数,即使引用的数量保持很高(指示内容项中的稳定的但是非形成趋势的流行度)。当内容项随后被评估以确定带有形成趋势的流行度的内容项时,可以基于自从最后的检测到的引用以来消逝的时间,衰减每一内容项的趋势分数,并且可以选择具有最高趋势分数(在衰减调整之后)的内容项,作为在流行度中具有最急剧的向上的趋势的内容项。以此方式,可以以比较有效的方式来标识形成趋势的流行度。此外,在某些实施例中,包括服务器集合的一组设备可以评估不同的批的引用,并相应地更新内容项直方图,由此实现保持与被评估的引用的量成比例的评估的可缩放性(例如,如果对引用的评估包括技术的限制速率的元素,,可以通过将新设备添加到服务器集合中,可预测地并按比例地增大额外的容量和性能,以评估额外的引用组)。为实现上述和相关目的,以下描述和附图阐述了各个说明性方面和实现。这些方面和实现仅指示可可以使用一个或多个方面的各种方式中的一些。结合附图阅读以下详细描述,则本发明的其他方面、优点、以及新颖特征将变得显而易见。附图描述图I是以包括用户张贴具有对内容项的引用的一组消息的社交网络为特征的示·例性情况的图示。图2是以标识一组内容项之中的形成趋势的内容项为特征的示例性情况的图示。图3是以根据此处所呈现的技术使用一组内容项直方图来跟踪对各个内容项的引用为特征的示例性情况的图示。图4是以根据此处所呈现的技术来标识一组内容项之中的形成趋势的内容项为特征的示例性情况的图示。图5是示出了标识一组内容项之中的形成趋势的内容项的示例性方法的流程图。图6是示出了用于标识一组内容项之中的形成趋势的内容项的示例性系统的组件框图。图7是示例性计算机可读介质的图示,其中可以包括被配置成具体化此处所阐述的原理中的一个或多个的处理器可执行指令。图8是以对标识一组包括内容项的位置的一组一般化位置引用的位置引用进行一般化为特征的示例性情况的图示。图9是以对通过重定向引用122间接地引用的内容项的检测并将其缓存在引用缓存中为特征的示例性情况的图示。

图10是作为整数阵列的内容项直方图的示例性实现方式的图示。图11是作为整数阵列的内容项直方图的示例性实现方式的另一个图示。图12是分别表示在不同的引用时段内的对内容项的引用的一组内容项直方图的示例性实现方式的图示。图13是以用于衰减一组内容项的趋势分数的确定性的技术为特征的示例性情况的图示。图14是以向用户呈现形成趋势的内容项的两个技术为特征的示例性情况的图
/Jn ο图15示出了其中可以实现此处所阐述的原理中的一种或多种的示例性计算环境。详细描述
现在参考附图来描述所要求保护的主题,所有附图中使用相同的附图标记来指代相同的元素。在以下描述中,为解释起见,阐明了众多具体细节以提供对所要求保护的主题的全面理解。然而,很明显,所要求保护的主题可以在没有这些具体细节的情况下实施。在其他情况下,以框图形式示出了各个结构和设备以便于描述所要求保护的主题。在计算领域内,许多情况涉及通过对由各种代理(诸如用户,而且还包括软件进程)所生成的内容项的引用的检测,来跟踪一组内容项的形成趋势的流行度和使用。例如,在社交网络中,用户可以创作包括对各种内容项的引用(诸如标识包含特定报道或内容项的网页的统一资源定位符(URL))的消息,包括可公开访问的帖子和被定向到特定其他用户的私有的消息。在此及其他情况下,对内容项的引用的频率的跟踪可能是有利的。与没有被“趋势性地”引用的(例如,以与前一时间点显著不同的频率引用的)但是只是经常引用的内容项(例如,流行的内容项,诸如频繁地访问的网站,或经常引用的位置)相反,对引用频率中的趋势的标识可以特别有用。作为第一示例,商业企业可以基于对稳定的需求的预测来维护各种产品的库存(例如,维护被频繁地购买的产品的大容量的库存,不是被频繁地购买的产品的小容量的库存),但是还可能希望标识这样的购买的频率的动态趋势,以便调整 可用于购买的产品集合。作为第二示例,媒体库可以跟踪各种媒体项的流行度,但是可以分开地跟踪这样的流行度中的趋势(例如,以便向用户建议其他用户频繁地开始经常播放的媒体项)。图I基于由社交网络的一个或多个用户12张贴的消息14中的对内容项18的引用16,呈现了以这些内容项18的流行度的趋势为特征的示例性情况10。相应的用户12可以张贴有关用户12感兴趣的主题的消息14,包括文本描述,有时候还包括对内容项18的引用16,诸如可能使其他用户12感兴趣的Web资源的URL。一些内容项18可能是静态地流行的;例如,一个受欢迎的女演员的传记可能被用户12以大的、但是稳定的并且可预测的频率引用。然而,用户12还可能以比以前引用的高得多的或低得多的频率开始张贴对特定内容项18的引用16。对内容项18的引用中的这样的趋势可以提供有用的信息。例如,在图I的示例性情况10下,如果用户接收到一个受欢迎的演员突然离世的信息,则用户16可能突然以比以前检测到的速率高得多的速率开始张贴包含对演员传记18的引用16的消息14 (例如,电影数据库网站上的网页或在人物百科网站)。作为第二示例,访问以天气雷达为特征的网站的用户16可能会发现有趣的天气模式发展,诸如龙卷风,并可能张贴包括对天气雷达网站的引用16的消息14。其他用户12可以查看此消息14,并可以张贴类似的消息14以通知其他用户12,并且对包括天气雷达网站的内容项18的引用16中快速的浪涌可以被检测到。与标识这样的内容项18的静态流行度对比,检测对这样的内容项18的引用16的频率中的这些趋势可以标识由用户12已知或感觉到的某些新的和有用的信息,甚至在它被正式地确认之前,例如,通过常规新闻源,作为突发新闻报道来报告。然而,可能难以配置计算机系统以标识对这样的内容项18的引用16中的趋势。具体而言,要被评估以便标识趋势的消息14的纯粹的量可能非常大,诸如数百万电子邮件消息,即时消息,或社交网络中的帖子。此外,只有在被快速地检测到的情况下,趋势信息才是有价值的,因此,提高对消息14的评估的效率以检测引用16的频率中的趋势的技术可能是有利的,而可能延迟这样的检测的技术可能损害所产生的信息的价值。具体而言,在涉及许多计算机系统的实现方式中(诸如服务器场),某些技术可以通过可缩放性在对趋势的快速的并且敏感的检测中提供可预测的并且显著的优点,例如,通过允许管理员实现与向服务器场添加的新服务器的数量成比例的速度和灵敏度增益,而其他技术可以提供有限的或不提供优点,或者甚至可以减少对趋势的检测。图2呈现了示例性情况20,该示例性情况20以设备的第一配置被配置成通过标识社交网络的用户12的消息14中张贴的对形成趋势的内容项18的引用16的频率的趋势,来检测这样的内容项18为特征。该配置涉及一组设备22,每一个设备22都被配置成监视消息14的一部分(例如,作为消息14的整个集合的任意部分,或由社交网络的用户12的整个集合中的用户12的任意子集张贴的消息14)。设备22检测对特定内容项18的引用16的频率中的趋势(例如,通过将检测到的对特定内容项18的引用16的频率与预测的或典型的对特定内容项18的引用16的频率进行比较),并可以将检测到的趋势报告到诸如中心数据库之类的另一个服务器。以此方式,设备22的配置可以促进以快速的方式评估社交网络中张贴的所有消息14,以便检测某些形成趋势的内容项18。此外,此配置可以是可缩放的,以提高快速性和/或处理更大量的消息14 ;例如,可以包括额外的设备22,它们被配置成处理额外的消息14并更快地处理一组消息14。然而,此配置还可以限制对形成趋势的内容项 18的检测的灵敏度。例如,在图2的示例性情况20下,所有内容项18可以通常被所描绘的用户12集合引用一次,但是,两个特定内容项18在由各个用户12张贴的消息14中所包括的三个引用16中被引用。此频率可以表示对这些内容项18的引用16的大得多的频率的趋势。然而,设备22可能不会检测到此趋势,因为引用16可以被包括在均匀分布在设备22之中的消息14中,以便每一设备22只检测到一个对每一内容项18的引用16,这与预期的对其引用16的频率一致。因此,设备16的此配置可能并非可适当地缩放以便以可接受的灵敏度来检测形成趋势的内容项18。其他技术可以呈现提高的灵敏度,但是,以速度、容量,和/或可缩放性为代价。此处呈现了用于通过评估对形成趋势的内容项18的引用16 (诸如可以被包括在社交网络的用户12的消息14中,在用户对播放媒体库中的特定媒体项的请求中,在通过各个软件进程对计算机系统中的各种类型的数据对象的访问中等等)的频率来检测形成趋势的内容项18的技术。这些技术涉及,对于特定消息14,生成一组内容项直方图,每一个内容项直方图都包括对特定内容项18的在诸如一分钟、一小时,或一天之类的特定持续时间的引用时段内检测到的引用16的一组引用计数。内容项直方图可以被实现为,例如,整数阵列,其中,整数阵列的第一元素包括当前引用时段内的引用的数值计数,而随后的元素包括前面消逝的引用时段内的引用的数值计数。内容项直方图还可以包括最后的引用时间,指示最后检测到的对内容项18的引用16的日期和/或时间。根据这些技术,当检测到对新内容项18的引用16时,这些技术的实施例可以生成内容项18的新内容项直方图,包括,例如,带有初始值零的单个引用计数(表示当前引用时段的当前引用计数)。然后,实施例可以通过增大当前引用计数来记录对内容项18的引用
16。另外,实施例可以将内容项直方图的最后的引用时间设置为当前日期和/或时间。此夕卜,在检测到引用16之后,实施例计算并存储内容项18的趋势分数,基于内容项直方图,指示在最后的检测到的引用16时内容项18的趋势度。例如,正的趋势分数可以指示内容项18中的最近的正的趋势(诸如对其引用16的频率的显著上升);负的趋势分数可以指示引用16的频率中的最近的负的趋势;而零趋势分数可以指示与前面的度量相比引用16的频率无变化。进一步根据这些技术,在第二(随后的)时间,诸如在用户12请求之后或一段时间消失之后,实施例可以比较内容项18的趋势分数来标识形成趋势的内容项18。实施例可以通过比较每一内容项18的趋势分数集合,来这样做,但是,在例如以前以较高的频率引用的内容项18在较长的时间段没有被引用的情况下,可能会产生不准确的比较。例如,正在在天气雷达上密切地监视出现的风暴状况(并且正在生成指示强烈的形成趋势的内容项18的许多引用16)的用户12可能在风暴状况突然地消散的情况下立即失去兴趣。然而,内容项直方图可能只示出高引用计数,作为最后记录的当前度量,实施例可以继续到将此网站标识为形成趋势的内容项18,甚至在用户12停止生成对网站的引用16之后。因此,在比较相应的内容项18的趋势分数时,实施例可以根据最后的引用时间和生成形成趋势的内容项18的报告的第二时间的差,“衰减”每一趋势分数。例如,持续被频繁地引用的内容项18的趋势分数可以仍保持不变,但是,在一些时间没有被引用的内容项18的趋势分数可以被衰减到较低的值,与引用16中的流逝的持续时间(例如,引用流逝间隔)成比例。然后,实施例可以比较“衰减的”趋势分数,以标识形成趋势的内容项18。以此方式,实施例可以改 善对形成趋势的内容项18的准确的检测和报告,同时还实现对引用16的有效的评估,并将检测到的引用计数存储在每一内容项18的内容项直方图中。此外,此配置可以促进系统的可缩放性,以评估更多引用16,和/或更快速地评估一批引用16以改善对形成趋势的内容项18的快速的检测。图3-4 —起示出了可以由被配置成检测形成趋势的内容项18的设备22执行的这些技术。在图3的示例性情况30下,设备22监视由一组用户12所生成的一组消息14,该一组消息14可以包含对特定内容项18的引用16。设备22还可以对于相应的内容项18,生成和维护内容项直方图32,指示一个或多个引用计数时段内检测到的一个或多个引用计数,包括表示在当前引用计数时间段中检测到的引用16的数量的当前引用计数34。在检测到这样的引用16之后,设备22可以首先确定这是否是检测到的对内容项18的第一引用16,如果是,设备22可以生成内容项18的内容项直方图32。然后,设备22可以递增当前引用计数时间段的当前引用计数34,以记录检测到的引用16。设备22还设置内容项18的最后的引用时间36,作为当前日期和/或时间,以指示最近的检测到的引用16的日期或时间。设备还评估内容项直方图32,并设置内容项18的趋势分数38,指示到最后的引用时间36为止,内容项18的趋势度。例如,第一内容项18可以与持续高引用16的频率相关联,但是,频率的一致性(特别是与前面的引用计数相比,最近引用计数的)可以指示缺乏趋势度,结果趋势分数38为零。第二内容项18的内容项直方图32可以指示引用16的频率中的稳定的向上的趋势,得到趋势分数38为6,而第三内容项18的内容项直方图32可以指示引用16的频率中的急剧的向上的趋势(诸如最近浪涌),得到趋势分数38为9。在图4的示例性情况40下,在第二时间42 (在图3中所示出的之后),设备22可以使用内容项18的计算出的趋势分数38,以标识形成趋势的内容项18。具体而言,设备22可以,对于相应的内容项18,基于第二时间42和内容项18的最后的引用时间36之间的差,执行趋势分数38的衰减44,以便考虑在显著的时间内没有检测到其引用16的内容项18。例如,对于第一内容项38,没有检测到的引用16的短时段可能已经消逝,如此,趋势分数38为九可以被衰减44到调整的趋势分数46为八。第二内容项38可能没有在对引用16的检测中展示出任何显著的延迟(例如,最后的引用时间36可能大致等于第二时间42),如此,趋势分数38为六可以被衰减44因子零,以产生调整的趋势分数46为六。相比之下,第三内容项18可能以趋势分数38为八开始,但是,自从最后的检测到的引用16以来可能已经消逝了显著的时间段,衰减44可能产生显著地衰减的调整的趋势分数46为五。以此方式,设备22可以将形成趋势的内容项18的顺序从第一顺序调整到第二顺序(基于衰减44),这可以提高形成趋势的检测的准确性。图5呈现了这些技术的第一实施例,被示为基于对内容项18的引用16来标识形成趋势的内容项18的示例性方法50。可以在具有处理器的设备22上实现示例性方法50,例如,作为存储在诸如系统RAM之类的易失性存储器,或诸如硬盘驱动器、固态驱动器、闪存存储设备或光盘之类的非易失性存储器中的软件指令的集合。示例性方法50从52开始,并涉及在处理器上执行54被配置成实现此处所呈现的技术的指令。具体而言,指令被配置成,在检测到56对内容项18的引用16之后,首先判断引用16是否包括第一检测到的对内容项18的引用16,如果是,以启动58对于内容项18的内容项直方图32。指令还被配置成,在检测到56引用16之后,递增60内容项18的内容项直方图32的当前引用计数34 ;使用 内容项直方图32,设置62内容项18的趋势分数38 ;以及,设置64内容项18的最后的引用时间36。指令还被配置成,在第二时间42,对于相应的内容项18,通过根据第二时间42和内容项18的最后的引用时间36的差、衰减68趋势分数38、以及比较70内容项18的趋势分数38,来标识66形成趋势的内容项18。以此方式,指令可以被配置成使设备22执行此处所呈现的技术,从而在72结束。图6呈现了以此处所呈现的技术的第二实施例为特征的第二情况的图示,包括被配置成基于对内容项18的引用16来标识形成趋势的内容项18的示例性系统86。示例性系统86可以被实现为,例如,包括存储在设备82的存储器中的指令并被配置成实现一起实现这些技术的组件的软件体系结构,和/或作为实现这些技术的各方面的一个或多个硬件组件。示例性系统86在具有处理器84并具有对至少一个内容项18的访问的设备82上操作。示例性系统86包括引用计数组件88,该组件88被配置成,在检测到对内容项18的引用16之后,确定引用16是否包括第一检测到的对内容项18的引用16,如果是,启动对于内容项18的内容项直方图32。引用计数组件88还被配置成递增内容项18的内容项直方图32的当前引用计数34 ;使用内容项直方图32,设置内容项18的趋势分数38 ;以及,设置内容项18的最后的引用时间36。示例性系统86还包括形成趋势的内容项标识组件90,该组件90被配置成,在第二时间42,通过对于相应的内容项18,根据第二时间42和内容项18的最后的引用时间36的差,衰减44趋势分数38,然后比较内容项18的趋势分数38,来标识形成趋势的内容项18。以此方式,示例性系统86根据此处所呈现的技术,使设备82标识内容项18集合之中的形成趋势的内容项18。再一实施例涉及包括被配置成应用此处所呈现的技术的处理器可执行指令的计算机可读介质。可以用这些方式设计的一种示例性计算机可读介质在图7中示出,其中实现100包括其上编码有计算机可读数据104的计算机可读介质102 (例如,⑶-R、DVD-R、或硬盘驱动器盘片)。计算机可读数据104进而包括被配置成根据这里所阐述的原理来操作的计算机指令集106。在一个这样的实施例中,处理器可执行指令106可被配置成执行诸如图5的示例性方法60之类的标识一组内容项之中的形成趋势的内容项的方法。在另一个这样的实施例中,处理器可执行指令106可被配置成实现诸如图6的示例性系统86之类的标识一组内容项之中的形成趋势的内容项的系统。此计算机可读介质的一些实施例可以包括被配置成存储以此方式配置的处理器可执行指令的非瞬时的计算机可读取的存储介质(例如,硬盘驱动器、光盘,或闪存设备)。本领域普通技术人员可以设计可被配置成根据此处描述的技术操作的许多这样的计算机可读介质。可以在许多方面带有变化地设计此处所呈现的技术,某些变化方案可以相对于这些及其他技术的其他变化方案带来额外的优点和/或减少缺点。此外,某些变化方案可以组合地实现,而某些组合可以通过协作而表现出优点增多和/或缺点减少的特点。可以将变化方案包含在各实施例中(例如,图5的示例性方法60和图6的示例性系统86),以给这样的实施例赋予单个优点和/或协同的优点。可以在这些技术的各实施例之间变化的第二方面涉及其中可以使用这样的技术的情况。作为第一示例,社交网络的用户12可以张贴包括对各种内容项18的引用16 (诸 如标识Web资源的统一资源定位符(URL),诸如包含特定报道或内容项的网页)的消息14(例如,可以被社交网络的所有其他用户查看的公开可访问的帖子,和/或被定向到社交网络的特定用户的私有的消息)。作为此第一方面的第二示例,在媒体库中,一个或多个用户12可以请求具有呈现的各种媒体项(诸如播放音乐或示出视频),这样的媒体项的呈现(作为一种引用16)可以被跟踪,以便解释基于媒体的内容项18之间的流行度的趋势。作为此第一方面的第三示例,商业企业可以标识各种商品或服务的顾客的兴趣或购买的趋势(其中,产品的表示包括内容项18,并且购买、推荐、评论、或其视图可以包括对其引用16)。作为此第一方面的第四示例,计算机系统中的各种软件进程可以使用数据对象集合中的各种数据对象,诸如高级编程接口(API)中的功能,文件系统中的文件,数据库中的记录,或数据超高速缓存中的数据条目,并且计算机系统能够通过提供更快的对形成趋势的使用的数据对象的访问,展示出改善的性能。可以通过监视对这样的数据对象的利用率(包括引用16)的使用,来跟踪这样的数据对象(作为内容项18)的形成趋势的使用。作为此第一方面的第五示例,用户或设备可以请求或提供有关各种位置的信息(例如,由全球定位系统(GPS)接收器检测到的位置的报告),并可以评估有关这样的位置的信息的访问和/或报告(包括对内容项18的引用16)。可以检测对这样的位置的引用16中的趋势,以便标识流行的,拥挤的(例如,堵车的位置),和/或有趣的(例如,加地理标签的照片中经常描绘的位置)的区域。然而,由于由GPS接收器检测到的引用16的准确性,可能涉及某些另外的处理,以将引用16与特定位置(作为内容项18)相关联。例如,特定位置可以对应于可变的大小和形状的区域;例如,对应于小的纪念碑(诸如小的雕像)的位置可以包括纪念碑附近的小的,圆形的地理区域,但是,对应于大的地标(诸如巴台农神庙)的位置可以包括不寻常的形状的非常大的区域。然而,GPS接收器可以简单地将用户12的位置作为一个点来报告,诸如检测到的经纬度坐标。因此,实施例可能必须将引用16转换为更一般化的引用,以便标识被引用16引用的内容项18 (例如,位置)。图8呈现了示出了此第一方面的此第五示例的的示例性情况110。在此示例性情况110下,在地理区域112内,可以报告各种位置引用114 (例如,由各种用户12所操作的全球定位系统(GPS)设备所检测到的),并可以包括一组具有特定准确性的经纬度坐标。然而,将由GPS设备报告的每个坐标表示为不同的位置可能没有帮助,特别是在所感兴趣的位置(诸如包括地标的区域)包含多个或许多坐标的情况下。因此,被配置成跟踪位置引用114中的趋势的设备22可以被配置成,对于特定位置引用114,计算116—般化的位置引用118,诸如一起引用诸如地标之类的同一个位置的位置引用114的范围。例如,在图8的示例性情况110下,地理区域112可以被分成多个象限,诸如映射到单个表示的位置的地理坐标的范围。当检测到位置引用114时,设备22可以通过将位置引用114转换为包含坐标的特定象限116来计算116—般化的位置引用118。然后,设备22可以使用一般化的位置引用118作为对内容项18 (例如,被引用的位置)的引用16,以便标识一般化的位置引用118之中的趋势,以标识这样的引用16之中的趋势。所属领域的技术人员可以标识可以使用此处所呈现的技术的许多情况。 可以在这些技术的各实施例之间变化的第二方面涉及标识对特定内容项18的引用16的方式。作为第一示例,引用16可以直接标识内容项18,诸如区别地并直接标识内容项18集合之中的特定内容项18的标识符(例如,名称、数据库中的键值,或统一资源定位符(URL))。然而,在其他情况下,可能必须执行处理以标识引用16和/或被引用的内容项18。作为此第二方面的第二示例,引用16可以被包括在消息14中,如由第一用户12发送到第二用户12的私有的消息,或用户12在社交网络上发布的帖子;然而,消息14可以主要包括另一形式的数据,诸如以特定格式嵌入一个或多个引用16的文本、数据库,或图像。在第一这样的情况下,消息可以包括电话号码、地址、统一资源定位符(URL),或地理坐标,而设备22可以通过对消息14的文本解析(例如,通过对消息14应用基于其已建立的格式来标识电话号码或电子邮件地址的正则表达式),来提取引用16。在第二这样的情况下,社交网络的用户12可以使用“hashtag (井号标签)”格式来在消息14内的文本内容内标识与消息14相关联的一个或多个主题的名称。示例性“hashtag”格式可以包括,例如,短语中的对网球的引用:“I played#tennis today!(我今天打了 # 网球)”和“I watched Wimbledonon television. #tennis (我在电视上看了温布尔登。#网球)”因此,设备22可以评估消息14,以标识嵌入在这样的消息14中井号标签标记的引用16,以便标识对各种内容项18的引用16之中的趋势。作为此第二方面的第三示例,第一引用16可能不直接标识特定内容项18,但是,可能改为标识(直接或间接地)标识内容项18的第二引用16。鉴于各种考虑,用户12可以生成第一引用16,以便鼓励其他用户12 (或由其操作的设备),以被重定向到由第二引用16所标识的内容项18。例如,某些社交网络可能将被张贴的消息14的大小限制为特定文本长度,这可能不足以包括整个引用16(诸如标识特定内容项18但是具有非常大的长度的统一资源定位符(URL))。因此,第一用户12可以使用另一个服务,诸如URL缩短服务,来生成转换为比较长的URL的较短的URL,该比较长的URL转换为内容项18。然后,第一用户12可以将较短的URL张贴在消息14中,而第二用户12,在访问较短的URL之后,可以被重定向到标识内容项18的目标URL。作为第二示例,由第一网络日志作者所生成的网络日志文章(充当直接引用)可以引用并链接到新闻报道。第二网络日志作者可以生成链接到第一网络日志文章的第二网络日志文章,但是,第二网络日志文章的主题可以是原始新闻文章,而不是第二网络日志文章直接引用的第一网络日志文章。在这些及其他示例中,“重定向”引用可以不直接标识内容项18,而是可以标识直接引用内容项18的“目标”引用。可另选地,“目标”引用可以进而通过将用户12重定向到标识内容项18的第三引用16,来间接地引用内容项18。尽管此技术对于用户12可能是有利的或希望的,但是,这可能复杂化对特定内容项18的引用16的检测。因此,当跟踪内容项18中的趋势的设备22检测到引用时,设备22可以检查引用16,以确定引用16是否引用目标引用。如果是,则引用16可以检查目标引用,以便标识它是否还引用第三引用(作为第二目标引用)。最终,设备22可以标识标识内容项18的非重定向引用16,并可以在跟踪对内容项18的引用16的趋势时使用此引用16。此外,设备22可以使用引用缓存,该引用缓存可以存储以前遇到的引用16 (作为键/值对)和由此被直接或间接地引用内容项18。例如,当设备22检测到引用16并标识由此直接或间接地引用的内容项18时,设备22可以将引用16和所标识的内容项18存储在引用缓存中。在遇到另一个引用16之后,设备22可以搜索引用缓存,以确定引用16以前是否遇到过并与特定内容项18相关联。如果是,则设备22可以使用存储在引用缓存中的关联,而不是检查引用16以确定被引用的内容项18。这一对引用16与内容项18的关联进行缓存可以是有利的,例如,对于促进性能(因为检查引用缓存可以比对引用16解除引用以标识引用的内容项18更快),和/或可以促进趋势跟踪的稳健性(例如,重定向引用 16是指不再可用的目标引用16,但是,引用缓存可以标识以前被目标引用16引用的内容项18)。图9呈现了以被某些引用16直接引用的以及被间接地引用内容项18的重定向引用16引用的形成趋势的内容项18的标识为特征的示例性情况120的图示。在此示例性情况120下,根据此处呈现的技术,由用户12张贴的第一消息14可以包括直接标识内容项18的引用16,并可以将引用16记录到内容项直方图32中。用户12可以张贴包括对目标引用124的重定向引用122的第二消息14 (例如,缩短的URL,当被访问时,重定向到区别地标识内容项18的全长的URL)。代替不正确地将目标引用124标识为由重定向引用122引用的内容项18,设备22可以标识重定向,可以跟随目标引用124,并可以标识两者都标识内容项18的重定向引用122和目标引用124两者。此外,设备22还可以将这些关联存储在引用缓存126中,以便如果随后检测到也包括重定向引用122的第三消息14,则设备22可以,在确定引用缓存126包括重定向引用122之后,使用存储在引用缓存126中的关联来确定重定向引用122标识内容项18,并非必须对重定向引用122和目标引用124解除引用以标识被引用的内容项18。以此方式,设备22可以以提高的准确性和/或性能来跟踪对内容项18的引用。所属领域的技术人员可以在实现此处呈现的技术时设计用于标识被各种引用16引用的内容项18的许多技术。可以在这些技术的各实施例之间变化的第三方面涉及这里被用来对检测到的对内容项18的引用16进行计数的内容项直方图32的本质。许多数据结构或数据对象可以被用来存储此信息,某些变化方案可以优于其他变化方案。作为此第三方面的第一示例,图10-11—起示出了可以用于此处呈现的技术中(诸如通过使用内容项直方图32来存储(和计数)检测到的对内容项18的引用16)的内容项直方图32的示例性实现方式。在这些示例性情况下,内容项直方图32包括一组整数,诸如存储器结构的阵列或链接的列表,每一个存储器结构都存储表示特定引用时间段136的引用计数134的整数,以及对下一存储器结构的存储器引用(例如,阵列中的最后一个存储器结构具有NULL (空)的存储器引用,以指示阵列的结束)。每一存储器结构都根据它在阵列中的序数位置,通过阵列索引来标识,第一存储器结构具有阵列索引零,第二存储器结构具有阵列索引I等等。此外,阵列被组织为,以便第一存储器结构存储当前引用时间段136的当前引用计数34,而每一个随后的存储器结构都表示紧前面的引用时间段136。以此方式,依次较早的引用时间段136的引用计数134按相反的时间顺序较晚地存储在列表中,如此,类似于内容项直方图32的图形表示。在图10的示例性情况130下,内容项直方图32被实现为阵列,其中,相应的阵列索引132引用存储了表示相应的引用时间段136的引用计数134的整数的存储器结构。在此实现方式中,特定引用时段136的边界未被存储。相反,第一阵列索引132存储当前引用时间段136的当前引用计数34,每一连续的阵列索引132都存储紧前面的引用时段136的引用计数134。相应的引用时间段136的持续时间可以在内容项直方图32的软件实现中、在与软件实现相关联的配置文件中、通过用户选择等等被固定地定义。此外,当前引用时间段136通过在检测到由内容项直方图32所表示的对内容项18的每一引用16之后被存储(以及更新)的最后的引用时间36来表示。作为第一示例,最后的引用时间36可以表示最后一次检测到对内容项18的引用16的日期和/或时间。作为第二示例,最后的引用时间36可以指示与任何检测到的对内容项18的引用相关联的最近的日期和/或时间(例如,特 定引用16可以包括指示生成时间的时间戳,诸如由用户12张贴的消息14的日期,最近的时间戳可以被用来确定最后的引用时间36,不管何时检测到引用16)。作为第三示例,最后的引用时间36可以表示指示当前引用时段136的开始或结束的日期和/或时间。当设备22检测到对由内容项直方图32所表示的对内容项18的引用16时,对应于当前引用计数34的第一阵列索引132的引用计数134,可以被递增,以记录检测到的引用16。然后,可以将当前引用计数34与其他阵列索引132的引用计数134进行比较,以标识对内容项18的引用16中的趋势。当检测到由内容项直方图32所表示的对内容项18的引用16时(例如,在由用户12张贴的消息14中),这些技术的一个实施例可以递增表示当前引用时间段136的阵列索引的当前引用计数34。然而,实施例还检查最后的引用时间36来确定第一阵列索引132是否仍表示当前引用时间段136。作为第一示例,如果每一引用时间段136都具有指定的持续时间,诸如一个小时,并且如果最后的引用时间36指示在特定小时(例如,特定上午的八点中的小时内)内检测到前一引用16,可以比较当前时间,以确定是否在同一个小时内检测到最近的引用16。作为第二示例,如果最后的引用时间36指示包括在其检测到前一引用16的引用时间段136的开始和/或结束的日期和/或时间,可以检查当前时间,以确定是否在同一个引用时间段136内检测到当前引用16。如果是,可以递增第一阵列索引132的引用计数134 (对应于当前引用计数34),并可以利用当前时间来更新最后的引用时间36。然而,如果在其期间检测到前一引用16的引用时段136自此结束,则一个或多个新阵列索引132可以被插入到阵列的开始处,初始引用计数134为零,以指示对自从以前检测到的引用16的一个或多个引用时间段136的调解。如果中间的引用时间段136已经逝去而没有检测到甚至一个对内容项18的引用16,则可以插入多个阵列索引132。图11呈现了进一步示出了内容项直方图32的使用的示例性情况140。在此示例性情况下,每一阵列索引132都表示一小时引用时间段持续时间的引用时间段136,在每一小时的顶部失效。然而,当这些技术的实施例首先示出最后的引用时间36时,确定在上午的9点钟的小时内检测到最近的引用16,而在同一个上午的8点钟的小时内检测到前面的引用16。因此,不是递增表示8点钟小时的引用时间段136的引用计数134,通过在阵列的前面插入一个阵列索引132来调整阵列,初始引用计数134为零。此新的阵列索引132表示包括上午的9点钟小时的当前引用时段136的当前引用计数34。然后,可以递增此第一阵列索引132的引用计数134,以记录检测到的对内容项18的引用16,并可以更新最后的引用时间36,以指示最后的检测到的引用16的日期和时间。以此方式,使用阵列来记录对引用16的检测,作为内容项直方图32,并更新阵列以指示时间的流逝。尽管图10-11 —起示出了内容项直方图32的一个示例性实现方式,但是,还可以选择许多其他实现方式。作为第一示例,可以以按前向时间顺序来组织阵列,当前引用时间段136被存储为最后的阵列索引132和表示紧前面的引用时间段136的前面的阵列索引132。作为第二示例,如果只有当前引用计数34前面的特定数量的引用时段136被视为与趋势检测相关,可以指定最大阵列大小,当插入一个或多个阵列索引132时,如果阵列超出最大阵列大小,可以删除最旧的阵列索引132。作为第三示例,阵列可以以除链接的列表以外的数据结构表示,例如,作为简单ASCII或Unicode (统一码)文本字符串,包括通过空白区分隔的整数的顺序,并指示相应的引用时间段136的引用计数134。 可以在这些技术的各实施例之间变化的第四方面涉及基于与相应的内容项18相关联的内容项直方图32为相应的内容项18设置趋势分数38。作为第一示例,可以作为与内容项直方图32中的内容项18的较早的引用计数134相比,内容项直方图32中的内容项18的最近引用计数134的变化幅度,来计算趋势分数38。作为第二示例,可以作为引用计数134上的曲线斜率,来计算趋势分数38,也许较晚的引用计数134之间的变化比较早的引用计数134之间的变化具有更大的权重。对趋势分数18的其他计算可以涉及其他统计技术和概念,诸如对有意义的与无意义的变化的确定。作为此第四方面的第三示例,内容项直方图32可以涉及一组至少两个内容项直方图32,诸如一组两个或更多阵列,其中,每一内容项直方图32指示不同的时间段内对引用16的检测。每一内容项直方图32都可以累积诸如一分钟、一小时、一天,以及一周之类的不同的引用时段时间长度的特定引用时间段136的引用计数134。可以理解,内容项18(诸如新闻报道或地理位置)的引用中的趋势可以以许多方式产生,诸如引用16的快速的并且突然的张贴,或这样的引用16随着时间的推移而稳定的增长。多个内容项直方图132的使用可以允许在对内容项18的引用16中检测到几种类型的趋势,诸如对相对短期趋势的快速的检测(例如,用户12在几分钟间隔内生成对特定内容项18的引用16的突然的浪涌)以及对相对长期的趋势的检测(例如,在一天或一周跨度内对特定内容项18的引用16的稳定的增长)。当检测到引用16时,可以递增表示内容项18的每一内容项直方图32的当前引用计数34。另外,可以在所有这些内容项直方图32的视图中检测到内容项18的趋势分数38,由此提供对各种类型的趋势的更敏感的并且更准确的检测。图12呈现了以三个内容项直方图32为特征的示例性情况140,每一内容项直方图32都被实现为单独的阵列并被配置成存储对同一个内容项18但是在不同的时段内的引用16。第一内容项直方图142可以以表不具有一小时引用时间段持续时间的引用时间段136的阵列索引132为特征;第二内容项直方图142可以以表示具有一天引用时间段持续时间的引用时间段136的阵列索引132为特征;而第三内容项直方图142可以以表示具有三天引用时间段持续时间的引用时间段136的阵列索引132为特征。在此示例性情况140下,内容项直方图32揭示了有关内容项18的趋势的信息的不同的集合。表示的内容项18可能在过去的几天已经开始展示出稳定的正的趋势,如由第二内容项直方图146所指示的。然而,第一内容项直方图142实际上可以揭示短期的负的趋势,由于在任何特定日子,引用16可以由用户12在白天(当用户12更活跃)时比在夜里更频繁地生成,如此引用计数134可能随着白天进入晚间而下降。相比之下,第三内容项直方图150可能还不反映对内容项18的引用16中的正的趋势,因为当前引用时段136的结果仍被制表。例如,对于展示出爆发地正的趋势(可以只通过第一内容项直方图142快速地检测到,但不通过表示比较长的引用时间段持续时间的内容项直方图32),或表明稳定的并且正的但是较慢的趋势(可能仅在第三内容项直方图150上可检测到的)的内容项18,可以观察到不同的结果。通过利用多个内容项直方图32,实施例可以检测对内容项18的引用16之中的多种类型的趋势。例如,在图12的示例性情况140下,在递增内容项直方图32的当前引用计数34之后,实施例可以为每一个内容项直方图32设置趋势分数36,从而反映每一内容项直方图32内的对内容项18的引用16的趋势。然后,实施例可以基于相应的内容项直方图32的多个趋势分数36来计算内容项18的趋势分数36。在图12的示例性情况140下,为第一内容项直方图142计算第一趋势分数144 (指示检测到的对内容项18的引用16中的 负的趋势);为第二内容项直方图146计算第二趋势分数148 (指示检测到的对内容项18的引用16中的强的正的趋势);并为第三内容项直方图150计算第三趋势分数152 (指示检测到的对内容项18的引用16中的轻微的正的趋势)。在这些趋势分数36之中,基于引用16的按天而计的趋势,如由第二内容项直方图146所反映的,选择最大趋势分数32作为内容项18的最后一个趋势分数154。然而,其他实施例可以以不同的方式使用这样的趋势分数36,例如,通过选择最小趋势分数36或平均趋势分数36。所属领域的技术人员可以设计此处所呈现的技术中所使用的内容项直方图132的许多实现方式和使用。可以在这些技术的各实施例之间变化的第五方面涉及在比较内容项18以标识形成趋势的内容项18时衰减44趋势分数32。如这里所描述的,在检测到对内容项18的引用16之后计算出的趋势分数38可以反映检测到最近的引用16前面的引用时间段的引用计数134,但是,可能不反映最后的引用时间36和当使用内容项18的趋势分数32时的第二(随后的)时间之间的不活动时间段,在此不活动时段内没有检测到引用16时。由于许多内容项18可能展示出内容项18的最后的引用时间36和第二时间42之间的至少短时间段的不活动(且可能长时间段的不活动),因此,趋势分数38可能在趋势检测中产生不准确的结果,除非被调整以反映不活动时间段。因此,,并作为此第五方面的第一示例,在在第二时间42比较内容项18之后,基于第二时间42和内容项18的最后的引用时间36之间的差,衰减44相应的内容项18的趋势分数32。例如,对于最后的引用时间36和第二时间42之间的每一个中间引用时间段136,趋势分数32可以被衰减44固定量(诸如一点)或固定的百分比(诸如10%)。可另选地,可以应用渐进的惩罚,以在考虑比较长的不活动时间段的情况下导致加速的衰减44,诸如对于带有零引用16的第一引用时间段136,趋势分数38降低2%,对于第二引用时间段136,趋势分数38降低4%,对于第三引用时间段136,趋势分数38降低10%,
坐坐寸寸ο作为此第五方面的第二示例,可以执行趋势分数38的衰减44,以便产生具有形成趋势的内容项集合大小的形成趋势的内容项集合,诸如“前十个形成趋势的项”内容项集合。因此,可以为内容项集合选择具有最高调整的趋势分数46的内容项18(在趋势分数38的衰减44之后)。此外,在只有形成趋势的内容项集合的内容项18有关系的情况下,可以只对于可以被包括在此形成趋势的内容项集合中的内容项18执行衰减44,以便计算资源不会通过衰减44不能被包括在形成趋势的内容项集合中的内容项18的趋势分数46而被消耗。例如,可以执行衰减44,以便第一内容项18的第一趋势分数38在第二内容项18的低于第一趋势分数38的第二趋势分数38之前衰减44。另外,在标识填充形成趋势的内容项集合直到形成趋势的内容项集合大小的内容项18的经调整的趋势分数46之后,如果没有其他具有“未衰减的”高于形成趋势的内容项集合内的内容项18的经调整的趋势分数46的趋势分数38 (例如,基于自从最后的引用以来消逝的时间,衰减之前的趋势分数)的内容项18,则可以停止衰减44。此技术可以促进在标识形成趋势的内容项18时节省计算资源(特别是在内容项18集合是大的情况下)。图13呈现了示出了此衰减44相应的内容项18的趋势分数38的技术的示例性情况。在此示例性情况下,为了标识具有最高调整的趋势分数46的一组三个形成趋势的内容 项18,内容项18是首先根据(未衰减的)趋势分数38排序,具有更高的未衰减的趋势分数38的内容项18在具有较低的未衰减的趋势分数38的内容项18之前被衰减44。在特定第二时间(在第二时间42),可以按下列方式比较内容项18的趋势度。在第一时间点160,具有(最高未衰减的)趋势分数38为18的第一内容项18被衰减44,以产生调整的趋势分数46为17 (反映自从最后的引用时间36以来的不活动的短时间段)。接下来,在第二时间点162,具有(次最高未衰减的)趋势分数38为16的第二内容项18被衰减44,以产生调整的趋势分数为11 (反映自从最后的引用时间间36以来的不活动的比较长的时间段)。接下来,在第三时间点164,具有趋势分数38为16的第三内容项18被衰减到调整的趋势分数为14,由此,反映在第三内容项18比在第二内容项18中更多的正的趋势。尽管现在标识了具有比较高的调整的趋势分数46的三个内容项18,但是,这些不是内容项集合中的趋势度最高的内容项18,因为第四内容项18呈现未衰减的趋势分数38为13,也许超出了第二内容项18的趋势度。因此,在第四时间点166,第四内容项18的趋势分数38被衰减44到调整的趋势分数46为12,由此,取代三个最流行的内容项18的集合中的第二内容项18。然而,由于衰减44只能降低内容项18的趋势分数38,在此第四时间点166之后不计算进一步的衰减44,由于没有其余的内容项18呈现大于三个趋势度最高的内容项的集合中的最低的调整的趋势分数46的未衰减的趋势分数38 (即,由第四内容项18呈现的调整的趋势分数46为12)。因此,趋势度最高的内容项18的集合可以被视为被确定性地选择,并可以通过放弃对其他内容项18的进一步的衰减44,节省计算资源。所属领域的技术人员可以在实现此处所呈现的技术时设计衰减44内容项18的趋势分数38的许多方式。可以在这些技术的各实施例之间变化的第六方面涉及已标识的形成趋势的内容项18的各种使用。作为第一示例,可以使用趋势来调整计算资源,以便提高效率和/或性能,例如,通过将比较频繁地引用的内容项18存储在缓存中,以便实现更快的访问。作为此第六方面的第二示例,在这些技术被实现以标识产品集合中的形成趋势的产品的情况下(诸如通过商业企业),可以使用涉及形成趋势的内容项18的信息,来响应于需求而调整价格(例如,提高产品的价格,表明正的趋势,和/或降低产品的价格,表明负的趋势)和/或库存(例如,排序产品的多个单元,表明正的趋势,预期持续的销售增长,和/或降低产品的顺序,表明负的趋势)。作为此第六方面的第三示例,可以为用户12显示有关形成趋势的内容项的所得信息,例如,作为其他用户12正在以形成趋势的方式引用的内容项18的建议(诸如新闻文章、网站、媒体对象、产品,或地理位置)。例如,社交网络可以使用有关表示各种Web资源(由各种用户12张贴的消息14中所包括的URL所标识的)的形成趋势的内容项18的信息,以在特定时间,例如,在接收到来自用户12的标识形成趋势的内容项18的请求之后,向用户12呈现形成趋势的Web资源的列表。这样的实施例可以以各种方式来呈现形成趋势的内容项18,例如,根据形成趋势的内容项18的趋势分数38排序。另选地或另外地,实施例可以抢先将形成趋势的内容项18通知给用户12,例如,通过呈现诸如指出形成趋势的内容项18的即时消息,弹出式对话框,或电子邮件消息之类的通知。图14呈现了以向用户12呈现176形成趋势的内容项18为特征的示例性情况170。在标识具有比较高的趋势分数38的三个形成趋势的内容项18之后,根据此处所呈现的技术配置的设备22可以与由用户12操作的具有显示器174的用户设备172进行通信,并可以将数据发送到用户设备172 (例如,网页),用于呈现在呈现形成趋势的内容项18的显示器174上(例如,根据趋势分数38的降序排序,以便具有最高趋势分数38的内容项18第一个呈现)。此呈现176可以,例如,应用户12的请求地呈现。另外,在标识具有特别高的趋势分数38的第四内容项18 (例如,突发新闻报道)之后,设备22可以向用户设备172发送信息,以使形成趋势的内容项18的通知178出现在显示器174上,以便呈现给用户12。以此方式,根据这些技术标识的形成趋势的内容项18可以抢先或者应请求向用户12呈现。所属领域的技术人员可以在实现此处所呈现的技术时设计使用有关形成趋势的内容项18的·信息的许多方式。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。如在本申请中所使用的,术语“组件”、“模块”、“系统”、“接口 ”等等一般旨在表示计算机相关的实体,其可以是硬件、硬件和软件的组合、软件、或运行中的软件。例如,组件可以是,但不限于是,在处理器上运行的进程、处理器、对象、可执行码、执行的线程、程序和/或计算机。作为说明,运行在控制器上的应用程序和控制器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程中,并且组件可以位于一个计算机内和/或分布在两个或更多的计算机之间。此外,所要求保护的主题可以使用产生控制计算机以实现所公开的主题的软件、固件、硬件或其任意组合的标准编程和/或工程技术而被实现为方法、装置或制品。如这里所使用的术语“制品”可以包含可以从任何计算机可读的设备、载体或介质进行访问的计算机程序。当然,本领域的技术人员将会认识到,在不背离所要求保护的主题的范围或精神的前提下可以对这一配置进行许多修改。图15以及下面的讨论提供了用于实现这里所阐述的供应中的一个或多个的实施方式的合适计算环境的简要概括描述。图15的操作环境只是合适的操作环境的一个示例,并且不旨在对操作环境的使用范围或功能提出任何限制。示例计算设备包括,但不限于,个人计算机、服务器计算机、手提式或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等等)、多处理器系统、消费电子产品、小型计算机、大型计算机、包括上面的系统或设备的中的任何一种的分布式计算环境等等。虽然并非必需,但各实施方式是在由一个或多个计算设备执行的“计算机可读指令”的一般上下文中描述实施方式的。计算机可读指令可以通过计算机可读介质来分发(下面将呈现)。计算机可读指令可被实现为执行特定任务或实现特定抽象数据类型的程序模块,诸如函数、对象、应用程序编程接口(API)、数据结构等等。通常,计算机可读指令的功能可按需在各个环境中组合或分布。图15示出了包括被配置成实现此处所提供的一个或多个实施例的计算设备182的系统180的示例。在一种配置中,计算设备182包括至少一个处理单元186和存储器188。取决于计算设备的确切配置和类型,存储器188可以是易失性的(如RAM)、非易失性的(如ROM、闪存等)或是两者的某种组合。该配置在图15中由虚线184来例示。在其它实施例中,设备182可以包括附加特征和/或功能。例如,设备182还可以包括附加存储(例如,可移动和/或不可移动),其中包括但不限于磁存储、光存储等等。这 样的另外的存储在图15中由存储190示出。在一个实施例中,用于实现此处所提供的一个或多个实施例的计算机可读指令可以在存储190中。存储190还可以储存实现操作系统、应用程序等的其它计算机可读指令。可以在存储器188中加载计算机可读指令以供例如处理单元186执行。如这里所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。存储器188和存储190都是计算机存储介质的示例。计算机存储介质包括,但不限于,RAM、R0M、EEPR0M、闪存或其他存储技术,CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备,或可以用来存储所需信息并可以被计算设备182访问的任何其他介质。任何这样的计算机存储介质可以是设备182的一部分。设备182还可以包括允许设备182与其他设备进行通信的通信连接196。通信连接196可以包括,但不限于,调制解调器、网络接口卡(NIC)、集成网络接口、射频发射机/接收机、红外线端口、USB连接,或用于将计算设备182连接到其他计算设备的其他接口。通信连接196可以包括有线连接或无线连接。通信连接196可以发送和/或接收通信介质。术语“计算机可读介质”可以包括通信介质。通信介质通常以诸如载波或其他传输机制之类的“已调制数据信号”来体现计算机可读指令或其他数据,并包括任何信息传送介质。术语“已调制数据信号”可以包括以在信号中编码信息的方式来设置或改变其一个或多个特征的信号。设备182可以包括输入设备194,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备、红外照相机、视频输入设备、和/或任何其他输入设备。设备182中还可以包括输出设备192,诸如一个或多个显不器、扬声器、打印机、和/或任何其他输出设备。输入设备194和输出设备192可以通过有线连接、无线连接、或其任何组合来连接到设备182。在一个实施方式中,可以使用来自另一计算设备的输入设备或输出设备作为计算设备182的输入设备194或输出设备192。计算设备182的组件可以通过诸如总线之类的各种互连来连接。这样的互连可以包括诸如PCIExpress之类的外围部件互连(PCI)、通用串行总线(USB)、火线(IEEE1394)、光学总线结构等等。在另一实施方式中,计算设备182的组件可以通过网络互连。例如,存储器188可以包括位于通过网络互连的不同物理位置的多个物理存储器单元。本领域的技术人员将认识到,用来存储计算机可读指令的存储设备可以分布在网络上。例如,可经由网络200访问的计算设备198可以存储计算机可读指令来实现这里所提供的一个或多个实施方式。计算设备182可以访问计算设备200,并下载计算机可读指令的一部分或全部以便执行。或者,计算设备182可以根据需要下载计算机可读指令的一部分,或者一些指令可以在计算设备182上执行而一些指令则在计算设备200上执行。这里提供了实施方式的各种操作。在一个实施方式中,所描述的操作中的一个或多个可以组成存储在一个或多个计算机可读介质上的计算机可读指令,这些指令如果由计 算设备执行则使得计算设备执行所描述的操作。描述一些或所有操作的顺序不应该被解释为暗示这些操作一定是依赖于顺序的。从本说明书获益的本领域技术人员将认识到替换顺序。此外,应该理解,并非所有的操作都一定存在于这里所提供的每一个实施方式中。此外,在此使用词语“示例性”意指用作示例、实例或说明。这里作为“示例性”所描述的任何方面或设计不必被解释为有利于其他方面或设计。相反,使用词语“示例性”旨在以具体的方式呈现各个概念。如本申请中所使用的,术语“或”意指包括性“或”而非互斥性“或”。即,除非另有指定或从上下文可以清楚,“X使用A或B”意指任何自然的包括性排列。即,如果X使用A ;X使用B^X使用A和B两者,则在任何以上情况下,都满足“X使用A或B。”此外,本申请中和所附权利要求书所使用的冠词“一”和“一个” 一般可以解释为“一个或多个”,除非另有指定或从上下文可以清楚是指单数形式。同样,虽然参考一个或多个实现示出并描述了本发明,但本领域技术人员基于对本说明书和附图阅读和理解,可以想到各种等效更改和修改。本发明包括所有这样的修改和更改,并且仅由所附权利要求书的范围来限定。具体来说,对于由上述组件(例如,元素、资源等等)执行的各种功能,除非另外指明,否则用于描述这些组件的术语旨在对应于执行所描述的执行此处在本发明的示例性实现中所示的功能的组件的指定功能(例如,功能上等效)的任何组件,即使这些组件在结构上不等效于所公开的结构。此外,尽管可相对于若干实现中的仅一个实现来公开本发明的一个特定特征,但这一特征可以如对任何给定或特定应用所需且有利地与其他实现的一个或多个其他特征相组合。此外,就在“具体实施方式
”或者权利要求书中使用术语“包括”、“具有”、“带有”或其变体而言,这些术语旨在以与术语“包括”相似的方式为包含性的。
权利要求
1.一种基于对具有处理器的设备上的内容项的引用来标识形成趋势的内容项的方法,所述方法包括 在所述处理器上执行被配置成执行下列操作的指令 在检测到对内容项的引用之后 如果所述引用包括第一检测到的对所述内容项的引用,则启动对于所述内容项的内容项直方图; 递增对于所述内容项的所述内容项直方图的当前引用计数; 使用所述内容项直方图,设置所述内容项的趋势分数;以及 设置对于所述内容项的最后的引用时间;以及 通过下列操作,在第二时间标识形成趋势的内容项 对于相应的内容项,根据所述第二时间和所述内容项的所述最后的引用时间的差,衰 减所述趋势分数;以及 比较所述内容项的所述趋势分数。
2.如权利要求I所述的方法 相应的内容项包括数据对象库中的数据对象,以及 相应的对所述内容项的引用包括由至少一个代理对所述数据对象的访问。
3.如权利要求I所述的方法 相应的内容项包括位置; 相应的对所述内容项的弓I用包括对所述位置的位置引用;以及 所述指令被配置成执行下列操作,在检测到所述对所述内容项的引用之后 计算包括所述位置引用的一般化的位置引用,以及 使用所述一般化的位置引用,作为所述对所述内容项的引用。
4.如权利要求I所述的方法 检测对所述内容项的引用包括 检查引用,以确定所述引用是否引用目标引用;以及 在确定所述引用对目标引用进行引用之后,使用所述目标引用作为对所述内容项的引用。
5.如权利要求4所述的方法 所述设备具有引用缓存,所述引用缓存对于相应的引用,标识由所述引用所标识的所述目标引用; 所述指令被配置成,在确定引用对目标引用进行引用之后,将所述引用和所述目标引用存储在所述引用缓存中;以及 检查所述引用,以确定所述引用是否引用目标引用包括确定所述引用缓存是否包括所述引用。
6.如权利要求I所述的方法,所述内容项直方图包括对所述内容项的引用计数的阵列,相应的引用计数指示在具有引用时间段持续时间的引用时间段内检测到的所述内容项的引用的计数,并且至少一个引用计数表示当前引用时间段内的所述引用计数。
7.如权利要求6所述的方法 所述最后的引用时间指示所述当前引用时间段的开始时间;以及递增所述当前引用计数包括 将所述引用的引用时间与所述最后的引用时间进行比较;以及 如果所述引用时间超出所述当前引用时间段多于所述引用时间段持续时间 向所述阵列中插入至少一个引用计数,所述至少一个引用计数被初始化为零的,并且表示自从所述最后的引用时间以来所述引用时间段持续时间的至少一个引用时段,以及更新所述最后的引用时间。
8.如权利要求所述6的方法 内容项的所述内容项直方图包括至少两个对所述内容项的引用计数的阵列,第一阵列包括在具有第一引用时间段持续时间的引用时间段内检测到的相应的引用计数,而第二阵列包括在具有不同于所述第一引用时间段持续时间的第二引用时间段持续时间的引用时间段内检测到的相应的引用计数;以及 设置所述内容项的所述趋势分数包括使用包括所述内容项直方图的所述至少两个阵列,设置所述内容项的所述趋势分数。
9.如权利要求8所述的方法,设置所述内容项的所述趋势分数包括 对于相应的阵列,计算阵列趋势分数;以及 设置所述趋势分数作为所述阵列趋势分数之中的最大阵列趋势分数。
10.如权利要求I所述的方法,设置所述内容项的所述趋势分数包括计算与所述内容项直方图中的所述内容项的以前的引用计数相比,所述内容项直方图中的所述内容项的最近的引用计数的改变幅度。
11.如权利要求I所述的方法,衰减相应的内容项的所述趋势分数包括 计算包括具有所述第二时间和所述最后的引用时间之间的引用时间段持续时间的至少一个引用时间段的引用流逝间隔,以及 对于所述引用流逝间隔的相应的引用时间段,将所述内容项的所述趋势分数降低一衰减值。
12.如权利要求I所述的方法,标识所述形成趋势的内容项包括在所述形成趋势的内容项之中,标识具有最高趋势分数的形成趋势的内容项的形成趋势的内容项集合,所述形成趋势的内容项集合具有形成趋势的内容项集合大小。
13.如权利要求12所述的方法,衰减相应的内容项的所述趋势分数包括 在具有第一趋势分数的第一内容项和具有低于所述第一趋势分数的第二趋势分数的第二内容项之间,在衰减所述第二内容项的所述趋势分数之前,衰减所述第一内容项的所述趋势分数;以及 在衰减内容项的所述形成趋势的内容项集合大小的所述趋势分数得到比其余的内容项的所述趋势分数更高的趋势分数之后,停止衰减所述内容项的所述趋势分数。
14.如权利要求I所述的方法 在在第二时间从用户接收到对标识形成趋势的内容项的请求之后,执行在所述第二时间标识所述形成趋势的内容项;以及 在所述第二时间标识所述形成趋势的内容项包括向所述用户呈现所述形成趋势的内容项。
15.一种被配置成基于对所述内容项的引用来标识形成趋势的内容项的系统,包括弓I用计数组件,被配置成在检测到对内容项的引用之后 如果所述引用包括第一检测到的对所述内容项的引用,则启动对于所述内容项的内容项直方图; 递增对于所述内容项的所述内容项直方图的当前引用计数; 使用所述内容项直方图,设置所述内容项的趋势分数;以及 设置对于所述内容项的最后的引用时间;以及 形成趋势的内容项标识组件,被配置成通过下列操作在第二时间标识形成趋势的内容项 对于相应的内容项,根据所述第二时间和所述内容项的所述最后的引用时间的差,衰 减所述趋势分数;以及 比较所述内容项的所述趋势分数。
全文摘要
在内容项集合内,基于对内容项的引用的频率变化,特定内容项可以被标识为趋势。例如,社交网络的用户可以通过在消息中张贴其统一资源定位符(URL)来引用Web资源,并形成趋势的Web资源可以通过检测这样的引用的频率的变化来标识。可以通过对内容项直方图中的这样的引用进行计数,并通过在检测到对内容项的每一引用时计算趋势分数,来跟踪这些趋势。然后,可以基于第二时间和最后一次检测到对内容项的引用的最后的引用时间之间的时间段,通过比较衰减相应的内容项的趋势分数之后的趋势分数,来在第二时间标识形成趋势的内容项。
文档编号G06Q50/00GK102947856SQ201180030937
公开日2013年2月27日 申请日期2011年6月20日 优先权日2010年6月23日
发明者S·W·伊克曼, T·M·莱尔德-麦康奈尔 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1