CN111701247A - 用于确定统一账号的方法和设备 - Google Patents
用于确定统一账号的方法和设备 Download PDFInfo
- Publication number
- CN111701247A CN111701247A CN202010669132.9A CN202010669132A CN111701247A CN 111701247 A CN111701247 A CN 111701247A CN 202010669132 A CN202010669132 A CN 202010669132A CN 111701247 A CN111701247 A CN 111701247A
- Authority
- CN
- China
- Prior art keywords
- identification
- account
- graph
- determining
- pairs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/75—Enforcing rules, e.g. detecting foul play or generating lists of cheating players
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请描述了一种用于确定统一账号的方法,包括:获取多个标识对以及与每个标识对相关联的特征数据,每个标识对包括具有关联关系的设备标识和账号标识;基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图;确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群;为每个账号簇群中的设备标识和账号标识确定统一账号。利用所述方法,便于实现用户管理以及极大提升网络业务的运营的效率。
Description
技术领域
本公开涉及互联网技术领域,具体地涉及用于确定统一账号的方法和设备。
背景技术
随着互联网技术的发展,网络业务的运营变得越来越重要与关键。特别是在平台类业务的运营过程中,例如在游戏运营的过程中,如果涉及众多游戏,一个玩家可能有多个账号以及多个设备,如何在无用户真实身份数据(例如身份证号、护照号、指纹、面部特征等,这通常是保密的,难以获取到)的情况下挖掘和识别潜在地归属同一用户的账号以便合理有效地指导游戏的运营是至关重要的。
传统上,采用用于唯一地识别设备的设备标识(例如,手机的国际移动设备识别码(IMEI))来作为识别用户的唯一标识,即在同一设备上登录过的账号被视为同一用户的账号。然而,随着操作系统的不断升级,目前能采集到的设备标识的信息越发不完善。例如在用户不授权的情况下采集不到手机的IMEI,而且还存在山寨机,导致采集到的IMEI被伪造而不唯一以及采集到的信息多为其他不太准确的标识信息,比如苹果手机的idfa(Identifier For Advertising, 广告ID),uuid(Universally Unique Identifier,通用唯一识别码)、google(谷歌)的广告ID、国家工信部推出的匿名设备标识符(即OAID)等等。而且,用户也可能跨设备登录账号,例如用户可能在朋友或者同事的设备上登录自己的账号玩游戏,因此简单将同一设备上登录过的账号视为同一用户的账号也并不是一个合理的方案。
发明内容
有鉴于此,本公开提供了用于基于账号标识和设备标识来构建或确定统一账号的方法和设备、计算设备和计算机可读存储介质,其中不同的统一账号对应于不同的用户,期望可以克服上面提到的部分或全部缺陷以及其它可能的缺陷。
根据本公开的第一方面, 提供了一种用于确定统一账号的方法,包括:获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过;基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图;确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群;为每个账号簇群中的设备标识和账号标识确定统一账号。
在一些实施例中,比于不同极大连通子图中的设备标识和账号标识,在同一极大连通子图中的设备标识和账号标识具有更大的概率属于同一用户。
在一些实施例中,所述特征数据包括多个维度的特征数据,并且所述基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类包括:对所述多个维度的特征数据进行降维处理;基于与所述多个标识对相关联的降维处理后的特征数据对所述多个标识对进行聚类。
在一些实施例中,基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,包括:对所述多个标识对中的设备标识和账号标识进行编码;基于与所述多个标识对相关联的特征数据对所述编码后的设备标识和账号标识构成的标识对进行聚类。
在一些实施例中,基于所述至少一个极大连通子图确定至少一个账号簇群,包括:将所述至少一个极大连通子图中的每个极大连通子图确定为一个账号簇群。
在一些实施例中,基于所述至少一个极大连通子图确定至少一个账号簇群,包括:响应于所述至少一个极大连通子图中的第一极大连通子图中的设备标识和账号标识的数目小于或等于预设标识数目阈值,则将所述第一极大连通子图确定为一个账号簇群。
在一些实施例中,基于所述至少一个极大连通子图确定至少一个账号簇群,包括:响应于所述至少一个极大连通子图中的第二极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值,则:(a)对第二极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;(b)对减枝处理后的第二极大连通子图进行社区划分,以得到至少一个社区;(c)将所述至少一个社区中的每个社区确定为一个账号簇群。
在一些实施例中,对第二极大连通子图进行减枝处理,包括:根据与第二极大连通子图中每条边对应的标识对相关联的特征数据确定第二极大连通子图中的每条边的权重,所述权重表示所述每条边对应的标识对中的账号标识与设备标识的关联度;基于第二极大连通子图中的每条边的权重,针对第二极大连通子图中的每个账号标识去除与所述每个账号标识的关联度小于预定阈值的设备标识。
在一些实施例中,与所述多个标识对中的每个标识对相关联的特征数据包括:与所述每个标识对中的账号标识相关联的用户信息、与所述每个标识对中的设备标识关联的账号标识的数目、以及与所述每个标识对中的账号标识相关联的设备标识的数目。
在一些实施例中,所述账号标识表示用户登录各种应用的用户名称。
在一些实施例中,所述设备标识表示用于识别设备的识别码。
根据本公开的第二方面,提供了一种用于确定统一账号的设备,包括:获取模块,其被配置成获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过;聚类模块,其被配置成基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;图确定模块,其被配置成针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图;簇群确定模块,其被配置成确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群;账号确定模块,其被配置成为每个账号簇群中的设备标识和账号标识确定统一账号。
在一些实施例中,图确定模块还被配置成:响应于所述至少一个极大连通子图中的第二极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值:(a)对第二极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;(b)对减枝处理后的第二极大连通子图进行社区划分,以得到至少一个社区;(c)将所述至少一个社区中的每个社区确定为一个账号簇群。
根据本公开的第三方面,提供了一种计算设备,包括处理器;以及存储器,配置为在其上存储有计算机可执行指令,当计算机可执行指令被处理器执行时执行如上面所述的任意方法。
根据本公开的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行如上面所述的任意方法。
在本公开要求保护的用于确定统一账号的方法和设备中,通过基于与标识对相关联的特征数据对所述多个标识对进行聚类,然后利用图计算来确定账号簇群,使得在存在设备信息被伪造或者不准确的情况下仍然从海量数据中精准高效地确定出属于同一用户的账号标识和设备标识,从而高效地为这些账号标识和设备标识分配同一账号,以便于实现用户管理以及极大提升网络业务的运营的效率。
根据下文描述的实施例,本公开的这些和其它优点将变得清楚,并且参考下文描述的实施例来阐明本公开的这些和其它优点。
附图说明
现在将更详细并且参考附图来描述本公开的实施例,其中:
图1图示了根据本公开的实施例的技术方案可以实施在其中的示例性应用场景;
图2图示了根据本公开的一个实施例的用于确定统一账号的方法的示意性流程图;
图3示出了根据本公开的一个实施例的对多个标识对进行聚类的示意图;
图4示出了根据本公开的一个实施例的一种自定义哈希算法的示例;
图5示出了根据本公开的一个实施例的基于标识对构建连接图的示意图;
图6示出了根据本公开的一个实施例的一种社区划分的示意图;
图7示出了根据本公开的另一个实施例的确定统一账号的方法一个示例性的具体流程;
图8图示了根据本公开的另一个实施例的用于确定统一账号的设备的示例性结构图;以及
图9图示了一个示例系统,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备。
具体实施方式
下面的描述提供了本公开的各种实施例的特定细节,以便本领域的技术人员能够充分理解和实施本公开的各种实施例。应当理解,本公开的技术方案可以在没有这些细节中的一些细节的情况下被实施。在某些情况下,本公开并没有示出或详细描述一些熟知的结构或功能,以避免这些不必要的描述使对本公开的实施例的描述模糊不清。在本公开中使用的术语应当以其最宽泛的合理方式来理解,即使其是结合本公开的特定实施例被使用的。
首先,对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解:
聚类:将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。作为无监督学习的一个重要方法,聚类的思想就是把属性相似的样本或对象归到一类。由聚类所生成的类是一组对象的集合,这些对象与同一个类中的对象彼此相似,与其他类中的对象相异。常见的聚类方法有K均值聚类、均值漂移聚类、基于密度的聚类方法等等。
连通图:一种由若干个顶点以及顶点间连线(即,边)组成的图,且连通图中任意两个顶点之间相互连通。连通图通常分为无向连通图和有向连通图,其中,无向连通图中,顶点之间的连线没有方向性,而有向连通图中,顶点之间的连线具有方向性。
极大连通子图:也称为连通分量,是一张图的子图,该子图中的各个顶点之间相互连通,且加入任意一个不在其顶点集中的顶点后,该子图将不再连通。
哈希(hash)函数:又称为散列函数,是一种通过散列算法,将任意长度的输入转化为固定长度输出的函数,其输出被称为散列值。这种转化的本质是一种压缩映射,即哈希函数输出值的空间通常小于输入值的空间。其中,不同输入值对应的输出值可能相同,而不同输出值对应的输入值肯定不同。基于哈希原理的常见哈希算法包括消息摘要算法第四版(Message Digest Algorithm 4,MD4)、MD5和安全哈希算法(Secure Hash Algorithm,SHA1)等等。
社区:概念源自于社交网络,在社交网络中,用户相当于每一个顶点,用户之间通过互相的关注关系构成了整个网络的结构,在这样的网络中,有的用户之间的连接较为紧密,有的用户之间的连接关系较为稀疏,在这样的网络中,连接较为紧密的部分可以被看成一个社区,其内部的节点之间有较为紧密的连接,而在两个不同社区间的连接较为稀疏。
社区划分:对社区网络、或者具有类似社区网络结构的网络或者网络状连接图进行划分,使得其中连接较为紧密的部分被划分成一个社区。在社区划分后,一个社区内部的顶点之间有较为紧密的连接,而在两个社区间的连接相对较为稀疏。用来实现社区划分的算法称为社区划分算法。
图1图示了根据本公开的实施例的技术方案可以实施在其中的示例性应用场景100。如图1所示,所述应用场景100包括多个终端110、服务器120、以及网络130。每个终端110通过网络130与服务器120通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
终端110可以是其上安装有各种应用程序以提供各种业务的电子设备,该电子设备可以为智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。作为示例,终端110中安装有多个例如游戏类的应用程序,并登陆有相应的(游戏)账号。通过使用该账号,游戏用户可以在一个或多个游戏类应用程序上参与游戏。
服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,即内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。可选地,在本公开的实施例中,服务器120可以是终端110中游戏类应用程序的后台服务器。下述各个实施例提供的用于确定统一账号的方法可以实施于图1所示的服务器120中,当然这不是限制性的。作为示例,所述示例性应用场景100还可以包括计算设备140,其与服务器120通过网络130可通信地耦合在一起。可选地,下述各个实施例提供的用于确定统一账号的方法也可以实施于图1所示的计算设备140中。计算设备140可以是例如服务提供商的服务器、与服务器相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。
用户在终端110上登录账号执行特定操作(例如,在终端110上的应用程序上登录账号玩游戏)时,会将执行特定操作时产生的数据(例如,作为日志数据)上报至服务器120。作为示例,在存在多个应用程序时,同一用户可能具有对应于多个应用程序的多个账号,或者同一用户也可能使用相同的账号在不同的终端110上的应用程序上登录来执行操作(例如,玩游戏)。此时,服务器120可以根据上报至服务器120的日志数据来确定其中属于同一用户的账号,并且为这些可能属于同一用户的账号确定统一账号。所述日志数据通常包括账号以及识别所述账号登录到的终端110的识别码,以及与账号和识别码相关联的特征数据,如下面详细描述的。
具体地,服务器120(具体地,服务器上的应用程序)首先可以从日志数据中获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过。所述账号标识表示用户使用其来登录终端上的各种应用程序的用户名称,也即上面所述的账号。所述设备标识表示用于识别设备(也即上面所述的终端110)的识别码。作为示例,如图1所示,账号标识A1和A2在设备标识为D1的终端110上登录过,则服务器可以据此获取到两个标识对(A1,D1)和(A2,D1)。同理,在图1中账号标识A1和A3在设备标识为D2的终端上登录过,以及账号标识A4在设备标识为D3的终端上登录过,因此还可以从日志数据中获取到标识对(A1,D2)和(A3,D2)以及(A4,D3)。与所述多个标识对中的每个标识对相关联的特征数据包括:与所述每个标识对中的账号标识相关联的用户信息、与所述每个标识对中的设备标识关联的账号标识的数目、以及与所述每个标识对中的账号标识相关联的设备标识的数目。
然后,服务器120(具体地,服务器上的应用程序)可以基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图中的至少一个极大连通子图;基于所述至少一个极大连通子图确定至少一个账号簇群。所述至少一个账号簇群中的每个账号簇群至少包括一个标识对。最后,可以为每个账号簇群中的设备标识和账号标识确定统一账号,即每个账号簇群中的设备标识和账号标识可以被确定为属于同一用户,因此可以为这些设备标识和账号标识确定一个统一账号。
可选地,服务器120可以是与应用提供商相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。所述网络140例如可以是广域网(WAN)、局域网(LAN)、有线或无线网络、公用电话网、内联网以及本领域的技术人员熟知的任何其它类型的网络。还应当指出,上面描述的场景仅仅是本公开的实施例可以被实施在其中的一个示例,并不是限制性的。
图2图示了根据本公开的一个实施例的用于确定统一账号的方法200的示意性流程图。所述方法200例如可以实施在图1所示的服务器120上。如图2所示,所述方法200可以包括如下步骤。
在步骤201,获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据。每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过。例如,账号标识A1和设备标识D1具有关联关系,则(A1,D1)构成一个标识对。所述账号标识A1在所述设备标识D1所识别的设备上登录过包括在所述设备上安装的应用程序上登录过,例如在所述设备上安装的游戏客户端上输入所述账号标识A1登录以参与游戏。
作为示例,参照图1,如上面所述,账号标识A1和A2在设备标识为D1的终端上登录过,则可以据此获取到两个标识对(A1,D1)和(A2,D1)。同理,在图1中账号标识A1和A3在设备标识为D2的终端上登录过,以及账号标识A4在设备标识为D3的终端上登录过,因此还可以获取到标识对(A1,D2)和(A3,D2)以及(A4,D3)。
与所述多个标识对中的每个标识对相关联的特征数据包括但不限于:与所述每个标识对中的账号标识相关联的用户信息、与所述每个标识对中的设备标识关联的账号标识的数目、以及与所述每个标识对中的账号标识相关联的设备标识的数目。与所述每个标识对中的账号标识相关联的用户信息可以包括使用该账号标识的所有者的年龄、性别,以及登录时所处的省份、城市、IP(网际协议)地址信息、该账号的活跃习惯(例如,什么时间在哪些设备标识识别的设备上登录过)等等。作为示例,在图1中,与标识对(A1,D1)中的账号标识A1相关联的设备标识分别为D1和D2,其数目为2。
在一些实施例中,所述账号标识可以是用户登录各种应用程序的用户名称,例如常见的用户ID、QQ号码、微信ID等等。设备标识表示用于识别设备的识别码,其包括手机的国际移动设备识别码(IMEI))、苹果手机的idfa(Identifier For Advertising, 广告ID),uuid(Universally Unique Identifier,通用唯一识别码)、google(谷歌)的广告ID、国家工信部推出的匿名设备标识符(即OAID)等等。
在步骤202,基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类。在本实施例中,将与每个标识对相关联的特征数据作为每个标识对的属性,对所述多个标识对进行聚类。聚类是基于多个标识对的属性间的相似性进行的。在聚类时,可以将每个标识对的特征数据映射为多维空间(其维度数通常与标识对的属性中的特征数据的种类数相同)中的空间坐标,然后根据空间坐标计算任意两个标识对间的多维空间中的空间距离。两个标识对间的空间距离越近,表明这两个标识对的属性间的相似性越高。作为示例,可以使用K均值聚类方法来对所述多个标识对进行聚类,当然也可以使用任何其它的聚类方法进行聚类,这不是限制性的。
如上面所述,所述特征数据可能包括多个维度的特征数据。因此,在基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类前,可以先对所述多个维度的特征数据进行降维处理,以形成较少维度的特征数据。然后,基于与所述多个标识对相关联的降维处理后的特征数据对所述多个标识对进行聚类。作为示例,可以使用主成分分析(Principal Component Analysis,PCA)方法来对所述多个维度的特征数据进行降维处理。主成分分析方法是通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量被称为主成分。应当指出,主成分分析方法仅仅是一个示例,事实上任何可以将多维特征数据转换成较少维度的数据的方法都是可行的,这里对此不作限制。
图3示出了根据本公开的实施例的对所述多个标识对进行聚类的示意图。如图3所示,原始数据为所述多个标识对,与所述多个标识对相关联的特征数据为多维数据(例如,8个维度的数据),则首先使用PCA方法将所述原始数据的多维特征数据例如降维成两个维度的特征数据,然后基于所述两个维度的特征数据对所述多个标识对进行聚类,以生成多个类(如图3中生成4个类)。在聚类时,可以将每个标识对的两个维度的特征数据映射为所述标识对在二维空间中的空间坐标,然后根据空间坐标计算所述每个标识对间的空间距离(例如,欧氏距离,余弦相似度等),并按照空间距离对标识对进行聚类。
作为示例,可以通过如下步骤实现聚类过程:步骤(1),确定希望经过聚类得到的类的数目k,其为正整数;步骤(2),从多个标识对中随机选择k个标识对作为质心;步骤(3),对每一个标识对,计算其与每一个质心的空间距离,并将其划分到距其空间距离最近的那个质心所属的类中;步骤(4),把所有标识对划分完后,得到k个类,然后重新计算每个类的质心(即,类中的标识对的空间坐标的均值);步骤(5),如果新计算出来的质心和原来的质心之间的距离小于预设阈值(表示重新计算的质心的位置变化不大,趋于稳定,或者说收敛),可以认为聚类已经达到期望的结果,算法终止;否则,迭代步骤(3)~(5),直到新计算出来的质心和原来的质心之间的距离小于预设阈值。
通常,设备标识和账号标识具有字符串的形式,在这种情况下,可以对设备标识和账号标识进行编码以将其转换成数字格式,以便于提高处理的效率。然后,基于与所述多个标识对相关联的特征数据对所述编码后的设备标识和账号标识构成的标识对进行聚类。当然,这不是限制性的,对设备标识和账号标识进行编码并不是必须的,而且在设备标识和账号标识具有数字格式的情况下,也不需要进行这样的编码。作为示例,可以按照下述公式对设备标识和账号标识进行编码:
hash(col)*10000000+hash(md5(col))%10000000,
其中,col表示设备标识或账号标识,hash表示哈希算法,md5表示MD5信息摘要算法(MD5 Message-Digest Algorithm),其是一种被广泛使用的密码散列函数。采用这样的编码方式,可以减少编码后的设备标识和账号标识的冲突的可能性,有利于后续的处理。
作为示例,这里的哈希算法也可以采用自定义哈希的形式。图4示出了可以被采用的一种自定义哈希算法的示例,其中设备标识或账号标识col例如可以具有字符串(string)的格式。如图4所示,首先设置变量seed为自定义的浮点数,并且将大整数(bigint)型变量hash初始化为0,其中bigint可以精确的表示从-2^63到2^63-1(即从-9,223,372,036,854,775,808到 9,223,372,036,854,775,807)之间的整数,它占用了八个字节的存储空间。然后遍历字符串col中的每个字符col[i](i初始值为0的正整数),根据下式确定最终的哈希结果hash:
hash+=hash*seed+col[i];
i+=1。
编码后的设备标识和账号标识可以如下表1所示:
编码后的设备标识 | 编码后的账号标识 |
3952539358823100741 | 5294997958892541545 |
5952539358823120321 | 5294997958892541546 |
5654539212560321673 | 5294997958892541549 |
表1。
如表1所示,在编码后,字符串格式的设备标识和账号标识被转换为大整数。使用如上自定义哈希算法,可以在加快运算效率的同时减少哈希结果的冲突,从而减少了编码后的设备标识和账号标识的冲突的可能性,有利于后续的处理。应当指出,上面所述的编码方法只是作为示例,任何能够将设备标识和账号标识转换成数字格式以便提高处理效率的编码方法都是被考虑的。在进行所述编码后,由编码后的设备标识和账号标识构成了所述标识对(即,两个数值构成的标识对),方法200的后续步骤都可以基于所述编码后的设备标识和账号标识构成的所述标识对进行,事实上,所述编码后的设备标识和账号标识构成的所述标识对是步骤201中获取的标识对的另一表示形式,两者是一一对应的。
在步骤203,针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图。与连通图的概念不同,这里的“连接图”仅是指通过用边将顶点连接而形成的图。图5示出了根据本公开的实施例的基于标识对构建连接图的示意图,其中,以图1中示出的标识对(A1,D1)、(A2,D1)、(A1,D2)、(A3,D2)以及(A4,D3)为一个类为例,示出了以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图。
在步骤204,确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群。在聚类形成的每个类中,以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图是无向图,但可能是连通图也可能不是连通图,因此其中存在一个或者多个极大连通子图。每个极大连通子图中的账号标识和设备标识有较大的概率属于同一用户,而不同极大连通子图中的账号标识和设备标识有较小的概率属于同一用户。
以图5为例,按照上面所述的定义:极大连通子图是一张图的子图,该子图中的各个顶点之间相互连通,且加入任意一个不在其顶点集中的顶点后,该子图将不再连通,图5中所形成的连接图中包括两个极大连通子图,第一个极大连通子图为由D1、A1、A2、D2、A3构成的子图,第二个极大连通子图为有A4和D3构成的子图。
应当理解,所述至少一个账号簇群中的每个账号簇群都至少包括一个标识对,也就是说每个账号簇群的设备标识和账号标识可以构成至少一个标识对。在一些实施例中,可以将所述至少一个极大连通子图中的每个极大连通子图确定为一个账号簇群。如上面参照图5形成两个极大连通子图的情形下,则可以确定与所述两个极大连通子图对应的两个账号簇群。
在一些实施例中,所述至少一个极大连通子图中的一个或多个极大连通子图中的顶点(即,设备标识和账号标识)的数目可能比较多,这表明账号簇群中存在可能不属于一个用户的账号的概率会大增。在这种情况下,可以仅在所述至少一个极大连通子图中的特定极大连通子图中的设备标识和账号标识的数目小于或等于预设标识数目阈值时,则将所述特定极大连通子图确定为一个账号簇群。换句话说,在所述至少一个极大连通子图中的特定极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值时,不将所述特定极大连通子图确定为一个账号簇群,需要进一步分析。
在一些实施例中,在所述至少一个极大连通子图中的特定极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值时,可以对所述特定极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;然后,对减枝处理后的特定极大连通子图进行社区划分,以得到至少一个社区;最后,将所述至少一个社区中的每个社区确定为一个账号簇群。所述预设标识数目阈值可以根据需要或经验确定,其值并不是限制性的。
在一些实施例中,在对极大连通子图进行减枝处理时,可以首先根据与所述极大连通子图中每条边对应的标识对相关联的特征数据确定所述极大连通子图中的每条边的权重,所述权重表示所述每条边对应的标识对中的账号标识与设备标识的关联度;然后基于所述极大连通子图中的每条边的权重,针对所述极大连通子图中的每个账号标识去除与所述每个账号的关联度小于预定阈值的设备标识。相对于如是上面所述的设备标识的可伪造或者不准确,账号标识显然是更重要的信息,因此针对账号标识去除与其关联度较低的设备标识,能够最大可能地去除掉这些伪造的或者信息不准确的设备标识(这些设备标识识别的设备很大概率的是有问题的设备),提高最后形成的账号簇群中的账号标识和设备标识属于同一用户的概率,从而提高确定统一账号的准确性,并且减小后续社区划分的时的复杂度。
作为示例,所述权重可以被定义为w=a+b+c,其中w为边的权重值,a可以为这条边连接的设备标识所识别的设备的活跃度,b可以为1.0/(所述设备登录过的账号标识的数量)、c可以为1.0/(这条边连接的账号标识登录过的设备的数量)。设备的活跃度可以被表示为(设备账号最近半年的活跃天数)/30。这些相关的数据全部可以从与标识对相关联的特征数据直接或间接获取到。例如,设备账号最近半年的活跃天数可以根据上面描述的与账号标识相关联的用户信息中的活跃习惯(例如,什么时间在哪些设备标识识别的设备上登录过)被确定。然后,可以针对每个账号标识,去除与所述每个账号标识的关联度小于预定阈值的设备标识,预定阈值也可以根据需要或经验确定。可选地,还可以针对每个账号标识,去除与所述每个账号标识的关联度处于预设关联度排名之后的设备标识。所述预设关联度排名例如可以被定义被5,则先对与所述每个账号标识连接的所有边的权重进行从高到低排名,然后将排名第6以及第6名之后(例如第7名)的权重对应的边连接的设备标识(当然,可以连同所述边一起)从所述极大连通子图中去除。
在一些实施例中,在对减枝处理后的极大连通子图进行社区划分时,可以使用各种社区划分方式来实现社区划分。社区划分是指使得一个连接图(在本方案中为极大连通子图)中连接较为紧密的部分被划分成一个社区,在社区划分后一个社区内部的顶点之间有较为紧密的连接,而在两个社区间的连接相对较为稀疏。社区划分一般是无监督的学习,需要直接从图的网络拓扑信息中得到有效的社区划分。不同于监督学习从预测结果与真实标签的误差中寻找调整参数的方向,无监督学习经常直接给出判断一个模型好坏的标准。对社区划分算法来说,评价一个社区划分好坏的标准是指标模块度(Modularity)。模块度越大,则社区划分的效果越好。
具体地,与上面所述类似,以极大连通子图中的账号标识和设备标识为顶点(也称为节点),以其中的标识对对应节点间的边,则在本公开的实施例中,模块度Q可以被定义为:
其中,A为邻接矩阵;代表节点i和节点j之间边的权重;是所有与节点i相连的边的权重之和;是所有与节点j相连的边的权重之和;表示所有边的权重之和;是i节点所在社区,是j节点所在社区;表示:当节点i和节点j在同一个社区内时返回1,否则返回0。
社区划分算法主要包括两个阶段,如图6所示:第一阶段称为模块度优化,主要是将每个节点划分到与其邻接的节点所在的社区中,以使得模块度的值不断变大;第二阶段称为社区聚合,主要是将第一步划分出来的社区聚合成为一个点,即根据上一步生成的社区结构重新构造网络。重复以上的过程,直到网络中的结构不再改变为止。具体的算法过程如下所示:(1)初始化,将每个节点划分在不同的社区中;(2)对每个节点,将每个节点尝试划分到与其邻接的节点所在的社区中,计算此时的模块度,判断划分前后的模块度的差值ΔQ是否为正数,若为正数,则接受本次的划分,若不为正数,则放弃本次的划分;(3)重复以上的过程,直到不能再增大模块度为止;(4)构造新图,新图中的每个节点代表的是步骤3中划出来的每个社区,继续执行步骤(2)和步骤(3),直到社区的结构不再改变为止。在第二阶段中,所有当前属于同一个社区的节点聚合为单个节点,新网络的节点数跟社区数目一致,新网络节点之间的边为节点代表的社区之间节点间的边之和,并给新网络的节点赋予权重,其值等于原始网络社区内部的节点间的边之和,其本质为将当前同一社区的节点绑在一起,使得下一步重复过程中的模块度优化阶段以当前社区为基本单位,即每个社区可以选择邻居社区或者当前社区作为自己新的社区。
对减枝处理后的极大连通子图进行社区划分,能够对复杂的极大连通子图进行精细化的分类,能够提高确定统一账号的准确性。
在步骤205,为步骤204中确定的每个账号簇群中的设备标识和账号标识确定统一账号。作为示例,确定的统一账号的数值可以从0开始编号,或者选择簇群中的任意账号标识或设备标识作为所述统一账号,如下表所示:
表2。
在本公开的实施例描述的方法中,基于与标识对相关联的特征数据对所述多个标识对进行聚类,然后利用图计算(即,确定以其中的设备标识和账号标识为顶点的连接图,获取所述连接图中的极大连通子图,以及社区划分等)来确定账号簇群,使得在存在设备信息被伪造或者不准确的情况下仍然能够从海量数据中精准高效地确定出属于同一用户的账号标识和设备标识,从而高效地为这些账号标识和设备标识分配同一账号,以极大提升网络业务的运营的效率。
图7图示了根据本公开的一个实施例的确定统一账号的方法一个示例性的具体流程。在所述流程中,具体可以分为四个阶段,即数据预处理阶段、聚类阶段、图计算阶段、以及统一账号生成阶段。
在数据预处理阶段,主要是进行数据收集整理,以及对收集的账号标识和设备标识进行编码。数据收集整理主要是例如服务器收集各种来源的(例如,游戏SDK,游戏客户端,游戏后台、其它第三方数据)的日志数据,并从中得到具有关联关系的设备标识和账号标识(即,标识对)以及与每个标识对相关联的特征数据,如在方法200的步骤201描述的。对账号标识和设备标识进行编码可以包括对账号标识和设备标识进行如参照步骤202描述的利用哈希算法的编码。
在聚类阶段,主要是根据基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类,如在步骤202描述的。其中,由于存在多个维度的特征数据,在聚类前,对所述多个维度的特征数据进行了降维处理,以形成2维特征数据。然后,基于与所述多个标识对相关联的2维特征数据对所述多个标识对进行聚类。
在图计算阶段,首先针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图中的多个极大连通子图,如参照步骤203描述的。然后,判断每个极大连通子图是否合理,如果极大连通子图中的账号标识的数目小于或等于预设标识数目阈值10,则所述极大连通子图是合理的,并将其确定为一个账号簇群;如果极大连通子图中的账号标识的数目大于预设标识数目阈值10,则所述极大连通子图是不合理的,在对其进行减枝处理和社区划分,以得到至少一个社区,并将每个社区确定为一个账号簇群,如参照步骤204描述的内容。
在统一账号生成阶段,为上面确定的每个账号簇群中的设备标识和账号标识确定统一账号,如参照步骤205描述的。
图8图示了根据本公开的一个实施例的用于确定统一账号的设备800的示例性结构图。如图8所示,所述用于确定统一账号的设备800包括获取模块801、聚类模块802、图确定模块803、簇群确定模块804以及账号确定模块805。
获取模块801被配置成获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过。与所述多个标识对中的每个标识对相关联的特征数据包括但不限于:与所述每个标识对中的账号标识相关联的用户信息、与所述每个标识对中的设备标识关联的账号标识的数目、以及与所述每个标识对中的账号标识相关联的设备标识的数目。
聚类模块802被配置成基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类。在一些实施例中,在基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类前,聚类模块802被配置成先对所述多个维度的特征数据进行降维处理,以形成较少维度的特征数据,然后基于与所述多个标识对相关联的降维处理后的特征数据对所述多个标识对进行聚类。
图确定模块803被配置成针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图中的至少一个极大连通子图。与连通图的概念不同,这里的“连接图”仅是指通过用边将顶点连接而形成的图。
簇群确定模块804被配置成确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群。每个极大连通子图中的账号标识和设备标识有较大的概率属于同一用户,而不同极大连通子图中的账号标识和设备标识有较小的概率属于同一用户。所述至少一个账号簇群中的每个账号簇群至少包括一个标识对。在一些实施例中,在所述至少一个极大连通子图中的特定极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值时,簇群确定模块804可以被配置成对所述特定极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;然后,对减枝处理后的特定极大连通子图进行社区划分,以得到至少一个社区;最后,将所述至少一个社区中的每个社区确定为一个账号簇群。
账号确定模块805被配置成为每个账号簇群中的设备标识和账号标识确定统一账号。作为示例,确定的统一账号的数值可以从0开始编号,或者选择簇群中的任意账号标识或设备标识作为所述统一账号。
图9图示了示例系统900,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备910。计算设备910可以是例如服务提供商的服务器、与服务器相关联的设备、片上系统、和/或任何其它合适的计算设备或计算系统。上面参考图8描述的用于确定统一账号的设备800可以采取计算设备910的形式。替换地,用于确定统一账号的设备800可以以账号确定应用916的形式被实现为计算机程序。
如图示的示例计算设备910包括彼此通信耦合的处理系统911、一个或多个计算机可读介质912以及一个或多个I / O接口913。尽管未示出,但是计算设备910还可以包括系统总线或其他数据和命令传送系统,其将各种组件彼此耦合。系统总线可以包括不同总线结构的任何一个或组合,所述总线结构诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/或利用各种总线架构中的任何一种的处理器或局部总线。还构思了各种其他示例,诸如控制和数据线。
处理系统911代表使用硬件执行一个或多个操作的功能。因此,处理系统911被图示为包括可被配置为处理器、功能块等的硬件元件914。这可以包括在硬件中实现为专用集成电路或使用一个或多个半导体形成的其它逻辑器件。硬件元件914不受其形成的材料或其中采用的处理机构的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质912被图示为包括存储器/存储装置915。存储器/存储装置915表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储装置915可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置915可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等)。计算机可读介质912可以以下面进一步描述的各种其他方式进行配置。
一个或多个I/O接口913代表允许用户使用各种输入设备向计算设备910输入命令和信息并且可选地还允许使用各种输出设备将信息呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的容性或其他传感器)、相机(例如,可以采用可见或不可见的波长(诸如红外频率)将不涉及触摸的运动检测为手势)等等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,计算设备910可以以下面进一步描述的各种方式进行配置以支持用户交互。
计算设备910还包括账号确定应用916。账号确定应用916可以例如是用于确定统一账号的设备800的软件实例,并且与计算设备910中的其他元件相组合地实现本文描述的技术。
本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等。本文所使用的术语“模块”,“功能”和“组件”一般表示软件、固件、硬件或其组合。本文描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者跨某种形式的计算机可读介质传输。计算机可读介质可以包括可由计算设备910访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与单纯的信号传输、载波或信号本身相反,“计算机可读存储介质”是指能够持久存储信息的介质和/或设备,和/或有形的存储装置。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或以适用于存储信息(诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据)的方法或技术实现的存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、盒式磁带、磁带,磁盘存储装置或其他磁存储设备,或其他存储设备、有形介质或适于存储期望信息并可以由计算机访问的制品。
“计算机可读信号介质”是指被配置为诸如经由网络将指令发送到计算设备910的硬件的信号承载介质。信号介质典型地可以将计算机可读指令、数据结构、程序模块或其他数据体现在诸如载波、数据信号或其它传输机制的调制数据信号中。信号介质还包括任何信息传递介质。术语“调制数据信号”是指这样的信号,该信号的特征中一个或多个被设置或改变,从而将信息编码到该信号中。作为示例而非限制,通信介质包括诸如有线网络或直接连线的有线介质以及诸如声、RF、红外和其它无线介质的无线介质。
如前所述,硬件元件914和计算机可读介质912代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其在一些实施例中可以用于实现本文描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及硅中的其它实现或其他硬件设备的组件。在这种上下文中,硬件元件可以作为执行由硬件元件所体现的指令、模块和/或逻辑所定义的程序任务的处理设备,以及用于存储用于执行的指令的硬件设备,例如,先前描述的计算机可读存储介质。
前述的组合也可以用于实现本文所述的各种技术和模块。因此,可以将软件、硬件或程序模块和其它程序模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件914体现的一个或多个指令和/或逻辑。计算设备910可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用处理系统的计算机可读存储介质和/或硬件元件914,可以至少部分地以硬件来实现将模块实现为可由计算设备910作为软件执行的模块。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备910和/或处理系统911)可执行/可操作以实现本文所述的技术、模块和示例。
在各种实施方式中,计算设备910可以采用各种不同的配置。例如,计算设备910可以被实现为包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等的计算机类设备。计算设备910还可以被实现为包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备的移动装置类设备。计算设备910还可以实现为电视类设备,其包括具有或连接到休闲观看环境中的一般地较大屏幕的设备。这些设备包括电视、机顶盒、游戏机等。
本文描述的技术可以由计算设备910的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。功能还可以通过使用分布式系统、诸如通过如下所述的平台922而在“云”920上全部或部分地实现。
云920包括和/或代表用于资源924的平台922。平台922抽象云920的硬件(例如,服务器)和软件资源的底层功能。资源924可以包括在远离计算设备910的服务器上执行计算机处理时可以使用的应用和/或数据。资源924还可以包括通过因特网和/或通过诸如蜂窝或Wi-Fi网络的订户网络提供的服务。
平台922可以抽象资源和功能以将计算设备910与其他计算设备连接。平台922还可以用于抽象资源的分级以提供遇到的对于经由平台922实现的资源924的需求的相应水平的分级。因此,在互连设备实施例中,本文描述的功能的实现可以分布在整个系统900内。例如,功能可以部分地在计算设备910上以及通过抽象云920的功能的平台922来实现。
应当理解,为清楚起见,参考不同的功能单元对本公开的实施例进行了描述。然而,将明显的是,在不偏离本公开的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其它功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本公开可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
将理解的是,尽管第一、第二、第三等术语在本文中可以用来描述各种设备、元件、部件或部分,但是这些设备、元件、部件或部分不应当由这些术语限制。这些术语仅用来将一个设备、元件、部件或部分与另一个设备、元件、部件或部分相区分。
尽管已经结合一些实施例描述了本公开,但是其不旨在被限于在本文中所阐述的特定形式。相反,本公开的范围仅由所附权利要求来限制。附加地,尽管单独的特征可以被包括在不同的权利要求中,但是这些可以可能地被有利地组合,并且包括在不同权利要求中不暗示特征的组合不是可行的和/或有利的。特征在权利要求中的次序不暗示特征必须以其工作的任何特定次序。此外,在权利要求中,词“包括”不排除其它元件,并且词“一”或“一个”不排除多个。权利要求中的附图标记仅作为明确的例子被提供,不应该被解释为以任何方式限制权利要求的范围。
Claims (11)
1.一种用于确定统一账号的方法,包括:
获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过;
基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;
针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图;
确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群;
为每个账号簇群中的设备标识和账号标识确定统一账号。
2.根据权利要求1所述方法,其中,所述特征数据包括多个维度的特征数据,并且所述基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类包括:
对所述多个维度的特征数据进行降维处理;
基于与所述多个标识对相关联的降维处理后的特征数据对所述多个标识对进行聚类。
3.根据权利要求1所述方法,其中,确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群,包括:
响应于所述至少一个极大连通子图中的第一极大连通子图中的设备标识和账号标识的数目小于或等于预设标识数目阈值,则将所述第一极大连通子图确定为一个账号簇群。
4.根据权利要求1所述方法,其中,确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群,包括:
响应于所述至少一个极大连通子图中的第二极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值,则:
对第二极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;
对减枝处理后的第二极大连通子图进行社区划分,以得到至少一个社区;
将所述至少一个社区中的每个社区确定为一个账号簇群。
5.根据权利要求4所述方法,其中,对第二极大连通子图进行减枝处理,包括:
根据与第二极大连通子图中每条边对应的标识对相关联的特征数据确定第二极大连通子图中的每条边的权重,所述权重表示所述每条边对应的标识对中的账号标识与设备标识的关联度;
基于第二极大连通子图中的每条边的权重,针对第二极大连通子图中的每个账号标识去除与所述每个账号标识的关联度小于预定阈值的设备标识。
6.根据权利要求1所述方法,其中,与所述多个标识对中的每个标识对相关联的特征数据包括:与所述每个标识对中的账号标识相关联的用户信息、与所述每个标识对中的设备标识关联的账号标识的数目、以及与所述每个标识对中的账号标识相关联的设备标识的数目。
7.根据权利要求1所述方法,其中,所述账号标识表示用户登录各种应用的用户名称,以及所述设备标识表示用于识别设备的识别码。
8.一种用于确定统一账号的设备,包括:
获取模块,其被配置成获取多个标识对以及与所述多个标识对中的每个标识对相关联的特征数据,每个标识对包括一对具有关联关系的设备标识和账号标识,所述关联关系表示所述账号标识在所述设备标识所识别的设备上登录过;
聚类模块,其被配置成基于与所述多个标识对相关联的特征数据对所述多个标识对进行聚类,以形成多个类;
图确定模块,其被配置成针对所述多个类中的每个类,确定以其中的设备标识和账号标识为顶点、以其中的标识对对应顶点间的边而形成的连接图;
簇群确定模块,其被配置成确定所述连接图中的至少一个极大连通子图并且基于所述至少一个极大连通子图确定至少一个账号簇群;
账号确定模块,其被配置成为每个账号簇群中的设备标识和账号标识确定统一账号。
9.根据权利要求8所述设备,其中,图确定模块还被配置成:响应于所述至少一个极大连通子图中的第二极大连通子图中的设备标识和账号标识的数目大于预设标识数目阈值:
对第二极大连通子图进行减枝处理,以去除与每个账号标识的关联度小于预定阈值的设备标识;
对减枝处理后的第二极大连通子图进行社区划分,以得到至少一个社区;
将所述至少一个社区中的每个社区确定为一个账号簇群。
10.一种计算设备,包括
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行如权利要求1-7中的任一项所述的方法。
11.一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行如权利要求1-7中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010669132.9A CN111701247B (zh) | 2020-07-13 | 2020-07-13 | 用于确定统一账号的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010669132.9A CN111701247B (zh) | 2020-07-13 | 2020-07-13 | 用于确定统一账号的方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111701247A true CN111701247A (zh) | 2020-09-25 |
CN111701247B CN111701247B (zh) | 2022-03-22 |
Family
ID=72546329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010669132.9A Active CN111701247B (zh) | 2020-07-13 | 2020-07-13 | 用于确定统一账号的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111701247B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112601215A (zh) * | 2020-12-01 | 2021-04-02 | 深圳市和讯华谷信息技术有限公司 | 一种设备标识统一的方法及装置 |
CN113468503A (zh) * | 2021-05-31 | 2021-10-01 | 北京达佳互联信息技术有限公司 | 标识信息的分配方法、装置及电子设备 |
CN113536252A (zh) * | 2021-07-21 | 2021-10-22 | 北京房江湖科技有限公司 | 账号识别方法和计算机可读存储介质 |
CN113971568A (zh) * | 2021-09-09 | 2022-01-25 | 北京达佳互联信息技术有限公司 | 一种账号识别方法、装置、电子设备及存储介质 |
CN116362737A (zh) * | 2023-05-29 | 2023-06-30 | 杭州数云信息技术有限公司 | 账号聚类方法及装置、计算机可读存储介质、终端 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927307A (zh) * | 2013-01-11 | 2014-07-16 | 阿里巴巴集团控股有限公司 | 一种识别网站用户的方法和装置 |
CN107193894A (zh) * | 2017-05-05 | 2017-09-22 | 北京小度信息科技有限公司 | 数据处理方法、个体识别方法及相关装置 |
CN108829769A (zh) * | 2018-05-29 | 2018-11-16 | 阿里巴巴集团控股有限公司 | 一种可疑群组发现方法和装置 |
CN110287688A (zh) * | 2019-06-28 | 2019-09-27 | 京东数字科技控股有限公司 | 关联账号分析方法、装置和计算机可读存储介质 |
CN110362603A (zh) * | 2018-04-04 | 2019-10-22 | 北京京东尚科信息技术有限公司 | 一种特征冗余性分析方法、特征选择方法和相关装置 |
CN110598124A (zh) * | 2019-08-14 | 2019-12-20 | 平安科技(深圳)有限公司 | 数值属性挖掘方法、装置、计算机设备和存储介质 |
CN110688593A (zh) * | 2019-08-30 | 2020-01-14 | 安徽芃睿科技有限公司 | 一种社交媒体账号识别方法及系统 |
CN110688540A (zh) * | 2019-10-08 | 2020-01-14 | 腾讯科技(深圳)有限公司 | 一种作弊账户筛选方法、装置、设备及介质 |
CN111339317A (zh) * | 2020-02-27 | 2020-06-26 | 平安银行股份有限公司 | 用户注册识别方法、装置、计算机设备和存储介质 |
-
2020
- 2020-07-13 CN CN202010669132.9A patent/CN111701247B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927307A (zh) * | 2013-01-11 | 2014-07-16 | 阿里巴巴集团控股有限公司 | 一种识别网站用户的方法和装置 |
CN107193894A (zh) * | 2017-05-05 | 2017-09-22 | 北京小度信息科技有限公司 | 数据处理方法、个体识别方法及相关装置 |
CN110362603A (zh) * | 2018-04-04 | 2019-10-22 | 北京京东尚科信息技术有限公司 | 一种特征冗余性分析方法、特征选择方法和相关装置 |
CN108829769A (zh) * | 2018-05-29 | 2018-11-16 | 阿里巴巴集团控股有限公司 | 一种可疑群组发现方法和装置 |
CN110287688A (zh) * | 2019-06-28 | 2019-09-27 | 京东数字科技控股有限公司 | 关联账号分析方法、装置和计算机可读存储介质 |
CN110598124A (zh) * | 2019-08-14 | 2019-12-20 | 平安科技(深圳)有限公司 | 数值属性挖掘方法、装置、计算机设备和存储介质 |
CN110688593A (zh) * | 2019-08-30 | 2020-01-14 | 安徽芃睿科技有限公司 | 一种社交媒体账号识别方法及系统 |
CN110688540A (zh) * | 2019-10-08 | 2020-01-14 | 腾讯科技(深圳)有限公司 | 一种作弊账户筛选方法、装置、设备及介质 |
CN111339317A (zh) * | 2020-02-27 | 2020-06-26 | 平安银行股份有限公司 | 用户注册识别方法、装置、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
夏克俭等: "《数据结构》", 28 February 2007 * |
杨秀璋、颜娜: "《Python 网络数据爬取及分析从入门到精通 分析篇》", 30 June 2018 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112601215A (zh) * | 2020-12-01 | 2021-04-02 | 深圳市和讯华谷信息技术有限公司 | 一种设备标识统一的方法及装置 |
CN113468503A (zh) * | 2021-05-31 | 2021-10-01 | 北京达佳互联信息技术有限公司 | 标识信息的分配方法、装置及电子设备 |
CN113468503B (zh) * | 2021-05-31 | 2024-02-06 | 北京达佳互联信息技术有限公司 | 标识信息的分配方法、装置及电子设备 |
CN113536252A (zh) * | 2021-07-21 | 2021-10-22 | 北京房江湖科技有限公司 | 账号识别方法和计算机可读存储介质 |
CN113536252B (zh) * | 2021-07-21 | 2022-08-09 | 贝壳找房(北京)科技有限公司 | 账号识别方法和计算机可读存储介质 |
CN113971568A (zh) * | 2021-09-09 | 2022-01-25 | 北京达佳互联信息技术有限公司 | 一种账号识别方法、装置、电子设备及存储介质 |
CN116362737A (zh) * | 2023-05-29 | 2023-06-30 | 杭州数云信息技术有限公司 | 账号聚类方法及装置、计算机可读存储介质、终端 |
CN116362737B (zh) * | 2023-05-29 | 2023-10-13 | 杭州数云信息技术有限公司 | 账号聚类方法及装置、计算机可读存储介质、终端 |
Also Published As
Publication number | Publication date |
---|---|
CN111701247B (zh) | 2022-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111701247B (zh) | 用于确定统一账号的方法和设备 | |
CN111612041B (zh) | 异常用户识别方法及装置、存储介质、电子设备 | |
CN109697451B (zh) | 相似图像聚类方法及装置、存储介质、电子设备 | |
CN111667022A (zh) | 用户数据处理方法、装置、计算机设备和存储介质 | |
CN111325245B (zh) | 重复图像识别方法、装置、电子设备及计算机可读存储介质 | |
CN112231592B (zh) | 基于图的网络社团发现方法、装置、设备以及存储介质 | |
US11714921B2 (en) | Image processing method with ash code on local feature vectors, image processing device and storage medium | |
CN109145162B (zh) | 用于确定数据相似度的方法、设备和计算机可读存储介质 | |
US20200118033A1 (en) | Method for approximate k-nearest-neighbor search on parallel hardware accelerators | |
Zhu et al. | Weighting scheme for image retrieval based on bag‐of‐visual‐words | |
CN115293919B (zh) | 面向社交网络分布外泛化的图神经网络预测方法及系统 | |
Li et al. | Automatic fast double KNN classification algorithm based on ACC and hierarchical clustering for big data | |
CN109783805B (zh) | 一种网络社区用户识别方法、装置和可读存储介质 | |
CN113656699B (zh) | 用户特征向量确定方法、相关设备及介质 | |
CN114387650A (zh) | 聚类及模型训练方法和装置、设备及存储介质 | |
CN114329109A (zh) | 基于弱监督哈希学习的多模态检索方法及系统 | |
TW202217597A (zh) | 圖像的增量聚類方法、電子設備、電腦儲存介質 | |
CN114861746A (zh) | 基于大数据的反欺诈识别方法、装置及相关设备 | |
CN115795000A (zh) | 基于联合相似度算法对比的围标识别方法和装置 | |
WO2021143016A1 (zh) | 近似数据处理方法、装置、介质及电子设备 | |
CN110866249A (zh) | 一种动态检测恶意代码的方法、装置及电子设备 | |
CN118097293A (zh) | 基于残差图卷积网络和自注意力的小样本数据分类方法及系统 | |
CN116738009B (zh) | 一种对数据进行归档回溯的方法 | |
CN107944045B (zh) | 基于t分布哈希的图像检索方法及系统 | |
CN113807370A (zh) | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40028966 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |