技术领域
[0003] 本公开一般涉及群组(诸如社交网络中的群组等)的自动分类。
相关背景技术
[0004] 社交网络应用是在线平台,其使得共享共同兴趣的用户能够彼此连接。一些社交网络应用可以推荐用户或用户群组之间的匹配,诸如潜在朋友、约会伙伴或商业伙伴等。一旦推荐的匹配被接受,匹配的用户就可以使用社交应用以电子方式彼此共享内容。
具体实施方式
[0037] 这里描述的技术使用人工智能和机器学习技术,以基于用户共享的内容对社交网络中的用户群组进行自动分类。特别地,分析用户群组之间共享的内容以识别表征内容的一个或多于一个标签。然后使用所识别的标签将一个或多于一个分类分配给该群组,其中分类表示与该群组相关的主题。在一些实现中,可以使用类似的技术分析个体用户所共享的内容以识别内容的标签并基于所识别的标签对用户进行分类。一旦对群组(以及可选的用户)进行了分类,就可以使用这些分类来推荐群组或用户与群组之间的匹配(例如,向用户推荐群组、向群组推荐用户、或向群组推荐另一个群组)。通过基于群组内所共享的内容提取与群组相关的主题,相对于依赖于用户定义的群组分类(或根本不对群组进行分类)的技术,用户与群组之间的匹配质量得到改善,从而改进匹配和社交网络技术。此外,通过识别群组之间的匹配,共享相似内容的多个群组可以被合并,从而减少社交网络内的重复。
[0038] 图1例示根据本公开的一方面的社交网络系统100。系统100包括经由网络106与服务器104通信的多个客户端装置102,网络106可以是有线网络、无线网络或它们的任意组合。各客户端装置102可以是移动装置(例如,智能电话、笔记本电脑、平板电脑、可穿戴装置等)或包括至少一个处理器110的另一计算装置,该处理器110经由总线114与输入/输出装置112通信。输入/输出装置112可以包括触摸显示器、键盘和鼠标等。网络接口电路116也连接到总线114,以提供到网络106的有线和/或无线连接性。连接到总线114的存储器或其他存储介质120存储可由处理器110执行的指令。特别地,存储器120存储用于社交网络应用122的指令,该指令允许客户端装置102的用户与社交网络应用122的其他用户连接和通信。
社交网络应用122还可以使得用户能够创建、加入、参与或离开系统100所管理的一个或多于一个用户群组103。
[0039] 服务器104包括处理器130、总线132、输入/输出装置134以及用以提供到网络106的连接性的网络接口电路136。存储器140连接到总线132。存储器140存储匹配引擎142和分类引擎144以及指令,该指令由处理器130执行以实现结合图2至图4所公开的操作。在一些实现中,系统100包括与服务器104通信的数据库146,其存储供社交网络应用122、匹配引擎142和/或分类引擎144使用的信息,诸如用户简介信息、群组信息、用户内容、群组内容或其他信息等。
[0040] 在操作中,客户端装置102的用户可以创建个人简介以参与社交网络应用122。例如,用户可以通过与用户界面交互来提供简介信息,从而创建个人简介,该简介信息诸如他们的姓名、年龄、传记文本、照片或视频、以及允许用户表征他们自己的一系列其他字段(例如,城市、到其他网络上的社交媒体简介的链接等)。各用户还可以指定他们的兴趣以用于识别(例如,作为潜在朋友、商业伙伴或约会伙伴等)的潜在匹配。例如,用户可以通过与用户界面交互来指定他们的兴趣,以提供用户在潜在匹配中寻找的各种标准,诸如年龄、位置、爱好或它们的组合等。在一些实现中,系统100(例如,匹配引擎142和/或分类引擎144)可以基于例如对用户已经共享或交互的内容的分析来识别用户的兴趣中的一个或多于一个,以作为用户所指定的兴趣的代替或附加。系统100(例如,匹配引擎142和/或分类引擎144)可以使用兴趣来生成匹配标准,以用于识别用户的潜在匹配。
[0041] 一旦简介完成,用户就可以开始查看其他用户或用户群组的简介,同时用户自己的简介则在用户群中传播。通常,用户群组是社交网络应用122的一个或多于一个用户的集合。用户可以不属于任何用户群组、属于一个用户群组或属于许多用户群组,并且可以通过与社交网络应用122的交互来创建、加入、参与或离开用户群组。各群组可以包括由系统100管理、并且可通过社交网络应用122访问的一个或多于一个通信通道,该一个或多于一个通信通道使得群组中的用户(有时称为群组的“成员”)能够彼此共享内容。例如,各用户群组可以包括允许群组的成员彼此共享各种形式的内容的消息传送系统(例如,群组聊天)、网页(例如,在线论坛或其他交互式群组页面)、流传输媒体通道(例如,实时音频或视频流传输通道)、虚拟环境(例如,三维计算机模拟环境)或它们的组合等。在一些实现中,对群组的一个或多于一个特征(诸如群组的通信通道中的一个或多于一个)的访问可以被限制到群组的成员。
[0042] 在一些实现中,群组的成员(诸如群组的创建人或群组的主持人等)可以为群组创建简介,以向未来的成员提供对群组的相关主题、兴趣或目标的深入了解。例如,群组的成员可以与社交网络应用122交互,以提供群组的简介信息,诸如群组名称、群组的简短描述、群组的照片或视频以及表征群组的一系列其他字段等。在一些实现中,群组的成员可以为群组分配一个或多于一个用户定义的标签或标记。然而,群组的用户定义标签和其他简介信息可能无法完全或准确地表征群组的相关主题。此外,群组的相关主题可能会随时间而变化,从而导致先前定义的标签和其他简介信息不准确或不完整。因此,以这种方式对群组进行自我分类可能会误导未来的群组成员并降低基于该信息生成的匹配的质量。
[0043] 为了改进用户群组的分类,系统100(例如,分类引擎144)可以基于在群组中或由群组共享的内容对群组进行自动分类。例如,分类引擎144可以接收在群组聊天中、在群组网页上、通过群组流传输通道、在虚拟群组环境中、或通过群组的另一通信通道共享的内容,诸如文本、音频、图像或视频内容等。然后,分类引擎144可以使用人工智能和/或机器学习技术(诸如本文所讨论的人工智能和/或机器学习技术等)来处理所接收到的内容,以确定内容的一个或多于一个标签。基于带标签的内容,分类引擎144可以为群组分配一个或多于一个分类。所分配的分类可以表示与群组相关的主题。在一些实现中,分类引擎144还可以接收和分析社交网络应用的个体用户所共享的内容,以确定内容的标签,并基于所识别的标签对用户进行分类。在一些实现中,分配给用户的分类被包括作为用户的匹配标准。
[0044] 在对群组(以及可选的用户)进行分类之后,系统100可以使用分类来识别群组和/或用户与群组之间的潜在匹配。例如,匹配引擎142可以处理分配给群组的分类以识别足够相似、并因此应该匹配或归并的群组。匹配引擎142还可以处理分配给群组的分类以识别满足与用户相关联的匹配标准的群组。通常,匹配引擎142可以使用过滤器、应用规则、人工智能、机器学习或它们的组合等来识别用户与群组之间的潜在匹配。例如,匹配引擎142可以基于与用户相关联的匹配标准生成一个或多于一个过滤器或规则,并且可以将过滤器或规则应用于分配给群组的分类以识别用户与用户群组之间的潜在匹配。作为另一个示例,匹配引擎142可以应用规则来识别具有足够数量的共同分类的群组,以识别群组之间的匹配。
[0045] 在识别群组或用户与群组之间的一个或多于一个潜在匹配之后,匹配引擎142可以向用户和/或(一个或多于一个)用户群组提供与潜在匹配有关的信息以供检查。例如,匹配引擎142可以向用户提供匹配群组的简介,该简介包括与匹配群组相关联的简介信息和/或分类,并且在用户的客户端装置102上执行的社交网络应用122可以使得显示图形用户界面(GUI),该GUI允许用户查看和浏览群组的简介。作为另一个示例,匹配引擎142可以向群组的部分或全部成员提供匹配用户或群组的简介,该简介包括与匹配用户或群组相关联的简介信息和/或分类,并且在各个成员的客户端装置102上执行的社交网络应用122可以使得显示GUI,该GUI允许成员查看和浏览用户或群组的简介。
[0046] 为了确定连接群组或用户和群组的互相同意,可以对群组或用户和群组各自的简介进行投票。例如,在查看群组的简介后,如果用户想要与群组连接,则可以投票“是”,如果用户对连接不感兴趣,则可以投票“否”。在一些实现中,用户可以通过与第一用户界面按钮交互或者将简介在某个方向上(例如,向右)滑动(例如,使用其手指点击并拖动简介)离开屏幕来投票“是”,并且可以通过与第二用户界面按钮交互或者在另一方向上(例如,向左)滑动来投票“否”。在一些实现中,一旦用户已经投票了“是”以与群组连接,匹配引擎142就可以将用户的简介放入简介队列中,以供群组的部分或全部成员查看。通过这种机制,匹配引擎142能够使用户和群组查看彼此的简介的节奏与在纯自然(purely organic)的简介选择系统中发生的节奏相比加快。
[0047] 当用户对群组投票“是”时,或者当用户和群组互相投票“是”时,在用户和群组之间建立连接(有时称为“匹配”)。一旦建立匹配,系统100就可以将用户添加到群组,并为用户提供对群组的(一个或多于一个)通信通道和其他特征(例如,限于群组成员的那些特征)的访问。在一些实现中,匹配引擎142可以向匹配方中的任一方或双方提供匹配的通知,该通知具有联系另一匹配方的提示。另一方面,当一方投票“是”、而另一方投票“否”时,用户和群组之间不会建立进一步的连接,并且他们的简介不会再次向彼此示出(或者这些简介可能会根据其简介、位置、搜索参数的变化或由于时间流逝而再次示出)。
[0048] 类似地,当一个群组对另一群组投票“是”或者两个群组对彼此投票“是”时,可以建立群组之间的匹配。一旦建立了群组之间的匹配,系统100可以向匹配群组的部分或全部成员供给匹配的通知。在一些实现中,通知可以包括将群组归并或合并为单个群组的提示。响应于提示,相应群组的成员(或来自各群组的指定成员,诸如群组创建人或主持人等)可以投票以合并群组或保持单独的群组。响应于合并群组的投票,系统100可以将一个群组的成员添加到另一个群组,或者可以创建具有来自各群组的成员的新群组。通过以这种方式合并群组,可以减少社交网络内的群组和群组内容的重复,从而减少网络内使用的计算资源的消耗。此外,通过快速连接大量意向相同的用户,合并群组增强了社交网络内的用户体验。
[0049] 图2例示根据本公开的一方面的用于对用户群组进行自动分类的示例系统200。在该示例中,群组内容202在用户群组103中或由用户群组103共享。群组内容202可以包括文本内容、音频内容、图像内容、视频内容或它们的组合,以及在群组103内(诸如在群组聊天中、在群组网页上、通过群组流传输通道、在虚拟群组环境中或通过群组103的另一通信通道)共享的其他同步或异步内容等。
[0050] 分类引擎144接收在群组103内共享的群组内容202。例如,当使用社交网络应用122在群组103内共享群组内容202时,分类引擎200可以接收该群组内容202。分类引擎144使用一个或多于一个人工智能和/或机器学习技术来处理群组内容202,以确定表征群组内容202的一个或多于一个标签。例如,分类引擎144可以包括一个或多于一个监督、半监督或无监督的机器学习模型204,该机器学习模型204被配置为通过对内容进行归类、聚类或以其他方式分类来确定群组内容202的一个或多于一个标签。一个或多于一个机器学习模型
204所实现的算法示例包括神经网络、决策树、支持向量机、朴素贝叶斯、k‑最近邻、(模糊)k‑均值、随机森林分类器、梯度提升、层次聚类、回归或它们的组合等。在一些实现中,使用从群组和/或用户接收的带标签的内容来训练一个或多于一个模型204。
[0051] 在一些实现中,分类引擎144基于正分析的内容202的类型(例如,文本、音频、图像、视频等)选择用于处理群组内容202的机器学习模型204。例如,如果正在分析图像内容202,则分类引擎144可以使用被配置为识别图像内的对象的模型204来处理内容202。然后可以基于所识别的对象确定图像内容202的一个或多于一个标签。可以使用类似的技术来分析记录或流传输的视频内容202。例如,分类引擎144可以对视频的帧进行采样(例如,每
10帧采样1帧),并且可以识别采样帧内的对象,以确定视频内容202的一个或多于一个标签。如果视频内容202是流传输的,则分类引擎144可以实时或近实时地分析流传输的内容
202,或者可以在流传输已经结束后分析所存储的内容202的副本。分类引擎144还可以使用例如自然语言处理模型204来分析文本内容202(例如,文本聊天内容),该自然语言处理模型204配置为识别关键字和/或分析文本的意图或情感,以确定内容202的一个或多于一个标签。在一些实现中,内容202可以包括文本、音频、图像、视频和/或其他类型内容的组合,并且分类引擎144可以使用一个或多于一个模型204来确定组合内容的标签。
[0052] 分类引擎144使用所确定的内容202的标签以将一个或多于一个分类206分配给群组103。分类206可以表示群组103的相关主题。在一些实现中,分类引擎144可以将所有标签分配为群组103的分类206。在一些实现中,分类引擎144可以将标签的子集分配为群组103的分类206,诸如出现次数多于阈值次数的标签的子集或最常见标签的子集(例如,基于对群组内所共享的内容202的部分或全部的分析的前五个最常见标签)。
[0053] 在一些实现中,分类引擎144可以基于对标签的分析来确定群组103的分类206。例如,如果对群组103内所共享的内容202的分析得出包括“小汽车”和“Lewis Hamilton(刘易斯·汉密尔顿)”的标签,则分类引擎144可以推断出“Formula 1(一级方程式)”是该群组的相关分类206。另一方面,如果对群组103内所共享的内容202的分析得出包括“小汽车”和“油过滤器”的标签,则分类引擎144可以推断“汽车修理”是该群组的相关分类206。为了根据标签确定分类206,分类引擎144可以使用一个或多于一个机器学习模型(例如,机器学习模型204中的一个或多于一个)或本文所述的其他分类技术。随着附加内容202在群组内共享,分配给群组103的分类206可以随着时间而更新。
[0054] 在一些实现中,分类引擎144可以使用分配给群组的分类206为群组103生成签名。例如,分类引擎144可以创建分配给群组103的分类206的部分或全部的列表,该列表可以用作群组的相关主题的唯一签名。在一些实现中,分类引擎144可以根据分类206生成树或其他关系模型以用作群组103的签名。这种模型可包括表示分配给群组的分类(和/或子分类)的节点以及表示节点之间的关系的边。例如,在上面的示例中,分类引擎144可以生成树形式的群组103的签名,该签名包括连接到子分类“小汽车”和“Lewis Hamilton”的父分类“Formula 1”。
[0055] 分类引擎144可以向匹配引擎142提供群组103的分类206。匹配引擎142还可以从在用户的装置102上执行的社交网络应用122(或者如果先前进行了存储,则从数据库146)接收用户的简介信息208,并且可以基于简介信息208生成用户的匹配标准。在一些实现中,匹配引擎142还可以接收用于识别匹配的附加信息,诸如群组的简介信息(未示出)。匹配引擎142可以处理分配给群组103的分类206,以识别满足与用户相关联的匹配标准的那些群组。通常,匹配引擎142可以使用过滤器、应用规则、人工智能、机器学习或它们的组合等来识别用户和群组之间的潜在匹配。
[0056] 如果识别出潜在匹配,则匹配引擎142可以将与匹配群组210有关的信息传输给用户。例如,匹配引擎142可以向用户提供匹配群组210的简介,该简介包括与匹配群组相关联的简介信息和/或分类,并且在用户的客户端装置102上执行的社交网络应用122可以使得显示GUI,该GUI允许用户查看和浏览群组的简介。在一些实现中,匹配引擎142可以向群组的部分或全部成员提供匹配用户212的简介,并且在相应成员的客户端装置102上执行的社交网络应用122可以使得显示GUI,该GUI允许成员查看和浏览用户的简介。
[0057] 用户和(在某些实现中)群组可以对用户和群组之间的推荐匹配210、212进行投票。如果用户和群组都接受推荐的匹配,则匹配引擎142可以将用户添加到群组103,并实现对群组的通信通道和其他特征的访问。
[0058] 图3例示根据本公开的一方面的用于对用户和用户群组进行自动分类的示例系统300。系统300与图2中所示的系统200基本相似。然而,除了分析群组内容202以确定群组103的分类206之外,系统300还分析用户内容302以将一个或多于一个分类306分配给客户端装置102的用户。通常,用户内容302可以包括文本内容、音频内容、图像内容、视频内容或它们的组合,以及用户在社交网络应用122内共享或交互的其他同步或异步内容等。
[0059] 分类引擎144可以利用一个或多于一个机器学习模型204接收和处理用户内容302,以确定表征内容302的标签。在一些实现中,除了处理内容302之外,分类引擎144还可以处理与用户相关联的简介信息208以确定标签。分类引擎144使用所确定的标签将一个或多于一个分类306分配给用户,其中分类306表示与用户相关的主题。例如,分类引擎144可以将所有标签分配为用户的分类306,将标签的子集分配为用户的分类306,或者可以基于对标签的分析确定用户的分类306。在一些实现中,分类引擎144可以基于用户的分类306来生成用户的签名。
[0060] 分类引擎144可以向匹配引擎142提供群组103的分类206和用户的分类306。在一些实现中,匹配引擎142还可以接收用户的简介信息208。匹配引擎142可以从分类306和/或简介信息中导出用户的匹配标准。如本文所述,匹配引擎142可以处理分配给群组103的分类206以识别满足与用户相关联的匹配标准的那些群组。
[0061] 在一些实现中,匹配引擎142可以将群组103的分类206与用户的分类306进行比较以识别匹配。例如,匹配引擎142可以识别用户的分类306(或根据分类306形成的签名)是否与群组的分类206(或根据分类206形成的签名)中的至少一些相匹配。如果分类206、306或根据其形成的签名之间存在确切的匹配,则匹配引擎142可以确定为用户和群组是匹配的。如果分类206、306(和/或签名)之间存在超过阈值水平的部分匹配,诸如至少50%的分类(和/或签名)之间存在匹配,则匹配引擎142也可以确定为用户和群组是匹配的。另一方面,如果分类206、306(和/或签名)不满足相似度的阈值水平,则匹配引擎142可以确定为用户与群组之间不存在匹配。
[0062] 如果识别出潜在匹配,则匹配引擎142可以将与匹配群组210有关的信息发送给用户,或者将与匹配用户212有关的信息发送给群组,或者两者兼有。用户和(在某些实现中)群组可以对用户和群组之间的推荐匹配210、212进行投票。如果用户和群组都接受推荐的匹配,则匹配引擎142可以将用户添加到群组103,并实现对群组的通信通道和其他特征的访问。
[0063] 图4例示根据本公开的一方面的用于对用户群组进行自动分类的示例系统400。系统400与图2中所示的系统200和图3中所示的系统300基本相似。然而,在该示例中,系统400基于群组103a和103b内所共享的群组内容202a、202b而生成相应的群组103a和103b之间的匹配402a、402b。为了生成群组103a、103b之间的匹配402a、402b,匹配引擎142接收被分配给群组的分类206a、206b并识别分类206a、206b(或根据分类形成的签名)之间的完全或部分匹配。如果识别出匹配,则匹配引擎142可以将与匹配有关的信息发送给匹配群组的部分或全部成员。在一些实现中,匹配引擎142可以提示相应群组的成员(例如,来自各群组的指定成员,诸如群组创建人或主持人等)将群组归并或合并为单个群组。如果接收到对合并群组的投票,则系统100可以将一个群组的成员添加到另一群组中,或者可以创建具有来自各群组的成员的新群组。以这种方式,可以减少系统400内的群组106a、106b和群组内容202a、202b的重复,从而减少系统400对计算资源的消耗。
[0064] 图5例示用于对用户群组进行自动分类并且生成群组与用户之间的匹配的示例处理500。在一些示例中,处理500由这里描述的一个或多于一个装置或系统(诸如客户端装置102、服务器104或系统100、200、300和/或400等)进行,该一个或多于一个装置或系统包括至少一个处理器和至少一个计算机可读存储介质,该存储介质存储可由至少一个处理器执行以进行处理500的指令。
[0065] 处理500的操作包括访问502社交网络中的群组内所共享的内容。群组可以包括社交网络应用的一个或多于一个用户,并且内容可以由该一个或多于一个用户中的至少一个用户在与群组相关联的通信通道中共享。在一些实现中,通信通道包括群组聊天、群组网页和群组流传输通道中的至少一个。在一些实现中,内容包括在群组内共享的文本、音频、图像和视频数据中的至少一个。
[0066] 利用至少一个机器学习模型处理504所共享的内容以确定内容的一个或多于一个标签。基于内容的一个或多于一个标签,确定506群组的一个或多于一个分类。可以基于从社交网络应用的一个或多于一个用户接收到的带标签的内容来训练至少一个机器学习模型。在一些实现中,至少一个机器学习模型是基于内容的类型从多个机器学习模型中选择的,其中内容的类型包括文本、音频、图像和视频中的至少一个。群组的一个或多于一个分类可以包括内容的一个或多于一个标签的全部或子集,或者可以基于对一个或多于一个标签的分析导出。
[0067] 在508处,访问社交网络应用的用户的匹配标准。在一些实现中,可以(例如,从用户所操作的客户端装置)接收用户的简介信息,并且可以基于简介信息为用户生成匹配标准。在一些实现中,接收用户的用户内容,该用户内容包括用户在社交网络应用中共享的内容和用户在社交网络应用中交互(例如,查看、喜欢、共享等)的内容中的至少一个。可以利用至少一个机器学习模型处理用户内容以确定用户内容的一个或多于一个标签,并且可以基于一个或多于一个标签生成用户的匹配标准。
[0068] 基于用户的匹配标准和群组的一个或多于一个分类生成510用户与群组之间的匹配。响应于匹配,将指示匹配的数据供给512到用户的客户端装置。指示匹配的数据可以使客户端装置显示匹配以及群组的一个或多于一个分类。
[0069] 从客户端装置接收514匹配接受。响应于匹配接受,向用户提供516对社交网络应用中的群组的访问。在一些实现中,提供对社交网络应用中的群组的用户访问包括实现用户与群组之间的网络通信。在一些实现中,提供对社交网络应用中的群组的用户访问包括使得用户能够(例如,经由群组的一个或多于一个通信通道)与群组共享内容。在一些实现中,向与群组中的至少一个用户相关联的至少一个客户端装置供给指示匹配的数据。从该至少一个客户端装置接收匹配接受,并且作为响应,向用户提供对社交网络中的群组的访问。
[0070] 图6例示用于对用户群组进行自动分类并且生成群组之间的匹配的示例处理600。在一些示例中,处理600由这里描述的一个或多于一个装置或系统(诸如客户端装置102、服务器104或系统100、200、300和/或400等)进行,该一个或多于一个装置或系统包括至少一个处理器和至少一个计算机可读存储介质,该存储介质存储可由至少一个处理器执行以进行处理600的指令。
[0071] 处理600的操作包括针对社交网络应用中的多个群组中的各群组:访问602群组内所共享的内容;利用至少一个机器学习模型处理604所共享的内容以确定内容的一个或多于一个标签;以及基于内容的一个或多于一个标签确定606群组的一个或多于一个分类。
[0072] 多个群组中的各群组可以包括社交网络应用的一个或多于一个用户,并且内容可以由该一个或多于一个用户中的至少一个用户在与特定群组相关联的通信通道中共享。在一些实现中,通信通道包括群组聊天、群组网页和群组流传输通道中的至少一个。在一些实现中,内容包括在群组内共享的文本、音频、图像和视频数据中的至少一个。
[0073] 至少一个机器学习模型可以基于从社交网络应用的一个或多于一个用户接收到的带标签的内容进行训练。在一些实现中,至少一个机器学习模型是基于内容的类型从多个机器学习模型中选择的,其中内容的类型包括文本、音频、图像和视频中的至少一个。群组的一个或多于一个分类可以包括内容的一个或多于一个标签的全部或子集,或者可以基于对一个或多于一个标签的分析导出。
[0074] 在608处,基于多个群组中的第一群组和第二群组中的各群组的一个或多于一个分类生成第一群组和第二群组之间的匹配。作为响应,向第一群组和第二群组中的各群组供给610指示匹配的数据。例如,可以将指示匹配的数据供给到第一群组和第二群组的部分或全部成员,或者供给到第一群组和第二群组的指定成员(例如,创建人或主持人)。在一些实现中,指示匹配的数据可以包括用以使第一群组和第二群组组合的提示。
[0075] 从第一群组和第二群组中的至少一个接收612匹配接受。响应于接收到匹配接受,使第一群组和第二群组组合614。在一些实现中,使第一群组和第二群组组合包括将第一群组的成员添加到第二群组(或反之亦然)。在一些实现中,使第一群组和第二群组组合包括创建具有第一群组的成员和第二群组的成员的第三群组(并且可选地,从社交网络应用中移除第一群组和第二群组)。
[0076] 这里描述的方法可以至少部分地使用具有计算机可读存储介质的计算机存储产品来实现,该计算机可读存储介质上具有用于进行各种计算机实现的操作的计算机代码。介质和计算机代码可以是为了这里描述的方法的目的而专门设计和构造的介质和计算机代码,或者它们也可以是计算机软件领域技术人员所熟知和可用的种类。计算机可读介质的示例包括但不限于:磁性介质,诸如硬盘、软盘和磁带等;光学介质,诸如CD‑ROM、DVD和全息装置等;磁光介质;以及专门配置为存储和执行程序代码的硬件装置,诸如专用集成电路(“ASIC”)、可编程逻辑器件(“PLD”)以及ROM和RAM装置等。计算机代码的示例包括诸如由编译器产生的机器代码以及包含由计算机使用解释器执行的更高级代码的文件。例如,这里描述的方法可以使用 C++或其他编程语言和开发工具来实现。在一些示例中,这里描述的方法可以代替机器可执行软件指令或与机器可执行软件指令组合地在硬连线电路系统中实现。
[0077] 出于解释的目的,前面的描述使用了具体的命名以提供对本发明的透彻理解。然而,对于本领域技术人员来说显而易见的是,实践这里描述的方法并不需要具体的细节。因此,前面对具体实施例的描述是为了例示和描述的目的而提出的。它们不旨在是详尽的或将本发明限制为所公开的精确形式;显然,鉴于上述教导,许多修改和变化都是可能的。选择和描述实施例是为了最好地解释这里所述方法的原理及其实际应用,从而使本领域技术人员能够最好地利用这里所述的方法以及具有适合所设想的特定用途的各种修改的各种实施例。这里未具体描述的其他实现也在以下权利要求的范围内。