(58)【調査した分野】(Int.Cl.,DB名)
前記ターゲットソーシャルグループ内のソーシャルアカウントのあらかじめ設定された情報を解析し、前記ソーシャルアカウントに対応するユーザの第1の識別情報を取得する前記ステップは、前記電子デバイスが、
前記ターゲットソーシャルグループ内の各ソーシャルアカウントのリマーク情報を抽出するステップであって、前記リマーク情報が、前記ユーザの識別をマーク付けするために使用される情報である、ステップと、
前記リマーク情報から前記第1の識別情報を抽出するステップと
を実行する、請求項1に記載の方法。
ターゲットオブジェクトの属性情報を使用することによって、前記ターゲットオブジェクトが存在するターゲットソーシャルグループを特定するように構成された特定ユニットと、
前記ターゲットソーシャルグループ内のソーシャルアカウントのあらかじめ設定された情報を解析し、前記ソーシャルアカウントに対応するユーザの第1の識別情報を取得するように構成された解析ユニットと、
前記第1の識別情報を前記ターゲットオブジェクトの第2の識別情報とマッチングするように構成されたマッチングユニットと、
前記第2の識別情報にマッチングする前記第1の識別情報のソーシャルアカウントを前記ターゲットオブジェクトのソーシャルアカウントとして決定するように構成された決定ユニットと
を備える、サーバ。
前記特定ユニットが、候補のソーシャルグループのグループ属性を前記属性情報とマッチングすることと、前記属性情報とマッチングするグループ属性を有するソーシャルグループを前記ターゲットソーシャルグループとして選択することとを行うように構成される、請求項9に記載のサーバ。
前記確立ユニットが、少なくとも前記2つのソーシャルグループを備えるコミュニティネットワークを確立することであって、前記ソーシャルグループが、前記コミュニティネットワークにおけるノードであり、第1のノードと第2のノードが同じソーシャルアカウントを含む場合、有向エッジが前記第1のノードと前記第2のノードとの間に配置され、前記有向エッジのエッジ重みが、第1の値と第2の値との比に等しく、前記第1の値が、前記第1のノードと前記第2のノードの両方に含まれる同じソーシャルアカウントの数であり、前記第2の値が、前記第2のノードに含まれるソーシャルアカウントのデータである、確立することと、前記コミュニティネットワークをトラバースし、各ノードをターゲットノードとして使用し、前記ターゲットノードの隣接ノードのノードラベルと、対応する入次数エッジの入次数エッジ重みを収集することであって、前記入次数エッジ重みが前記隣接ノードから前記ターゲットノードへ向かう方向の有向エッジのエッジ重みであり、前記ターゲットノードが前記コミュニティネットワーク内のノードであり、前記ノードラベルの初期値が前記対応するノードのノード識別子である、収集することと、同じノードラベルに対応する前記入次数エッジ重みを追加することと、前記ターゲットノードのノードラベルを、最大入次数エッジ重みに対応するノードラベルに置き換えることと、前記コミュニティネットワークをトラバースした後、同じノードラベルを有するソーシャルグループをグループコミュニティに分類することとを行うように構成される、請求項11に記載のサーバ。
前記解析ユニットが、前記ターゲットソーシャルグループ内の各ソーシャルアカウントのリマーク情報を抽出することであって、前記リマーク情報が、前記ユーザの識別をマーク付けするために使用される情報である、抽出することと、前記リマーク情報から前記第1の識別情報を抽出することとを行うように構成される、請求項9に記載のサーバ。
前記決定ユニットが、複数の前記ターゲットオブジェクトが存在し、前記ターゲットオブジェクトが相互に関連付けられている場合、ソーシャルアカウントが決定された前記ターゲットオブジェクトの友人アカウントを抽出することと、前記友人アカウントの前記あらかじめ設定された情報を解析することと、前記第1の識別情報とマッチングされる前記第2の識別情報を取得することとを行うように構成される、請求項9に記載のサーバ。
コンピュータ実行可能命令が記憶されたコンピュータ記憶媒体であって、前記コンピュータ実行可能命令が、請求項1から8のいずれか一項に記載の、ターゲットオブジェクトのソーシャルアカウントをマイニングするための方法のうちの少なくとも1つを実行するために使用されるコンピュータ記憶媒体。
【発明を実施するための形態】
【0011】
以下に、添付の図面および特定の実施形態を参照して、本開示の技術的解決策をさらに説明する。以下に記載される好ましい実施形態は、本開示の例示および説明のためのものにすぎず、本開示を限定するものではないことを理解されたい。
【0012】
図1に示されるように、一実施形態は、以下を含むターゲットオブジェクトのソーシャルアカウントをマイニングするための方法を提供する。
【0013】
ステップS110:ターゲットオブジェクトの属性情報を使用することによって、前記ターゲットオブジェクトが存在するターゲットソーシャルグループを特定する。
【0014】
ステップS120:ターゲットソーシャルグループ内のソーシャルアカウントのあらかじめ設定された情報を解析し、ソーシャルアカウントに対応するユーザの第1の識別情報を取得する。
【0015】
ステップS130:第1の識別情報をターゲットオブジェクトの第2の識別情報とマッチングする。
【0016】
ステップS140:第2の識別情報にマッチングする第1の識別情報のソーシャルアカウントをターゲットオブジェクトのソーシャルアカウントとして決定する。
【0017】
この実施形態において提供されるターゲットオブジェクトのソーシャルアカウントをマイニングするための方法は、情報処理機能を有する様々な電子デバイスに適用され得る。具体的には、分散コンピュータネットワークに適用される場合、本方法は複数のデバイスによって実行され得る。
【0018】
この実施形態におけるターゲットオブジェクトは、ターゲットユーザであり得る。ソーシャルグループは、ソーシャル機能を有する様々な仮想組織であり得、通常は少なくとも2人のメンバーを含む。ソーシャルグループは、WeChatグループおよびQQグループなどの様々なグループを含み得る。
【0019】
ターゲットオブジェクトの属性情報は、識別情報、職業情報、および年齢情報などの様々な特徴情報を含み得る。ステップS110において、ターゲットオブジェクトの相対的に一意的な属性情報、たとえば、ターゲットオブジェクトを他のユーザと一意に区別するために使用され得る属性情報が通常選択される。たとえば、ターゲットオブジェクトが、ある企業Yの創業者Bさんである場合、「企業Y」または「企業Yの上級管理職」などのキーワード、あるいは「Bさん」、または「企業Yの創業者」などの用語さえも、ターゲットソーシャルグループを決定するためにBさんの属性情報として使用され得る。たとえば、「企業Yの上級管理職」がターゲットオブジェクトの情報である場合、情報のマッチングにより、名前または名前リマーク(name remark)が「企業Yの上級管理職」であるソーシャルグループが見つけられ、ターゲットソーシャルグループとして使用され得る。この場合、通常、ターゲットオブジェクトのソーシャルアカウントがターゲットソーシャルグループ内にある確率は比較的高い。
【0020】
ステップS120において、ターゲットソーシャルグループにおけるソーシャルアカウントのあらかじめ設定された情報が解析される。ここで、あらかじめ設定された情報は、グループニックネームおよびソーシャルアカウントなどの情報を含み得る。ソーシャルプロセスの間の認識を容易にするために、通常、ネットワーク名を使用することによってのみソーシャルアクティビティを実行する代わりに、日常生活で使用される名前などの識別情報を様々なリマーク情報に追加するユーザもいる。たとえば、Li Naはあるグループのニックネームフィールドに存在する。Li Naは、ユーザの日常生活に使用される名称であり、またはユーザのIDカードまたはパスポートに使用される名称でもあり得る。第1の識別情報は、ユーザのオフライン名称を含み得る。オフライン名称は、たとえば「Li Na」のように姓および名前を含んでもよく、「北京大学の学長」のような職名を含んでもよい。すべての情報は第1の識別情報であってもよく、ユーザのオフライン識別を示すことができる。第2の識別情報は、この実施形態における方法を別の電子デバイスから、またはヒューマンコンピュータインタラクションインターフェースから実行するために、電子デバイスによって受信される情報であり得る。たとえば、現在のターゲットオブジェクトが企業Yの上級管理職である場合、「企業Yの上級管理職」が検索項目として使用され、企業Yの上級管理職の名簿および対応する職種などの情報を見つけることが可能である。
【0021】
ステップS130において、ソーシャルアカウントから抽出された第1の識別情報が、第2の識別情報とマッチングされる。マッチングが成功した場合、それは対応するアカウントがターゲットオブジェクトのソーシャルアカウントである可能性が高いことを示し、したがって、ターゲットオブジェクトのソーシャルアカウントが見つかったと考えられ得る。明らかに、ターゲットオブジェクトのソーシャルアカウントはマイニングされている。ユーザのソーシャルアカウントをユーザのオフライン識別情報と組み合わせて特定するための方法は、複雑性が低く、精度が高い。
【0022】
この実施形態では、ターゲットオブジェクトのソーシャルアカウントをより適切にマイニングするために、ターゲットソーシャルグループがまず正確に特定される必要がある。以下は、ターゲットソーシャルグループを便利に、迅速に、また正確に特定するための任意の方法を提供する。
具体的には、ステップS110は、
候補のソーシャルグループのグループ属性を属性情報とマッチングするステップと、
属性情報とマッチングするグループ属性を有するソーシャルグループをターゲットソーシャルグループとして選択するステップと、
を含み得る。
【0023】
一般に、ソーシャルグループには、グループ名、グループラベルなどが設定される。グループ名またはグループラベルは、グループ属性である。グループ名などのグループ属性は、ソーシャルグループ内のソーシャルアカウントに対応するユーザの識別情報をある程度反映することができる。この実施形態では、グループ名に基づくマッチングによって直接的に、いくつかのターゲットソーシャルグループを簡便かつ迅速に見つけることができる。しかしながら、時には、ソーシャルグループのグループ名は、ソーシャルグループ内のメンバーの識別情報を望ましく反映することができない。この実施形態では、グループ名がグループ内のメンバーの識別情報を正確に反映できない場合、ターゲットオブジェクトのソーシャルアカウントをマイニングするために、以下の方法が使用される。本方法は、
グループコミュニティを確立するステップであって、グループコミュニティが、あらかじめ設定された関連度を満たす少なくとも2つのソーシャルグループを含む、ステップと、
ソーシャルグループの属性情報の情報クラスタリングを実行し、クラスタリング対象を決定し、属性情報とマッチングするターゲットクラスタリング対象を決定するステップであって、それらの間のマッチング度が、あらかじめ設定されたマッチング度を満たす、ステップと、
ターゲットクラスタリング対象とは無関係のグループコミュニティを除去し、ターゲットクラスタリング対象に関連するターゲットグループコミュニティを取得するステップであって、ターゲットグループコミュニティ内のソーシャルグループが候補のソーシャルグループである、ステップと
をさらに含む。
【0024】
ターゲットオブジェクトが複数のソーシャルグループ内にある場合、ソーシャルグループ内に同じソーシャルアカウントが存在する。この場合、ソーシャルグループは、あらかじめ設定された関連度を満たすと考えられ得る。
【0025】
この実施形態では、グループコミュニティが確立され、グループコミュニティは少なくとも2つのソーシャルグループを含む。ソーシャルグループ内のグループメンバーは、ソーシャルアカウントのユーザに対応する。
【0026】
情報クラスタリングは、グループコミュニティ内のソーシャルグループに対して実行される。情報クラスタリングは、グループ名を文書として使用して各ソーシャルグループのグループ名を抽出するステップと、クラスタリング結果を得るために潜在的ディリクレ配分法(LDA)を使用することによって対象クラスタリングを実行するステップとを含み得る。LDAは、3層構造を含む3層ベイジアン確率モデルとも呼ばれる。3つの層は、それぞれフレーズ、対象、および文書に対応する。LDAによれば、文書中の各フレーズは、「ある確率で対象が選択され、ある確率で対象からフレーズが選択される」というプロセスによって取得される。文書と対象との間の関係は多項分布に従い、対象とフレーズとの間の関係は多項分布に従う。さらに、LDAは監督されていない機械学習技術であり、大規模な文書セットまたはコーパスに隠されている対象情報を認識するために使用され得る。
【0027】
もちろん、グループコミュニティの属性情報はグループ名に限定されず、グループ内のチャット履歴、ソーシャルグループのグループ空間に記憶されたグループ文書、またはソーシャルグループ内のグループ空間に記憶されたグループ画像から抽出された情報をさらに含み得る。
【0028】
結論として、対象クラスタリングによって、複数のグループコミュニティ間の関連度が決定され得る。次に、グループコミュニティを除去するために、ターゲットオブジェクトの属性情報に従うターゲットクラスタリング対象が選択される。たとえば、複数のグループコミュニティがある。情報クラスタリングによって、あるグループコミュニティは大学Aに関連し、他のグループコミュニティは大学Bに関連していることが分かる。ターゲットオブジェクトは、大学Aの教授である。次に、ターゲットクラスタリング対象として大学Aが選択され、ターゲットグループコミュニティを取得するために大学Aとは無関係のグループコミュニティが除去される。この実施形態では、ターゲットクラスタリング対象に応じてグループコミュニティに対して除去が実行される場合、対象グループを特定するために、ターゲットクラスタリング対象とグループコミュニティのコミュニティ属性との間でファジーマッチングが実行され得る。ファジーマッチングは、ターゲットクラスタリング対象を完全には含まず、可能な限り、ターゲットオブジェクトが存在するターゲットグループコミュニティが選択されないようにするために、ターゲットクラスタリング対象の同義語などを含み得る。ターゲットグループコミュニティ内のソーシャルグループは、候補のソーシャルグループである。
【0029】
候補のソーシャルグループが選択された後、正確なマッチングによって、候補のソーシャルグループからターゲットオブジェクトの属性情報とマッチングするターゲットソーシャルグループが選択される。正確なマッチングは、通常マッチングした2つの項目間の完全マッチングを必要とし、処理の複雑さおよび計算量を低減するために、ターゲットソーシャルグループを正確に特定し、ターゲットオブジェクトが含まれていないソーシャルグループの数を減らし、後で処理する必要があるデータの量を減らすために、2つの同義語項目間のマッチングは正確なマッチングではない。ターゲットソーシャルグループを決定するステップは、ターゲットグループコミュニティとしてあらかじめ設定された回数以上正確なマッチングが成功したグループコミュニティを選択するために、ターゲットオブジェクトの属性情報と候補のグループコミュニティ内のソーシャルグループのグループ属性とを使用することによって正確なマッチングをまず実行するステップと、次いで、ターゲットグループコミュニティ内のソーシャルグループをターゲットソーシャルグループとして使用するステップとを含み得る。確かに、マッチングは、ターゲットユーザのグループ属性とターゲットグループコミュニティ内のソーシャルグループを使用することによって再度実行され得る。マッチングは、上記のファジーマッチングと組み合わせられ得る。ファジーマッチングが成功した場合、ファジーマッチングが成功したソーシャルグループがターゲットソーシャルグループである。
【0030】
確かに、上記の方法以外に、候補のソーシャルグループを決定するための方法は、ソーシャルツール内のすべてのソーシャルグループを候補のソーシャルグループとして直接考慮するステップなどを含み得る。
【0031】
ターゲットグループコミュニティが選択される前に、各独立したグループがグループコミュニティに分類される必要がある。分類は、グループ名または他のグループ情報クラスタリングによって実行され得る。以下は、高いクラスタリング精度を有する別の任意の方法を提供する。
【0032】
グループコミュニティを確立するステップは、
最初に、少なくとも2つのソーシャルグループを含むコミュニティネットワークを確立するステップであって、ソーシャルグループは、コミュニティネットワークにおけるノードであり、第1のノードと第2のノードが同じソーシャルアカウントを含む場合、有向エッジが第1のノードと第2のノードとの間に配置され、有向エッジのエッジ重みは、第1の値と第2の値との比に等しく、第1の値は、第1のノードと第2のノードの両方に含まれる同じソーシャルアカウントの数であり、第2の値は、第2のノードに含まれるソーシャルアカウントのデータである、ステップを含む。この実施形態では、有向エッジは、ある方向を有するエッジである。有向エッジは、ある方向を有するエッジである。この実施形態では、有向エッジは、あるノードから別のノードへ向かう方向のエッジである。
【0033】
図2は3つのソーシャルグループを示し、それぞれG1、G2、およびG3である。G1には5人のメンバーが含まれ、各メンバーはソーシャルアカウントに対応する。G2には4人のメンバーが含まれる。G3には6人のメンバー含まれる。
図2において、同じパターンで満たされた小さい円は、同じソーシャルアカウントを表す。したがって、
図2から分かるように、G1とG2は3つの同じソーシャルアカウントを有し、G2とG3は2つの同じソーシャルアカウントを有し、G1とG3は3つの同じソーシャルアカウントを有する。2つのソーシャルグループに含まれるソーシャルアカウントは、共有ソーシャルアカウントと呼ばれ得る。
【0034】
コミュニティは、
図2のG1、G2、およびG3を使用することによって確立される。コミュニティネットワークは、
図2の右側に示されている。コミュニティネットワークの確立のために、具体的には、たとえば、コミュニティ図を確立することによって、コミュニティネットワークが確立され得る。
【0037】
図のノード:ソーシャルグループが図のノードに対応する、
【0038】
図のエッジ:同じグループメンバーを有する2つのノード間の接続線。
【0039】
コミュニティネットワークが確立された後、エッジ重みが計算される必要がある。
【0040】
エッジ重みの計算中に、エッジ重みを取得するために、共有ソーシャルアカウントの第1の値がノードに含まれるソーシャルアカウントの第2の値と比較される。たとえば、G1からG2への有向エッジのエッジ重みは、以下の式を使用することによって計算され得る。
W
Gy→Gx=Count
com(Gy,Gx)/Count(Gx)
【0041】
W
Gy→Gxは、ソーシャルグループGyからソーシャルグループGxへのエッジ重みを表す。Count
com(Gy,Gx)は、ソーシャルグループGyとソーシャルグループGxの共有ソーシャルアカウントを表す。Count(Gx)はソーシャルグループのソーシャルアカウントである。
【0042】
したがって、
図2に示されるコミュニティ図に示されるように、G1からG2へのエッジ重みは3/4=0.75であり、G1からG3へのエッジ重みは3/6=0.5であり、G2からG1へのエッジ重みは3/5=0.6であり、G2からG3へのエッジ重みは2/6=0.33であり、G3からG1へのエッジ重みは3/5=0.6であり、G3からG2へのエッジ重みは2/4=0.5である。
【0043】
次いで、コミュニティネットワークがトラバースされ、各ノードがターゲットノードとして使用され、ターゲットノードの隣接ノードのノードラベルと、対応する入次数エッジ(indegree edge)の入次数エッジ重みが収集され、入次数エッジ重みは隣接ノードからターゲットノードへ向かう方向の有向エッジのエッジ重みであり、ターゲットノードはコミュニティネットワーク内のノードである。この実施形態では、コミュニティネットワークをトラバースすることは、毎回各ノードをターゲットノードとして使用することである。各ノードはノードラベルに対応し、ノードラベルの初期値はノードに対応するノード識別子であり得る。たとえば、G1がターゲットノードである場合、G1の入次数エッジは、それぞれがG2からG1への有向エッジおよびG3からG1への有向エッジである2つの有向エッジを含み、対応する入次数エッジ重みはそれぞれ0.5および0.6である。明らかに、G3からG1への有向エッジは、より大きなエッジ重みを有する。G1がトラバースされる第1のターゲットノードである場合、G1のノードラベルはG3のノードラベルに置き換えられる。G3のノード識別子の初期値はG3自体のノード識別子であるため、更新後はG1のノードラベルはG3のノード識別子である。
【0044】
次いで、同じノードラベルに対応する入次数エッジ重みが追加される。トラバースする前は、各ノードのノードラベルはノード自体である。いくつかのノードがトラバースされた後、ノードのノードラベルは、他のノードのノード識別子に置き換えられる。この時、ターゲットノードの有向エッジの一部は、同じノード識別子に対応し得る。したがって、同じノードラベルに対応する入次数エッジの重みが追加される必要がある。
【0045】
次に、ターゲットノードのノードラベルが、最大入次数エッジ重みに対応するノードラベルに置き換えられる。追加後、ターゲットノードのすべての有向エッジのエッジ重みと、有向エッジに対応するノードラベルが取得され、ターゲットノードのノードラベルを置き換えるために最大エッジ重みに対応するノードラベルが選択される。
【0046】
最後に、コミュニティネットワークがトラバースされた後、同じノードラベルを有するソーシャルグループがグループコミュニティに分類される。コミュニティネットワーク内のすべてのノードがトラバースされた後、ノードラベルのうちの一部または全部が更新される。この実施形態では、同じノードラベルを有するソーシャルグループは、同じグループコミュニティに分類される。明らかに、このようにして取得されたグループコミュニティ内の任意の2つのソーシャルグループは、同じソーシャルアカウントを有する。したがって、あらかじめ設定された関連度を満たすソーシャルグループは、グループコミュニティ内のソーシャルグループのうちの任意の2つが少なくとも1つの同じソーシャルアカウントを含むことを満たすことができる。
【0047】
ステップS120は、
ターゲットソーシャルグループ内の各ソーシャルアカウントのリマーク情報を抽出するステップであって、リマーク情報が、ユーザの識別をマーク付けするために使用される情報である、ステップと、
リマーク情報から第1の識別情報を抽出するステップと
を含み得る。
【0048】
図6は、WeChatソーシャルアカウントインターフェースを示す。明らかに、ソーシャルアカウントのリマーク情報内に、ソーシャルアカウントのいくつかユーザ情報がある。ユーザ情報には、ユーザの名前などの情報が含まれる。したがって、リマーク情報から第1の識別情報が抽出され得る。第1の識別情報は、ユーザの名前、ニックネームなどを含み得る。リマーク情報は、ソーシャルアカウント内のユーザの識別を示すことができる複数のフィールド内の情報に対応し得る。
【0049】
具体的には、たとえば、リマーク情報は、友人リマーク情報、グループリマーク情報、およびアカウントリマーク情報のうちの少なくとも1つを含み、友人リマーク情報は、第1のソーシャルアカウント上で第1のソーシャルアカウントの友人アカウントによって作成されたリマーク情報であり、グループリマーク情報は、ソーシャルグループ内の第1のソーシャルアカウントのリマーク情報であり、アカウントリマーク情報は、ユーザの識別に関する第1のソーシャルアカウントによって作成されたリマーク情報である。
【0050】
ソーシャルアカウントを使用する場合、ユーザはソーシャルアカウントのアカウント名を自分自身の名前またはニックネームに直接変更し得る。ソーシャルグループに参加した後、ユーザはソーシャルグループ内のグループニックネームまたはグループ名称などのリマーク情報またはラベル情報を設定し得る。ソーシャルアカウントが別のソーシャルアカウントの友人として追加された後、ソーシャルアカウントのリマーク情報は、ユーザの友人によってソーシャルアカウントのユーザのユーザ名などに直接設定され得る。したがって、この実施形態では、ステップS130においてマッチングを実行するために、情報から第1の識別情報が抽出され得る。第1の識別情報が第2の識別情報とマッチングされる場合、マッチングは直接実行され得る。この実施形態では、たとえば、名前が第1の識別情報に誤って書き込まれるのを避けるために、名前は同音異義語に書き込まれる。この実施形態では、ステップS130は第1の識別情報のアーティキュレーション情報を抽出するステップを含み得、ステップS140は第1の識別情報のアーティキュレーション情報を第2の識別情報のアーティキュレーション情報とマッチングするステップを含み得る。
【0051】
アーティキュレーション情報は、中国語のピンイン(pinyin)であり得る。この実施形態では、中国語のピンインに基づくマッチングにより、第1の識別情報と第2の識別情報とが同一の人物を表している場合でも、一部の中国語文字の誤記によりマッチングが失敗するという問題を避けることができ、マッチング成功率が向上する。
【0052】
複数のターゲットオブジェクトが存在し、ターゲットオブジェクトが相互に関連付けられている場合、本方法は、
ソーシャルアカウントが決定されたターゲットオブジェクトの友人アカウントを抽出するステップと、
友人アカウントのあらかじめ設定された情報を解析し、第1の識別情報とマッチングされる第2の識別情報を取得するステップと
をさらに含む。
【0053】
ターゲットオブジェクトは、複数のターゲットユーザに対応し得る。たとえば、ターゲットオブジェクトは企業Yの上級管理職であり、明らかに、複数のターゲットオブジェクトが存在し得る。また、複数のターゲットオブジェクトは、企業Yの上級管理職に関連付けられている。関連付け関係に基づいて、ターゲットオブジェクトは相互に友人であり得る。友人関係は、ソーシャルアカウントの友人アカウントに反映され得る。したがって、この実施形態では、ソーシャルアカウントが決定されたターゲットオブジェクトがシードされたユーザとして使用される。シードされたユーザのソーシャルアカウントの友人アカウントが抽出され、友人アカウントのあらかじめ設定された情報が再び解析される。このようにして、ターゲットオブジェクトのソーシャルアカウントの位置が拡張される。たとえば、ターゲットオブジェクトAはターゲットオブジェクトBという友人を有し、ターゲットオブジェクトBはターゲットソーシャルグループに存在しない場合がある。友人間の関係リンクを解析することにより、ターゲットオブジェクトAがシードされたユーザとして使用され、ターゲットオブジェクトBのソーシャルアカウントが特定され得、それによってターゲットオブジェクトのソーシャルアカウントを決定する成功率を高めることができる。
【0054】
図3に示されるように、一実施形態は、特定ユニット110と、解析ユニット120と、マッチングユニット130と、決定ユニット140とを含むサーバをさらに提供する。特定ユニット110は、ターゲットオブジェクトの属性情報を使用することによって、ターゲットオブジェクトが存在するターゲットソーシャルグループを特定するように構成される。解析ユニット120は、ターゲットソーシャルグループ内のソーシャルアカウントのあらかじめ設定された情報を解析し、ソーシャルアカウントに対応するユーザの第1の識別情報を取得するように構成される。マッチングユニット130は、第1の識別情報をターゲットオブジェクトの第2の識別情報とマッチングするように構成される。決定ユニット140は、第2の識別情報にマッチングする第1の識別情報のソーシャルアカウントをターゲットオブジェクトのソーシャルアカウントとして決定するように構成される。
【0055】
この実施形態では、特定ユニット110と、解析ユニット120と、マッチングユニット130と、決定ユニット140は、いずれもサーバ内の情報処理構造に対応し得る。情報処理構造は、中央処理装置(CPU)、マイクロプロセッサ(MCU)、デジタル信号プロセッサ(DSP)、プログラマブルアレイロジック(PLC)、またはアプリケーションプロセッサ(AP)などのプロセッサを含み得る。情報処理構造は、さらに、特定用途向け集積回路(ASIC)を含み得る。情報処理構造は、情報処理を行うことができる電子構造であり得る。
【0056】
この実施形態では、情報処理構造は、あらかじめ設定されたコードを実行することによって、上記のユニットの機能を実装し得る。ターゲットオブジェクトのソーシャルアカウントは、ターゲットオブジェクトのソーシャルアカウントを使用することによって情報プロモーションおよび情報マイニングなどの後続の動作を実行するために、第1の識別情報をオフラインの第2の識別情報とマッチングすることによって正確に決定される。たとえば、識別特性のために、ターゲットユーザはいくつかの情報に関心を持つかもしれない。したがって、広告リリースなどの有向情報プロモーションは、ソーシャルアカウントをマイニングすることによって実施され得る。ターゲットオブジェクトがオピニオンリーダーである場合、オピニオンリーダーによってリリース、編集、または注目された情報は、そのターゲットオブジェクトをオピニオンリーダーと見なしている別のユーザによって注目される可能性が十分にある。したがって、ソーシャルアカウントによってリリースされた情報は、正確な情報伝達を実現するためにマイニングされ、次いで、別のプラットフォームでリリースされるか、別のソーシャルアカウントにプロモーションされる。
【0057】
いくつかの実施形態では、特定ユニット110は、候補のソーシャルグループのグループ属性を属性情報とマッチングすることと、その属性情報とマッチングするグループ属性を有するソーシャルグループをターゲットソーシャルグループとして選択することとを行うように構成される。たとえば、特定ユニット110は、ターゲットユーザの属性情報を候補のソーシャルグループのグループ属性とマッチングすることによって、ターゲットソーシャルグループを選択し得る。グループ属性は、ソーシャルグループ内のグループメンバーの識別特性を反映することができるグループ名、グループリマーク、またはグループラベルなどの情報を含み得る。
【0058】
いくつかの実施形態では、サーバは、確立ユニット、クラスタリングユニット、およびフィルタリングユニットをさらに含む。確立ユニットは、グループコミュニティを確立するように構成され、グループコミュニティは、あらかじめ設定された関連度を満たす少なくとも2つのソーシャルグループを含み、クラスタリングユニットは、ソーシャルグループの属性情報の情報クラスタリングを実行することと、クラスタリング対象を決定することと、属性情報とマッチングするターゲットクラスタリング対象を決定することとを行うように構成され、それらの間のマッチング度が、あらかじめ設定されたマッチング度を満たし、フィルタリングユニットは、ターゲットクラスタリング対象とは無関係のグループコミュニティを除去することと、ターゲットクラスタリング対象に関連するターゲットグループコミュニティを取得することとを行うように構成される。ターゲットグループコミュニティ内のソーシャルグループは、候補のソーシャルグループである。この実施形態では、確立ユニット、クラスタリングユニット、およびフィルタリングユニットは、いずれも上記の情報処理構造に対応し得る。ターゲットグループコミュニティは、情報処理構造の情報処理によって特定され、ターゲットグループコミュニティ内のソーシャルグループは候補のソーシャルグループとして決定される。このようにして、明らかに、候補のソーシャルグループを選択するための範囲が大幅に減少し、それによって、後続のターゲットソーシャルグループの特定が単純化され、ターゲットオブジェクトのソーシャルアカウントを決定する効率が向上する。
【0059】
たとえば、確立ユニットは、少なくとも2つのソーシャルグループを含むコミュニティネットワークを確立することであって、ソーシャルグループは、コミュニティネットワークにおけるノードであり、第1のノードと第2のノードが同じソーシャルアカウントを含む場合、有向エッジが第1のノードと第2のノードとの間に配置され、有向エッジのエッジ重みは、第1の値と第2の値との比に等しく、第1の値は、第1のノードと第2のノードの両方に含まれる同じソーシャルアカウントの数であり、第2の値は、第2のノードに含まれるソーシャルアカウントのデータである、確立することと、コミュニティネットワークをトラバースし、各ノードをターゲットノードとして使用し、ターゲットノードの隣接ノードのノードラベルと、対応する入次数エッジの入次数エッジ重みを収集することであって、入次数エッジ重みは隣接ノードからターゲットノードへ向かう方向の有向エッジのエッジ重みであり、ターゲットノードはコミュニティネットワーク内のノードであり、ノードラベルの初期値は対応するノードのノード識別子である、収集することと、同じノードラベルに対応する入次数エッジ重みを追加することと、ターゲットノードのノードラベルを、最大入次数エッジ重みに対応するノードラベルに置き換えることと、コミュニティネットワークをトラバースした後、同じノードラベルを有するソーシャルグループをグループコミュニティに分類することとを行うように構成される。
【0060】
グループコミュニティ分類により、情報処理量を削減し、処理効率を向上させるために、ターゲットユーザの属性情報に従って、ターゲットユーザが初めて参加し得るソーシャルグループを続いて選択すると便利である。
【0061】
いくつかの実施形態では、解析ユニット120は、ターゲットソーシャルグループ内の各ソーシャルアカウントのリマーク情報を抽出することであって、リマーク情報が、ユーザの識別をマーク付けするために使用される情報である、抽出することと、リマーク情報から第1の識別情報を抽出することとを行うように構成される。この実施形態では、解析ユニット120は、識別情報を取得するために、ソーシャルアカウント内の各ソーシャルグループのリマーク情報を抽出し得る。ここで、リマーク情報は、指定されたフィールド内の情報であってもよく、指定されたタイプの情報であってもよい。指定されたフィールド内の情報内、または指定されたタイプの情報内に、ユーザによってマーク付けされたユーザ識別情報が存在し得る。したがって、第1の識別情報を取得するために情報が解析され得る。
【0062】
リマーク情報のソースによれば、リマーク情報は、友人リマーク情報、グループリマーク情報、およびアカウントリマーク情報を含み得る。したがって、リマーク情報は、友人リマーク情報、グループリマーク情報、およびアカウントリマーク情報のうちの少なくとも1つを含み、友人リマーク情報は、第1のソーシャルアカウント上で第1のソーシャルアカウントの友人アカウントによって作成されたリマーク情報であり、グループリマーク情報は、ソーシャルグループ内の第1のソーシャルアカウントのリマーク情報であり、アカウントリマーク情報は、ユーザの識別に関する第1のソーシャルアカウントによって作成されたリマーク情報である。
【0063】
ネットワーク情報は比較的非公式であり得、ユーザの名前はしばしば同音異義語に書き込まれる。この現象によって引き起こされるマッチングの失敗を回避するために、この実施形態では、解析ユニット120は、第1の識別情報のアーティキュレーション情報を抽出するように特に構成され、マッチングユニット130は、第1の識別情報の前記アーティキュレーション情報を前記第2の識別情報のアーティキュレーション情報とマッチングするように構成される。アーティキュレーション情報に基づくマッチングによって、マッチング成功率が高くなり得、それによってターゲットオブジェクトのソーシャルアカウントを決定する成功率をさらに高めることができる。
【0064】
さらに、決定ユニット140は、複数のターゲットオブジェクトが存在し、ターゲットオブジェクトが相互に関連付けられている場合、ソーシャルアカウントが決定されたターゲットオブジェクトの友人アカウントを抽出することと、友人アカウントのあらかじめ設定された情報を解析することと、第1の識別情報とマッチングされる第2の識別情報を取得することとを行うように構成される。この実施形態では、ターゲットユーザのソーシャルアカウントを特定する成功率をさらに高めるために、特定の方法は、ターゲットソーシャルグループ内のソーシャルアカウントに基づくマッチングに限定されない。その代わりに、ターゲットオブジェクトのソーシャルアカウントを決定する成功率を高めるために、決定されたソーシャルアカウントの友人関係リンクも特定のために使用される。
【0065】
図4に示されるように、本発明の実施形態は別のサーバをさらに提供する。サーバは、プロセッサ402と、記憶媒体404と、少なくとも1つの外部通信インターフェース401とを含む。プロセッサ402と、記憶媒体404と、外部通信インターフェース401とは、バス403を使用することによって接続されている。プロセッサ402は、たとえば、マイクロプロセッサ、中央処理装置、デジタル信号プロセッサ、またはプログラマブル論理アレイなどの処理機能を有する電子部品であり得る。
【0066】
記憶媒体404はコンピュータ実行可能命令を記憶する。プロセッサ402は、上記の技術的解決策のいずれかにおいて提供されるターゲットオブジェクトのソーシャルアカウントのための方法を実施するために、記憶媒体404に記憶されたコンピュータ実行可能命令を実行する。具体的には、
図1に示される方法が実行され得る。
【0067】
本発明の実施形態はさらに、コンピュータ記憶媒体を提供し、コンピュータ記憶媒体内にコンピュータ実行可能命令が記憶されており、コンピュータ実行可能命令が、ターゲットオブジェクトのソーシャルアカウントをマイニングするための上記の方法のうちの少なくとも1つを実行する、たとえば、
図1、
図2、
図5、
図11、および
図12に示される方法のうちの少なくとも1つを実行するために使用される。コンピュータ記憶媒体は、ランダム記憶媒体(RAM)、読出し専用記憶媒体(ROM)、フラッシュメモリ、または磁気テープであってもよく、任意で非一時的記憶媒体であってもよい。
【0068】
以下は、上記の実施形態のいずれかを参照していくつかの例を提供する。
【0070】
図5に示されるように、この例において、WeChatはソーシャルツールとして使用され、ターゲットオブジェクトのWeChatアカウントをマイニングするための方法が提供される。本方法は、それぞれ以下のような5つのステップを含み得る。
【0071】
ステップS1:WeChatグループコミュニティを検索し、
【0072】
ステップS2:WeChatグループコミュニティにおいてLDAサブジェクトクラスタリングを実行し、
【0073】
ステップS3:WeChatグループテキストをマイニングし、
【0074】
ステップS4:ユーザの実名のテキストをマイニングし、実名はユーザのオフラインの社会生活に使用されている名前を含み得、
【0075】
ステップS5:ターゲットオブジェクトのソーシャルアカウントを取得するために、関係リンク分散を実行する。
【0077】
ステップS11:WeChatグループコミュニティを確立し、
【0078】
ステップS12:グループコミュニティを取得するために、グループコミュニティを完全に検索する。ここで、グループコミュニティを完全に検索することは、すべてのソーシャルグループに基づいてコミュニティネットワークを形成することと、あらかじめ設定された相関度を満たす複数のソーシャルグループを含むグループコミュニティを形成するためにコミュニティネットワークを分類することとを含む。
【0080】
ステップS21:各グループコミュニティ内のすべてのグループ名を収集し、
【0081】
ステップS22:グループコミュニティを記事として使用し、収集したグループ名を記事のコンテンツとして使用することによって、LDAサブジェクトクラスタリングを実行する。
【0083】
ステップS31:対象モデルによって、対象とは無関係のグループコミュニティを除去し、
【0084】
ステップS32:マイニングする必要がある上級管理職に対応する会社名を取得し、
【0085】
ステップS33:グループコミュニティごとに、会社名をグループ名とマッチングし、
【0086】
ステップS34:グループコミュニティの場合、マッチングが4回以上成功した場合、グループコミュニティは残り、上級管理職対象を含むグループコミュニティとして使用され、
【0087】
ステップS35:グループメンバーとグループメンバーの実名を取得し、マイニングされる必要のある上級管理職と実名をマッチングし、グループメンバーをシードされた人物として使用する。
【0089】
ステップS41:ユーザの古いリマーク情報を収集し、
【0090】
ステップS42:ユーザ自身のグループリマーク情報を収集し、
【0091】
ステップS43:ユーザの実名をマイニングし、ユーザの実名は上記の第1の識別情報に対応し、ユーザのオフラインの名前、名称、タイトルなどを含み得、
【0092】
ステップS44:実名とWeChatアカウントに従ってデータをマイニングする。
【0094】
ステップS51:シードされた人物の友人とそれに対応する実名をプル(pull)し、シードされた人物は、上記の実施形態においてソーシャルアカウントがすでに決定されたターゲットオブジェクトと等しい。
【0095】
ステップS52:マイニングされた上級管理職とWeChatアカウントとの間のマッチングが完了したかどうかを決定し、マッチングが完了していない場合はステップS55を実行し、マッチングが完了した場合はステップS53を実行する。
【0096】
ステップS53:上級管理職のWeChatアカウント情報をプルする。確かに、特定の実装プロセスにおいて、ソーシャルアカウントは、QQアカウント、Facebookアカウント、またはTwitterアカウントなどのソーシャルアカウントであり得る。上級管理職のプルされたWeChatアカウント情報はWeChatアカウントを含み得、上級管理職のWeChatの友人などの他の情報をさらに含み得る。
【0097】
ステップS54:オンラインデータに基づいて、マッチングしたWeChatアカウントが正しいかどうかを決定する。
【0099】
以下では、例としてM社の最高経営責任者(CEO)の検索を使用することによって説明する。M社のCEOによって使用されるWeChatアカウントが特定されている。M社のCEOの属性情報を分析することにより、M社のCEOはターゲットユーザの役職識別情報であり、M社はインターネット企業であることが分かる。まず、インターネットの属性に基づいて、インターネットに関連付けられるWeChatグループが選択され得る。Letvを属性情報として使用することによって、Letvに関連するWeChatグループが選択される。次いで、Letv CEOのWeChatアカウントを決定するために、Letv CEOのオフライン識別情報がWeChatから抽出された識別情報とマッチングされる。たとえば、オフライン識別情報は、Letv CEOの名前Aを含み得る。この例における方法の具体的な手順は以下の通りであり得る。
【0100】
まず、M社のWeChatグループコミュニティが検索される。
【0101】
1)インターネット関連企業がWeChatグループコミュニティ対象によってフィルタリングされた後、キーワード「Letv」を含むグループ名が名前の文字によってマッチングされ、マッチングが成功した少なくとも3つのグループ名を含むグループコミュニティが選択される。ここでは、グループコミュニティのマッチングはファジーマッチングであり、マッチングの効果が
図6に示される。
【0102】
2)上級管理職対象を満たすグループコミュニティがフィルタリングされる。フィルタリングの後、残りのソーシャルグループが
図7に示されている。
図7は、
図6に示される候補のソーシャルグループに対してフィルタリングが実行された後のターゲットソーシャルグループを示す。
【0103】
次いで、リマーク情報を解析することによって、各WeChatアカウントに対応するユーザの第1の識別情報が取得される。たとえば、ユーザの基本情報が検索され、見つかった情報が確認される。
図8および
図9は、WeChatアカウントが決定された後、WeChatアカウントに従って決定された第1の識別情報を示す。
【0104】
次いで、マッチングによって会社MのCEOによって使用されるWeChatアカウントを決定するために、第1の識別情報が別の方法で取得された第2の識別情報とマッチングされる。
【0105】
図10に示されるように、Aが参加するソーシャルグループが、Aに対応するソーシャルアカウントによって決定される。
【0106】
WeChatグループコミュニティネットワークの構造:
【0108】
図のノード:WeChatグループは、図のノードに対応する、
【0109】
図のエッジ:同じグループメンバーを有する2つのグループノード、そして、
【0110】
図の有向エッジ重み:
EdgeWeight
GroupY-GroupX=CommonUserCount(GroupY,GroupX)/UserCount(GroupX)
【0111】
CommonUserCount(GroupY,GroupX)は、ソーシャルグループGroupYとソーシャルグループGroupXの共有ソーシャルアカウントの数を表す。
【0112】
UserCount(GroupX)は、ソーシャルグループGroupYのソーシャルアカウントの数を表する。
【0113】
EdgeWeight
GroupY-GroupXは、ソーシャルグループGroupYおよびソーシャルグループGroupXからの、図の有向エッジ重みである。
【0114】
上記のコミュニティネットワークの確立により、少数のメンバーを有する小さいソーシャルグループと多数のメンバーを有する大きいソーシャルグループとの間の関係が確立され得る。たとえば、100人のメンバーの部門グループと10人のメンバーのチームグループとの間に関係が確立されている場合、その10人のメンバーは100人のメンバーの部門グループにも属する。明らかに、上記のコミュニティネットワークの確立中に、10人のメンバーのチームグループのノードラベルは、100人のメンバーの部門グループの対応するノードラベルに置き換えられる。
【0115】
コミュニティ検索に関連する多くのアルゴリズムがある。簡単な計算を用いるラベル伝搬アルゴリズム(LPA)が使用され、確立は収集適用分散(GAS:gather apply scatter)法を使用することによって実行される。たとえば、コミュニティネットワークは、分散並列コンピューティングを使用することによって分類される。
【0116】
改良された分散有向
図LPAコミュニティ検索アルゴリズムは、以下を含む。
【0117】
第1に、初期化動作が実行される:各ノードのノードラベルをノード自体のノード識別子に設定する。
【0118】
第2に、ノードラベルが更新され、ノードラベルの更新は以下を含む。
【0119】
収集動作:ターゲットノードごとに、入次数隣接ノードのノード識別子と対応する入次数エッジ重みを収集する。
【0120】
適用動作:収集された隣接ノードと入次数エッジ重みを、同じノードラベルに対応する入次数エッジ重みに別々に追加し、最後に最大和に対応するノードラベルをノードのノードラベルとして選択する。同じ入次数エッジ重みが複数同時に存在する場合、ランダムに選択された入次数重みに対応するノードラベルが置き換えられる。
【0121】
分散動作:新たに計算されたノードラベルが、前回の計算によって取得されたノードラベルと異なるかどうかを決定する。変更があった場合、隣接するすべてのノードに、このノードのノードラベルが更新されたことを通知し、次回のための更新と計算を実行する。
【0122】
この例では、収集動作と分散動作が非同期的に実行され得る。収集動作中に新しい情報が受信されるたびに、適用動作および分散動作が実行され、ノードラベルの更新が再び実行される。
【0124】
第1に、ユーザのリマーク情報がピンインに変換され、次いで、確率の高い姓と名とを別々にカウントすることによってユーザの名前が最終的に決定される。ここで、ピンインは、上記のアーティキュレーション情報のうちの1つである。
【0125】
たとえば、
図11に示されるように、本方法は以下を含む。
【0126】
ステップS61:友人によって作成されたユーザのリマーク情報を収集し、
【0127】
ステップS62:ユーザのグループリマーク情報を収集し、
【0128】
ステップS63:ピンイン処理:同じピンインを有する名前を最も頻繁に使用される名前に置き換え、
【0131】
ステップS66:最も可能性が高い姓にマッチングし、
【0132】
ステップS67:実名およびWeChatアカウントに従ってデータをマイニングする。この例では、ピンイン抽出と姓のマッチングによって、書込みミスが修正され得る。最後に、マッチング成功率を高めるために、マッチングを通じて取得された姓を使用することによって、第1の識別情報と第2の識別情報とがマッチングされる。
【0134】
取得されたシードされたユーザのために、シードされたユーザのソーシャルアカウントの関係リンクがプルされ、次いで、同時に友人としてN人のシードされたユーザを追加できる候補のユーザが選択され、上記ステップにおいて取得されたマイニングされた実名情報がプルされ、次いで上級管理職の名前のマッチングが実行される。マッチングが成功した場合、対応する上級管理職は、次回の反復のためにシードされたユーザとして使用される。
【0135】
たとえば、
図12に示されるように、本方法は以下を含む。
【0136】
ステップS71:正しい上級管理職とマッチングし、次の友人分散のためにシードされた人物として正しい上級管理職を使用する。
【0137】
ステップS72:シードされた人物の友人と、対応する友人の実名をプルし、
【0138】
ステップS73:マイニングされた上級管理職のマッチングが完了したかどうかを決定し、マッチングが完了していない場合、ステップS71に戻り、マッチングが完了した場合は終了する。
【0139】
本出願において提供されるいくつかの実施形態において、開示されたデバイスおよび方法は、他の方法で実施され得ることを理解されたい。記載されたデバイスの実施形態は単なる例示である。たとえば、ユニット分割は単に論理的な機能分割であり、実際の実装時には他の分割であってもよい。たとえば、複数のユニットまたは構成要素が組み合わせられてもよく、別のシステムに統合されてもよく、一部の機能が無視されてもよく、実行されなくてもよい。さらに、表示または議論された相互結合、あるいは構成要素間の直接結合または通信接続は、いくつかのインターフェース、デバイスまたはユニット間の間接的な結合または通信接続、あるいは電気的接続、機械的接続、または他の形態の接続によって実装され得る。
【0140】
分離部分として記載されたユニットは物理的に分離されていてもよく、分離されていなくてもよい。ディスプレイユニットとして使用される部分は、物理的ユニットであってもよく、物理的ユニットでなくてもよい。すなわち、ユニットは同じ場所に配置されてもよく、多くのネットワークユニットに分散されてもよい。本実施形態の解決策の目的を実現するために、ユニットのうちの一部またはすべてが実際の要件に従って選択される必要がある。
【0141】
さらに、本発明の実施形態における機能ユニットは、すべて処理モジュールに統合されてもよく、各ユニットが別々にユニットとして使用されてもよく、または2つ以上のユニットが1つのユニットに統合されてもよい。統合されたユニットは、ハードウェアの形態で実装されてもよく、ハードウェアとソフトウェア機能ユニットの形態で実装されてもよい。
【0142】
当業者であれば、本方法の実施形態を実施するための一部またはすべてのステップが、プログラム命令に関連するハードウェアを使用することによって実施され得ることを理解することができるだろう。プログラムは、コンピュータ可読記憶媒体に記憶され得る。プログラムが実行されると、本方法の実施形態を含むステップが実行される。しかしながら、記憶媒体は、プログラムコードを記憶し得る様々なタイプの媒体、たとえば、モバイル記憶デバイス、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、または光ディスクを含む。
【0143】
上記は、本開示の特定の実装形態にすぎず、本開示の保護範囲は、これに限定されない。本開示の原理に従ってなされる変更は、本開示の保護範囲内に収まるものとする。