无监督消息聚类的制作方法

文档序号:6366504阅读:450来源:国知局
专利名称:无监督消息聚类的制作方法
无监督消息聚类
背景技术
具有短的消息长度的消息已成为通信的重要形式。一些服务提供通常任何订阅的人都可以获得的短消息。这样可以允许对来自这些服务的短消息捜索相关的内容。可惜的是,部分由于消息的有限内容的原因,对短消息捜索造成困难。

发明内容
无监瞀的聚类(unsupervised clustering)可以用于将微博或其他短长度的消息组织到消息簇中。消息可以与现有的簇进行比较以确定相似度得分。如果至少ー个相似度得分超过阈值,则消息可以添加到现有的消息簇。如果消息与现有的簇不相似,则将该消息与准则作比较以开始新的消息簇。此发明内容以简要的形式提供了对选择的ー些概念进行的介绍,它们在以下的具 体实施例中被进ー步描述。此发明内容不g在标识所要保护主题的关键特征或必要特征,也不g在孤立地辅助确定所要保护主题的范围。


以下參考附图详细描述本发明,其中
图I示出根据本发明实施例的处理消息以添加到簇的示意流程图。图2-4示出根据本发明各种实施例的方法的示例。图5是适合于用来实现本发明实施例的示例性计算环境的框图。图6示意性地示出适合执行本发明实施例的网络环境。
具体实施例概述
在各种实施例中,提供了用于对诸如包含少于固定数量字符的微博条目或消息的具有相对短的长度的消息进行聚类的系统和方法。该系统和方法能够允许基于相关性因子、品质因子和/或其他因子来过滤消息。经过滤的消息随后可以分配给适当的消息簇。如果不存在适当的消息簇,并且如果消息具有足够的品质(quality),则可以开始ー个新的消息簇。消息簇随后可用来便利对消息的关键词捜索。可以在不必基于消息的长度计算规范化的相似度值的情况下来进行将消息分配到消息簇。用于发送有限长度消息的微博或其他类型的公开或半公开服务正变得日益普及。这些消息往往具有有限数目的字符,例如大约250个字符或更少、或者大约200个字符或更少、或大约160个字符或更少、或者大约140个字符或更少、或者大约100个字符或更少。消息中的部分字符可以用来提供经由网络可获得的到较长消息或其他文档的链接。由于消息短的性质,难于对单个消息进行排名以用于关键词捜索。短消息中低的总字符数目会导致消息中相应地低数目的单个词语单元或“标记”。在此说明书中,“标记(token) ”指代根据用于解析消息的规则来一起考虑的一个或多个字符的字符串。例如,可以将对通过“空格”字符或标点字符分开的字符分组视为标记。另ー类型的标记可以是用于连接到另一文档的字符。其他的标记还可以包括空格、标点、或其他非字母数字字符。取决于用来标识标记的定义,一些标记可以对应于多个词和/或部分词。而在其他实施例中,任意合适类型的定义都可以用来确定消息内的标记。由于消息中低的标记数目,消息分组是有用的。消息分组可以例如便于对消息组的特征而不是单个消息进行关键词搜索。使用有监瞀的机器学习算法对具有有限长度的消息进行排名可能会有一些已知的问题。收集时间敏感的文档的标签数据,例如在线社交微博数据,是有挑战性的并且代价昂贵。有监瞀的学习算法还可能要求使用新近的标签数据进行更新以反映用户行为随时间的任何变化。像聚类一祥的无监瞀学习算法对具有难以预测的内容的文档的分组具有优势。可惜的是,传统的聚类算法可能需要大量的计算来測量文档之间的相似度。确定最佳数目的 簇也消耗计算机资源。此外,常规的聚类算法通常不提供对获得的簇进行排名的机制。在各种实施例中,提供了无监瞀学习算法,其能够协助对包含低数目的字符和/或标记的文档进行聚类。无监瞀学习算法能够执行初始过滤来去除不期望的文档。消息由于存在与垃圾消息相关联的特征而被去除或排除,和/或消息由于具有低品质的得分而被去除或排除。随后为剰余的文档生成品质值,以确定给定的文档是否与现有的消息簇相关联,或者该文档是否能够用来形成新的消息簇。还可以基于簇的内容对消息簇进行排名。在一些实施例中,可以为每个消息簇确定标记的特征向量以协助识别另外的消息来添加到该簇。簇标记向量还可以用于确定簇与例如来自搜索查询的关键词之间的匹配。在此讨论中,“标记向量”是消息或簇中的标记的ー种表示。标记向量可以认为是稀疏向量,其中可能的向量元素对应于可能包括在向量中的标记。对于包含小于固定数量的字符的单个消息来说,仅有有限数目的标记是可能的。因此,消息标记向量的大多数向量元素都为零值,以指示给定的标记在标记向量中不存在。消息标记向量仅对于在消息中存在的标记具有非零值。在此讨论中,可以将标记向量描述为具有与标记向量中的非零值数目相对应的长度。注意到,虽然标记向量在此描述为具有零值或非零值,但是任何其他合适的指定集合都可以用来指示标记存在与否。在各种实施例中,特征向量可以用来表示消息簇的内容。这可以称为簇标记向量。代替使用表示消息簇内所有消息中的所有标记的向量,簇标记向量可以包括仅针对代表数量的标记的非零值。可以根据总出现频率,或基于根据大的文档语料库中标记的出现频率而规范化的加权出现频率,来选择这些代表性的标记。在许多情况下,仅存储和/或使用标记向量的非零元素是合适的。诸如消息标记向量或簇标记向量的标记向量可以通过任意合适类型的数据格式来表示,该合适类型的数据格式指示存在于消息标记向量或簇标记向量中的标记。例如,存在于向量中的标记的标识符列表可以表示该向量。可选地,标记向量的表示还可以包括存在于向量中的标记的加权因子。该加权因子例如可以指示标记在文档语料库中出现的规范化的可能性。该加权因子还能够可选地指示标记在消息和/或簇中是否出现多次。用于为添加到簇中而评估消息的因子
为了建立消息簇,潜在地可以使用很多因子来评估消息的品质。这些因子可以例如包括消息的总主题或消息中标记的数目。用于确定消息品质的因子可以称为品质特征。可选地,得分以品质特征值的形式与每个品质特征相关联。品质特征值的算数和/或几何和/或对数组合可以用来确定单个消息的品质值。作为对消息执行品质评估的预备步骤,可以对消息进行过滤以分离出任意不适合于进ー步评估的消息。该预备过滤可以用来去除或排除各种消息类型。一个选择是去除源于已知为不期望的域和/或标识符的消息。这样的域和/或标识符可以是已知的垃圾源,或者是已知的色情或成人内容源。也会排除包括到这样的域的链接的消息。另ー选择是滤除使用不期望的语言的消息。再一选择是滤除看起来意在针对单个接收者的消息。虽然消息以公开或半公开的方式来发布,但是消息中的ー个或多个标记可以指示该消息实际上是意在针对单个接收者的。又ー选择可以是使用以上特征的ー个或多个,也可能与其他特征结合,来获得消息的垃圾得分(spam score).垃圾得分高于(或低干)阈值的消息会被滤除。对于剩下的消息,可以将垃圾得分作为ー个品质特征值来保留以确定消息的整体品质值。
通过过滤可以去除任意合适数目的消息。通过过滤去除的消息的数目可以是至少占所接收用于评估的消息的约5%、或者至少占约10%、或者至少占约25%、或者至少占约50%。通过过滤去除的消息数目可以为大约95%或更少、或大约75%或更少、或大约50%或更少、或大约25%或更少。可以考虑的另ー个因子是消息内标记的数目。这个也称为消息的标记长度。虽然消息可以具有最大数目的字符,但是ー些消息可以具有比最大数目更少的字符。消息中标记的数目可以是消息品质的指示器。可选地,消息的标记长度可以基于消息中不同的(独持)标记的数目。还可以考虑的其他品质特征涉及消息的特性。ー个特性可以是消息是否已被另ー用户转发或重新发布。在很多情形中,消息可能初始地对所有潜在读者的子集是可获得的。看见消息的第二用户可能选择将该消息转发或重新发布给通常阅读该第二用户的消息的其他用户。当转发或重新发布事件发生时,可以对消息做标志以指示该重新发布。这个可以用作ニ元(binary)的品质特征值以加到消息的得分或品质值。可选地,可以对消息施加另外的要求以获得重新发布的标志或得分。例如,可以要求用户标识与转发或重新发布事件相关联。可选地,可以要求转发或重新发布事件与不同干与原始消息发布相关联的用户标识符的用户标识符相关联。再ー选择可以是要求转发或重新发布的事件不与已知的垃圾分发者相关联。另ー特性可以是消息是否包括链接。一些链接可能指示垃圾消息。然而,在非垃圾消息中链接的存在可以指示更高品质的消息。消息中存在链接可以是用于确定消息的品质值的另一二元品质特征。可替换地,由于存在链接而导致的消息的品质值的变化取决于任意合适的因子。其他品质特征值还可以基于编写消息的用户。发布消息的用户能够具有权威(authority)得分。该权威得分可以基于用户的ー个或多个特性。用户的权威得分的一部分可以基于该用户与消息系统的关系。例如,消息系统的管理员可以具有很高的权威得分。可替换地,权威得分的一部分可以基于与用户相关联的读者的数目。如果相当多的人已经订阅了阅读来自某用户的消息,这表明该用户提供了有价值或品质的消息。又ー选择可以是将权威得分部分基于其他用户所提供的第一用户的排名。在实施例中,权威得分可以基于阅读来自给定用户的消息的不同用户的数目。分配此权威得分的ー种方式为使权威得分对数依赖于用户的数目。这样可以反映以下事实,即ー些用户仅有数十个读者,而其他用户拥有数千甚至更多的读者。对数依赖使得在品质特征值中容易获取读者数目上如此大范围的变化。消息簇的排名
随着消息添加到消息簇,可以根据簇中的消息来确定该簇的排名。一个选择可以是具有基于簇内消息的平均品质特征值的消息簇的排名值。在实施例中,簇排名可以基于簇中消息的平均垃圾得分、平均标记长度、重新发布平均得分、所包括的链接的平均得分、以及平均权威得分中的两项或更多项的组合。在另ー实施例中,簇的排名可以 基于以上特征的三个或更多、或者以上特征的四个或更多、或者以上所有特征。可选地,簇的排名还可以包括基于将消息贡献到簇的不同(或独特)用户的数目的得分。每个消息都可以有作者,但是ー些消息的作者可能是相同的。这个因子例如可以表达为不同消息作者的数目相对于消息簇中消息的总数目的比值。这样类型的因子可以对具有更多不同用户作为贡献者的消息簇给予更高的排名。对于簇中消息的ー些品质特征,其可以具有ニ元值。例如,在一些实施例中,消息的重新发布值表示该消息或者满足了重新发布的准则或者没有满足该准则。这样可以表达为重新发布值为I或0,但是也可以使用任意其他合适的值来代替。类似地,消息的链接值可以简单地指示消息中是否存在ー个或多个链接。对于具有此类型的ニ元特性的品质特征,存在使用单个消息特征值来对消息簇的排名做出贡献的若干选择。一个选择可以是确定重新发布或链接特征值的常规平均值,如上所述。另ー选择可以是确定满足重新发布或链接特征准则的消息与不满足该准则的消息的比值。一种将簇得分结合的方式是将平均得分相乘。在实施例中,簇排名的公式为 log (η) X (I - AvSpam; x (AvLen; x (RepostRatio) x (LinkRatio) x (AvAuth)
X (UURatio)
其中n是簇中的消息数目;AvSpam是簇中消息的平均垃圾得分;AvLen是簇中消息的平均标记长度;R印ostRatio是簇中已重新发布的消息与未重新发布的消息的比例;LinkRatio是簇中具有链接的消息与不具有链接的消息的比例;AvAuth是簇中消息的平均权威得分;以及UURatio是簇中的不同(独特的)作者与消息的比例。将消息添加到消息簇
当收到消息时,可以分析该消息以确定该消息是否能够被添加到消息簇。作为初始步骤,该消息可以与过滤器进行比较以确定是否可以丢弃该消息,或排除对该消息的进ー步考虑。这例如可以基于如上所述的消息的垃圾得分。如果消息的垃圾得分高于(或低干)阈值,无需对该消息做进ー步的工作。如果垃圾得分低于(或高干)阈值,则可以分析该消息以确定是否能够将其添加到簇。可以解析该消息以确定消息中的标记。这可以允许形成消息标记向量。消息中的标记随后可以与任意现有的簇的标记进行比较以获得消息和现有簇之间的相似度得分。在实施例中,文档中词语的规范化出现频率可以用作确定相似度得分的加权因子。词频-反文档频率(TFIDF :term frequency-inverse document frequency)值是规范化的出现频率的示例。可以为例如消息语料库的文档语料库中出现的每个标记计算TFIDF值。每个标记的该TFIDF值随后可以用作确定相似度得分的加权因子。对于确定TFIDF值,“词频”(TF)能够指代标记在一条消息中或在若干簇消息中出现的次数。反文档频率(IDF)可以指代语料库中消息的总数目除以语料库中包含特定标记的文档的数目。可选地,反文档频率可以基于总消息除以包含标记的文档数目的対数。使用TFIDF值,可以计算消息簇和消息之间的相似度得分。作为计算相似度得分的初始步骤,可以为簇定义特征标记“向量”。特征标记向量可以包括表示簇中消息的标记。可以将该特征向量称为簇标记向量。在一个实施例中,簇标记向量可以包括簇中最常见的词语。在另ー实施例中,簇标记向量包括根据通过TFIDF值加权的频率选择的标记。簇标记向量包括任意合适数目的标记。在一个实施例中,簇标记向量可以至少包括6个标记、或至少8个标记、或至少10个标记。另外,或可替换地,标记向量可以包括20个标记或更少、或者15个标记或更少、或者12个标记或更少、或者10个标记或更少。如上所述,包括在簇 标记向量中的标记的数目指代向量中包括的非零值的数目。当收到消息时,来自消息的标记与来自特征或簇标记向量的标记进行比较。如上所述,来自消息的标记还可以视为表示消息内容的向量。随后可以确定消息标记和簇标记之间的向量点积。如果不使用TFIDF值,这只是表示消息和簇之间的共同标记的数目的简单计数。使用TFIDF值可以允许形成加权的值。例如,尽管消息可能仅与来自簇标记向量的三个标记相匹配,但是如果词语足够地特别,这些词语的TFIDF权重会使得该消息具有相对于该簇的很高得分。相比之下,如果簇标记向量包含更常见的词语,则消息可能需要与更多的词语相匹配以获得相对于该簇的很高得分。在一个实施例中,可以在不基于消息的标记长度来规范化相似度值的情况下计算消息相对于簇的相似度值。当为更大的文档计算相似度值时,规范化因子可以用来说明文档的长度。更长的文档具有包含任意给定的词或其他标记的更大可能性。例如,规范化因子可以是文档中标记出现的数目除以文档中词的总数目。基于文档长度的规范化可以说明以下事实,即包含标记的短文档比包含相同标记的较长文档更相关。可惜的是,规范化是花费大量时间的过程,因为它通常必须基于每个文档来执行。对于微博消息或其他有限长度的消息,可能的标记的总数目受限于可用字符的数目。虽然在消息长度上可能存在某种变化,但是该长度变化没有典型文档之间的长度变化重要。因此,可以避免基于消息的标记长度的规范化。在计算相似度值时这可以导致大量节省计算时间。可以相对于现有的每个消息簇为消息计算相似度值。该相似度值可以用来确定是否将该消息添加到簇。可以进行初始的检查以确定消息的任意相似度值是否大于相似度阈值。如果消息相对于任意消息簇都不具有足够高的相似度值,则不将该消息添加到现有簇。如果至少ー个相似度值大于相似度阈值,则可以将该消息添加到产生最高相似度得分的消息簇。在将消息添加到消息簇之后,可以重新计算簇标记向量和簇排名。消息相对于现有簇具有低的相似度得分至少基于两个原因。ー个原因可能是该消息具有低品质的内容。然而,ー些消息可能具有期望的内容,但是还没有形成与该内容相匹配的簇。为了考虑这种情况,当由于低的相似度得分而未将消息添加到任意簇的时候,可以检查该消息以确定是否可以形成新的消息簇。
为了确定是否能够开始新的消息簇,可以使用消息的品质值。还可以使用另外的因子。例如,用于开始一个新簇的种子条件可以要求有最小的消息品质值,以及消息中存在链接。或者该种子条件可以要求该消息除具有链接之外要具有最小的权威得分。再ー选择为要求最小的消息标记长度,例如要求种子消息包含至少5个标记或至少7个标记。任意其他合适的消息品质特征的组合可以用来标识用于开始新簇的合适消息。提供消息簇作为搜索结果
基于从消息形成的消息簇,消息簇可以合并到由搜索引擎使用的文档语料库中以用于提供针对诸如关键词搜索查询的搜索查询的结果。通过使用消息簇的簇标记向量作为簇的内容来将消息簇与搜素查询相匹配。可替换地,扩展标记向量(其包含在簇中找到的更大数目的标记)可以用来确定簇和搜索查询之间的匹配。响应于捜索查询,随后可以将匹配消息簇中的消息作为群组来提供。消息簇的维护
由于微博和其他短消息的性质,感兴趣的话题会迅速变化。这可能造成不断地创建新的消息簇。这还会造成ー些消息簇变得停滞,因为仅有较少的与给定的簇标记向量相匹配的消息变得可用。減少管理消息簇所必需的资源的ー种方式可以为具有去除簇和/或簇内消息的机制。用于识别要去除的簇的ー个选择可以是基于簇的年龄。可以根据簇中初始消息的年龄,或者根据簇中消息的平均年龄,来去除或删除足够老的簇。另ー个选择可以是具有用于删除消息簇的可变时间长度,其还包括簇的排名得分。较高排名的簇则可以保留更长的时间段。又一选择可以是从簇中去除旧的消息。另外,可以仅使用消息的年龄、或者消息品质值和时间的结合来从簇去除消息。消息和当前簇标记向量之间的相似度还可以是ー个因子。从簇中去除单个消息能够提供允许簇连续刷新的方式,因为去除较旧的消息可以使簇标记向量改换为反映更新消息的内容。去除消息还会导致簇的尺寸收缩。另ー个选择可以是如果簇中消息的数目低于阈值,则去除该簇。一个选择可以是将该阈值基于在任意时刻包含在簇中的最大尺寸(消息的最大数目)。在这种环境中,可以在消息的数目少于最大尺寸的一半时去除该簇。这样可以减少去除由于临时的极大兴趣而形成的很大尺寸的簇所需的开销。为簇添加而处理消息的示例 图I示出用于处理消息以识别该消息是否应被添加到簇的流程图的示例。可以从合适的源接收110进入的消息。例如,这可以是从消息服务提供商或微博服务提供商馈送的消息。随后可以使用预过滤器120来测试所接收的消息。一个选择可以是使用消息的品质值作为预过滤器。如果消息的品质值低于阈值,可以丢弃190该消息而不做进ー步处理。可替换地,可以由于属于预定的类别,例如源自己知的垃圾源,而丢弃该消息。如果在预过滤器之后消息被保留,则可以对该消息评估与已知簇的相似度130。这例如可以通过将消息的标记向量与每个簇的标记向量进行比较来完成。如果对于至少ー个簇,消息具有大于阈值的相似度得分,则可以选择该消息以添加到簇140。消息被添加到与该消息具有最高相似度得分的簇。随后可以根据消息添加到簇来更新150簇标记向量和簇排名。
如果相对于任何簇,该消息不具有比阈值更高的相似度得分,则可以评估该消息以用作新簇的种子160。如果该消息满足种子要求,则可以基于该消息来开始ー个新簇170。可以初始地根据该消息来计算180簇的簇标记向量和簇排名。如果消息不适合于用作簇的种子,则丢弃190该消息。另外的示例
在实施例中,提供了ー种用于将消息 组织到簇中的方法。可选地,该方法可以以体现在计算机存储媒介上的计算机可执行指令的形式来提供该方法。可以接收多个消息210。这些消息可以包含有限数目的字符,例如少于大约250个字符。可以解析220该消息以形成消息标记向量。随后过滤230所解析的消息以丢弃至少ー个消息。接着,相对于ー个或多个消息簇,为经过滤的多个消息计算240相似度得分。根据大于阈值的相似度得分可以将至少ー个消息添加250到消息簇。在添加之后,可以更新260消息簇的簇标记向量。在另ー实施例中,提供了一种用于响应于捜索查询来提供消息簇的方法。可选地,可以以体现在计算机存储媒介上的计算机可执行指令的形式来提供该方法。接收310包含少于指定数目字符,例如少于大约250个字符,的消息。解析320该消息以形成消息标记向量。可以为消息簇确定330簇标记向量。可以相对于消息簇而为该消息计算340相似度得分。根据相似度得分大于阈值将消息添加350到消息簇。随后可以更新360消息簇的簇标记向量。更新的簇标记向量可以与搜索查询进行匹配370。随后响应于该捜索查询提供380该消息簇。在又一实施例中,提供了一种用于响应于捜索查询提供消息簇的方法。可选地,可以以体现在计算机存储媒介上的计算机可执行指令的形式来提供该方法。可以接收410包含少于指定数目字符,例如少于约250个字符,的消息。可以为该消息计算420多个消息品质特征值。可以将该消息添加430到消息簇。可以根据簇中消息的平均品质特征值为消息簇计算440簇排名。可以为消息簇确定450簇标记向量。可以相对于搜索查询为消息簇计算460搜索排名。可以响应于该搜索查询提供470消息簇。已经简要地描述了本发明的各种实施例的概述,现在描述适合于执行本发明的示例性操作环境。大体地參考附图,首先尤其參考图5,示出了实现本发明实施例的示例性操作环境,并且整体标记为计算设备500。计算设备500仅是适合的计算环境的ー个示例,并且不g在表明对于本发明的使用或功能范围的任何限制。计算设备500既不应被解释为依赖示出组件的任ー或组合,也不应解释为需要与示出的组件的任一或组合相关联。通常在计算机代码或机器可用的指令的整体环境中来描述本发明的实施例,包括由诸如个人数字助理或其他手持设备的计算机或其他机器执行的诸如程序模块的计算机可执行指令。通常,包括例行程序、程序、对象、组件、数据结构等的程序模块指代执行特定任务或实现特定抽象数据类型的代码。可以以多种系统配置来实施本发明,包括手持设备、消费电子、通用计算机、更专业的计算设备等。还可以在分布式计算环境中实施本发明,其中通过经由通信网络链接的远程处理设备来执行任务。继续參考图5,计算设备500包括直接或间接地耦接以下设备的总线510 :存储器512、一个或多个处理器514、ー个或多个呈现组件516、输入/输出(I/O)端ロ 518、I/O组件520和说明性的电源522。总线510表示可能的一个或多个总线(例如地址总线、数据总线或其组合)。虽然为清楚起见用线示出图5的多个框,但是现实中各种组件的划界不是如此清楚的,并且从比喩上来说,这些线更准确地应为灰的和模糊的。例如,人们可以将诸如显示设备的呈现组件视为I/o组件。另外,许多处理器具有存储器。发明人在此认识到,这是本领域的特点,并且重申图5仅仅是对可结合本发明的一个或多个实施例使用的计算设备的说明。并没有对以下类别作出区分,例如“工作姑”、“服务器”、“膝上计算机”、“手持设备”等,这些都设想为在图5的范围内,并參考“计算设备”。计算设备500通常包括多个计算机可读媒介。计算机可读媒介可以是能够由计算设备500访问的任意可用的媒介,并且包括易失性和非易失性媒介、可移动和不可移动媒介。以示例但非限制性的方式,计算机可读媒介可以包括计算机存储媒介和通信媒介。计算机存储媒介包括以任意方法或技术实现的易失性和非易失性、可移动和不可移动媒介,以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息。计算机存储媒介包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPR0M)、闪存存储器或其他存储器技术、⑶-ROM、数字多功能盘(DVD)或其他全息存储器、磁带盒、磁带、磁盘存储或其他磁存储设备、载波、或可以用来对期望的信息进行编码并可以由计算设备500访问的任意其他介质。在实施例中,可以从有形计算机存储媒介中选择 计算机存储媒介。在另ー实施例中,可以从非瞬时性计算机存储媒介来选择计算机存储媒介。存储器512包括易失性和/或非易失性存储器形式的计算机存储媒介。存储器可以是可移动的、不可移动的或其组合。示例性的硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备500包括从诸如存储器512或I/O组件520的各种实体读取数据的一个或多个处理器。ー个或多个呈现组件516将数据指示呈现给用户或其他设备。示例性呈现组件包括显示设备、扬声器、打印组件、振动组件等。I/O端ロ 518允许计算设备500逻辑地耦接到包括I/O组件520的其他设备,其中的一些是内建的。说明性的组件包括麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪、打印机、无线设备等。另外參考图6,描述了示出适合于用在本发明实施例中的示例性网络环境600的框图。环境600仅是可以用在本发明实施例中的环境的示例,并且可以以很多的配置形式包括任意数目的组件。在此提供的环境600的描述是以说明为目的的,并且不g在限制其中可以实现本发明实施例的环境的配置。环境600包括网络604、用户设备606、文档服务器608、和搜索引擎612。环境还包括消息源602、消息解析器603、和簇管理模块609。网络604包括任意计算机网络,例如但不限于诸如因特网、内联网、私有和公共局域网、和无线数据或电话网。用户设备606可以是通过其可以提供捜索查询的任意计算设备,例如计算设备500。例如,用户设备606可为个人计算机、膝上计算机、服务器计算机、无线电话或设备、个人数字助理(PDA)、或数码相机等。在实施例中,多个用户设备606,例如数千或数百万个用户设备606,可以连接到网络604。搜索引擎612包括诸如计算设备500的任意计算设备,并提供基于内容的搜索引擎功能。文档服务器608表示可以提供根据响应于搜索查询的结果由用户所选择的文档的任意类型的计算机设备。消息源602可以是任意合适的具有很少字符的消息源。消息源602可以表示提供微博输入或另ー类型的公开或半公开消息的服务器。消息解析器603可以解析来自消息源602的消息以形成消息的消息标记向量。经解析的消息随后由簇管理模块609来分析。簇管理模块609可以将消息添加到消息簇、创建新的消息簇、或丢弃消息。簇管理模块609还可以删除簇或这从簇去除消息。由簇管理模块609形成和/或管理的消息簇可以被包括为由文档服务器608提供的文档的一部分。已结合特定的实施例描述了本发明的实施例,其无论从哪个方面都是说明性的而非限制性的。在不脱离本发明范围的情况下,可替换实施例对于本发明所属领域的普通技术人员将是清楚的。在实施例中,提供了存储计算机可用指令的一个或多个计算机存储媒介,当该指令由计算设备执行吋,执行对消息进行聚类的方法。该方法包括接收多个消息,每个消息包括大约250个字符或更少。解析消息以形成消息的消息标记向量。过滤经解析的消息以丢弃多个消息中的至少ー个消息。相对于ー个或多个消息簇为经过滤的多个消息计算相似度 得分,消息簇具有簇标记向量,相似度得分基于消息标记向量和簇标记向量,无需相对于ー段消息对消息标记向量进行规范化即可计算相似度得分。根据相似度得分大于相似度阈值的至少ー个消息将该至少ー个消息添加到消息簇。更新包含所添加消息的消息簇的簇标记向量。在另ー实施例中,提供了一个或多个存储计算机可用指令的计算机存储媒介,当该指令由计算设备来执行吋,执行对消息进行聚类的方法。该方法包括接收包含大约250个或更少字符的消息。解析该消息以形成消息的消息标记向量。为消息簇确定簇标记向量,该簇标记向量对应于小于标记阈值的多个标记。根据簇标记向量和消息标记向量的乘积来计算相对于消息簇的消息的相似度得分,无需相对于消息段对消息标记向量进行规范化即可计算相似度得分。根据相似度得分大于相似度阈值来将消息添加到消息簇。根据消息添加到消息簇更新簇标记向量。更新的簇标记向量与捜索查询相匹配。随后响应于搜索查询提供消息族。在又一实施例中,提供了存储计算机可用指令的一个或多个计算机存储媒介,当该指令由计算设备执行吋,执行响应于搜索查询识别消息簇的方法。该方法包括接收包含250个或更少字符的消息。为该消息计算多个品质特征值,该多个品质特征值包括垃圾值、消息长度值、重新发布值、链接值、和权威值中的两个或更多个。将消息添加到消息簇,该消息簇包含ー个或多个另外的消息。根据消息簇中的消息平均品质特征值计算消息簇的簇排名。确定消息簇的簇标记向量,簇标记向量对应于小于标记阈值的多个标记。相对于搜索查询为消息簇计算搜索排名,消息簇的搜索排名至少基于消息簇的簇排名以及簇标记向量相对于搜索查询的匹配排名。随后,响应于捜索查询提供消息簇。根据前述内容,可以看出本发明很适于达到以上与该结构所固有的和显而易见的其他优点一起阐述的所有目标和对象。将会理解,特定特征和子组合是有效用的,并且可以在不參考其他特征和子组合的情况下被采用。这被权利要求考虑到,并在权利要求的范围内。
权利要求
1.用于对消息进行聚类的方法,包括 接收多个消息,每个消息包含大约250个或更少字符; 解析所述消息以形成所述消息的消息标记向量; 过滤所解析的消息来丢弃多个消息中的至少ー个消息; 相对于ー个或多个消息簇为所过滤的多个消息计算相似度得分,所述消息簇具有簇标记向量,所述相似度得分基于所述消息标记向量和所述簇标记向量,无需相对于消息长度对消息标记向量进行规范化而计算相似度得分; 根据至少ー个消息的相似度得分大于相似度阈值将所述至少ー个消息添加到消息簇;以及 为包含所添加消息的所述消息簇更新所述簇标记向量。
2.如权利要求I所述的方法,其中无需相对于消息的标记长度对消息标记向量进行规范化而计算所述相似度得分,所述标记长度对应于消息中的不同标记的数目。
3.如权利要求I或2所述的方法,其中所述簇标记向量对应于小于标记阈值的多个标记。
4.如以上权利要求中任一项所述的方法,还包括 识别所过滤的多个消息中的消息,所识别的消息相对于ー个或多个消息簇具有的相似度得分小于所述相似度阈值;以及 根据所识别的消息满足用于形成新的消息簇的ー个或多个准则,使用所识别的消息开始ー个新的消息簇。
5.如权利要求4所述的方法,其中用于形成新的消息簇的ー个或多个准则包括在所述识别的消息中存在链接,以及在所识别的消息中存在至少5个标记。
6.如以上权利要求中任一项所述的方法,还包括从来自ー个或多个消息簇的第二消息簇中去除消息,所述去除消息基于所去除的消息的品质值、所去除消息的年龄、或其组合。
7.如以上权利要求中任一项所述的方法,还包括从所述ー个或多个消息簇中删除消息簇,所述删除消息簇基于所删除的消息簇的簇排名、所删除的消息簇的年龄、所删除的消息簇相对于先前尺寸的尺寸、或其组合。
8.—种响应于搜索查询来识别消息簇的方法,包括 接收包含大约250个或更少字符的消息; 计算所述消息的多个品质特征值,所述多个品质特征值包括垃圾值、消息长度值、重新发布值、链接值、和权威值的两个或更多个; 将所述消息添加到消息簇,所述消息簇包含ー个或多个另外的消息; 根据所述消息簇中的消息的所述品质特征值为所述消息簇计算簇排名; 为所述消息簇确定簇标记向量,所述簇标记向量对应于小于标记阈值的多个标记; 相对于搜索查询,为所述消息簇计算搜索排名,所述消息簇的搜索排名至少基于所述消息簇的簇排名和所述簇标记向量相对于所述搜索查询的匹配排名;以及响应于所述搜索查询提供所述消息簇。
9.如权利要求8所述的方法,还包括 解析所述消息以形成所述消息的消息标记向量; 根据所述簇标记向量和所述消息标记向量的乘积相对于所述消息簇为所述消息计算相似度得分,计算所述相似度得分而无需相对于消息长度对所述消息标记向量进行规范化; 根据所述相似度得分大于相似度阈值将所述消息添加到所述消息簇;以及 根据所述消息添加到所述消息簇来更新所述簇标记向量。
10.如权利要求8或9所述的方法,其中所述多个品质特征值至少包括垃圾值、消息长度值、重新发布值、链接值、和权威值。
11.如权利要求8-10中任一项所述的方法,其中所述消息簇的簇排名还基于与所述簇中的消息相关联的多个不同用户。
12.如权利要求8-11中任一项所述的方法,其中所述消息簇的簇排名基于从所述消息簇中的消息的品质特征值得出的平均值和/或比值。
13.如权利要求8-12中任一项所述的方法,其中所述消息簇的簇排名基于所述消息簇中的消息的数目、所述消息簇中消息的平均垃圾得分、所述消息簇中消息的平均标记长度、消息簇中已被重新发布的消息与未被重新发布的消息的比例、消息簇中包含链接的消息与不包含链接的消息的比例、簇中消息的平均权威得分、以及簇中不同消息作者的数目与消息数目的比例。
14.如以上权利要求中任一项所述的方法,其中所述多个消息中的每个消息包含大约160个或更少字符。
15.存储计算机可用指令的一个或多个计算机存储媒介,当所述计算机可用指令由计算设备执行时,执行如权利要求1-14中的任一项所述的方法。
全文摘要
无监督聚类可用于将微博或其他短长度消息组织到消息簇中。消息可与现有的簇进行比较以确定相似度得分。如果至少一个相似度得分大于阈值,则可以将消息添加到现有的消息簇。如果消息与现有的簇不相似,则可以将该消息与准则进行比较以开始一个新的消息簇。
文档编号G06F17/30GK102693273SQ20121007179
公开日2012年9月26日 申请日期2012年3月19日 优先权日2011年3月18日
发明者K.Y.金, S.钟, 段镭 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1