IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 中国▲銀▼▲聯▼股▲ふん▼有限公司の特許一覧

特表2024-545961分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体
<>
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図1
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図2
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図3
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図4
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図5
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図6
  • 特表-分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-12-16
(54)【発明の名称】分散型グラフ埋め込みに基づく連合グラフのクラスタリング方法、装置及び可読記憶媒体
(51)【国際特許分類】
   G06F 16/906 20190101AFI20241209BHJP
   G06F 16/28 20190101ALI20241209BHJP
【FI】
G06F16/906
G06F16/28
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024536251
(86)(22)【出願日】2022-09-07
(85)【翻訳文提出日】2024-06-17
(86)【国際出願番号】 CN2022117418
(87)【国際公開番号】W WO2023142490
(87)【国際公開日】2023-08-03
(31)【優先権主張番号】202210106101.1
(32)【優先日】2022-01-28
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】513278998
【氏名又は名称】中国▲銀▼▲聯▼股▲ふん▼有限公司
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】▲湯▼ ▲韜▼
(72)【発明者】
【氏名】▲陳▼ ▲イン▼
(72)【発明者】
【氏名】高 ▲鵬▼▲飛▼
(72)【発明者】
【氏名】▲パン▼ 悦
(72)【発明者】
【氏名】▲鄭▼ 建▲賓▼
(72)【発明者】
【氏名】▲劉▼ ▲紅▼宝
(72)【発明者】
【氏名】潘 ▲ジン▼
(72)【発明者】
【氏名】周 雍▲カイ▼
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FA03
5B175KA12
(57)【要約】
本発明は、分散型グラフ埋め込みに基づく連合グラフクラスタリング方法、装置及び可読記憶媒体を提供するものである。該方法は、第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成することと、第一者のデータと第二者のデータを暗号化して交集を求めて第1図と第2図における共通ノードを確定し、共通ノードに基づいて第1図と第2図を関連付けて連合グラフを得ることと、ランダムのウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定することと、連邦クラスタリング方法に基づいて連合グラフの第1図の埋め込みベクトル[PiA,PiB]と第2図の埋め込みベクトル[PiA’,PiB’]をクラスタリング分析してクラスタリング結果を得ることと、を含む。前記方法により、双方のプライバシーデータの連合グラフクラスタリングを実現することができ、より良いクラスタリング効果を得ることができる。
【特許請求の範囲】
【請求項1】
第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成することと、
前記第一者のデータと前記第二者のデータを暗号化して交集を求め、前記第1図と前記第2図における共通ノードを確定し、前記共通ノードに基づいて前記第1図と前記第2図を関連付けて連合グラフを得ることと、
ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて前記連合グラフを学習し、前記第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と前記第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定し、ここで前記PiAと前記PiA’が前記第1図の各第1図のノードの埋め込みベクトルであり、前記PiBと前記PiB’が前記第2図の各第2図のノードの埋め込みベクトルであることと、
連合クラスタリング方法に基づいて前記連合グラフの前記第1図の埋め込みベクトル[PiA,PiB]と前記第2図の埋め込みベクトル[PiA’,PiB’]に対してクラスタリング分析を行い、クラスタリング結果を得ることと、を含む分散型グラフ埋め込みに基づく連合グラフクラスタリング方法。
【請求項2】
前記第1図の埋め込みベクトル[PiA,PiB]と前記第2図の埋め込みベクトル[PiA’,PiB’]を確定することは、
前記第1の図のノードを始点ノードとして前記連合グラフにおいて複数回、ランダムにウォークし、第一者が前記第1の図におけるウォークパスに基づいて前記PiAを確定し、第二者が前記第2の図におけるマッチングウォークパスに基づいて前記PiBを確定することと、
前記第2の図のノードを始点ノードとして前記連合グラフにおいて複数回ランダムにウォークし、前記第二者が前記第2の図におけるウォークパスに基づいて前記PiB’を確定し、前記第一者が前記第1の図におけるマッチングウォークパスに基づいて前記PiA’を確定することと、を含む請求項1に記載の方法。
【請求項3】
前記共通ノードに基づいて前記第1図と前記第2図を関連付けて連合グラフを得ることは、
前記第1の図及び前記第2の図において前記共通ノードと直接又は間接的な関連関係がない孤島ノードを除去して、前記連邦図を得ることをさらに含む請求項1または請求項2に記載の方法。
【請求項4】
前記第一者のデータと前記第二者のデータは互いに隔離される請求項1から3の何れか一項に記載の方法。
【請求項5】
前記第1の図のノードは、第一者のユーザ及び/または第一者のマーチャントであり、前記第1の図の辺は、第1の図のノード間における関連関係に基づいて確定され、
前記第2の図のノードは、第二者のユーザ及び/または第二者のマーチャントであり、前記第2の図の辺は、前記第2の図のノード間における関連関係に基づいて確定される請求項1から4の何れか一項に記載の方法。
【請求項6】
前記第一者のデータと前記第二者のデータを暗号化して交集を求め、前記第1図と前記第2図における共通ノードを確定することは、
マーチャント及び/またはユーザの属性情報に基づいて、前記第1の図のネットワークと前記第2の図のネットワークにおける共通ノードを整列させることを含む請求項1から5の何れか一項に記載の方法。
【請求項7】
前記第1の図のノードを始点ノードとして前記連合グラフにおいて前記複数回ランダムにウォークし、前記第一者のデータが前記第1の図におけるウォークパスに基づいて前記PiAを確定することは、
前記ランダムのウォークステップ数Mを定義し、前記第一者が前記第1の図のノードの何れかを始点ノードとして前記第1の図においてランダムにウォークし、共通ノードの何れかにウォークすると、ウォークを停止し、第1の図のウォークステップ数Mia、ウォークした前記共通ノードの識別子Vab、及び、今回ウォークスルーした各第1の図のノードを記録することと、
X回ランダムにウォークした後、毎回ウォークした前記第1図のウォークステップ数Mia及び各第1図のノードがウォークされた頻数を統計し、各前記第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を得ることと、
各前記第1図のウォークステップ数Miaに対応する前記第1図のノード頻数行列を行列累積計算し、ランダムのウォーク回数Xで除算して、前記第1図の埋込みベクトルの第1図部分PiAを得ることと、を含む請求項2から6の何れか一項に記載の方法。
【請求項8】
前記第二者が前記第2の図におけるマッチングウォークパスに基づいて前記PiBを確定することは、
前記X回のランダムウォーク過程においてまたは後に、前記第一者がウォークした各共通ノードの識別子Vabと、対応する全ての第1の図のウォークステップ数Miaを第二者に送信することと、
前記第二者が各前記共通ノードVabから出発して前記第2の図において対応する第2の図のウォークステップ数Mibをウォークしたグラフ埋め込みベクトルPiB_Vabを確定し、ここでM=Mib+Miaであることと、
全ての前記共通ノードVabに対応するグラフ埋め込みベクトルPiB_Vabを累積し、前記X回のランダムウォークにおいて前記第2図までウォークした回数であるサブウォーク回数Xで除算して、前記第1の図の埋め込みベクトルの第2の図部分PiBを得ることと、を含む請求項7に記載の方法。
【請求項9】
各前記第1の図のウォークステップ数Miaに対応する前記第1の図のノード頻数行列は、PA_Mia=[Pan1_Mia,n1=1,2,...,Na]を含み、
ここで、前記第1の図は、Na個のノードPan1を含み、
前記Miaは、前記始点ノードから前記共通ノードまでの最小ステップ数mと合計ステップ数Mとの間の整数をとり、
前記Pa_Miaは、始点ノードからMiaステップをランダムにX回行った後、前記第1図のノードPaを通過した回数である請求項7または請求項8に記載の方法。
【請求項10】
前記PiAは、式
【数1】
により計算される請求項9に記載の方法。
【請求項11】
前記PiBは、式
【数2】
により計算して得られる請求項8に記載の方法。
【請求項12】
前記第2の図のノードを始点ノードとして前記連合グラフにおいて複数回、ランダムにウォークし、前記第二者が前記第2の図におけるウォークパスに基づいて前記PIB’を確定することは、
ランダムのウォークステップ数M’を定義し、前記第二者が前記第2の図のノードの何れかを始点ノードとして前記第2の図においてランダムにウォークし、共通ノードの何れかにウォークすると、ウォークを停止し、第2の図のウォークステップ数Mia’と、ウォークした前記共通ノードの識別子Vabと、今回ウォークスルーした各第2の図のノードと、を記録することと、
ランダムにX’回ウォークした後、毎回ウォークした前記第2図のウォークステップ数Mia’及び各第2図のノードがウォークされた頻数を統計し、各前記第2図のウォークステップ数Mia’に対応する第2図のノード頻数行列を得ることと、
各前記第2の図のウォークステップ数Mia’に対応する前記第2の図のノード頻数行列を行列累積計算し、ランダムのウォーク回数X’で除算して、前記第2の図の埋め込みベクトルの第2の図部分PIB’を得ることと、を含む請求項2から11の何れか一項に記載の方法。
【請求項13】
前記第一者が前記第1の図におけるマッチングウォークパスに基づいてPiA’を確定することは、
前記X’回のランダムウォーク過程においてまたはその後、前記第二者が、ウォークした各共通ノードの識別子Vabと、対応する全ての第2の図のウォークステップ数Mia’を第一者に送信することと、
前記第一者が各前記共通ノードVabから出発して前記第1の図において対応する(M’-Mia’)ステップをウォークしたグラフ埋め込みベクトルPiA’_Vabを確定することと、
全ての前記共通ノードVabに対応するグラフ埋め込みベクトルPiA’_Vabを累積し、前記X’回のランダムウォークの過程において前記第1図までウォークした回数であるサブウォーク回X’で除算して、前記第2の図の埋め込みベクトルの第1の図部分PiA’を得ることと、を含む請求項12に記載の方法。
【請求項14】
各前記ウォークステップ数Mia’に対応する前記第2の図のノード頻数行列は、
【数3】
を含み、
ここで、前記第2の図は、Nb個のノードPbn2を含み、
前記Mia’は、前記共通ノードから前記始点ノードまでの最小ステップ数m’と合計ステップ数M’との間の整数をとり、
前記Pb_Mia’は、始点ノードからX’回のMia’ステップをランダムにウォークした後、前記第2の図のノードPbn2を通過した回数である請求項12または13に記載の方法。
【請求項15】
前記PIB’は、式
【数4】
により計算される請求項14に記載の方法。
【請求項16】
前記PiA’は、式
【数5】
により計算して得られる請求項13に記載の方法。
【請求項17】
連合クラスタリング方法に基づいて前記連合グラフの前記第1の図の埋め込みベクトル[PiA,PiB]と前記第2の図の埋め込みベクトル[PiA’,PiB’]に対してクラスタリング分析を行うことは、
連合クラスタリング方法に基づいて、前記第1の図の埋め込みベクトルの第1の図部分PiAと前記第2の図の埋め込みベクトルの第1の図部分PiA’をクラスタリング分析して前記連合グラフの前記第1の図部分の第1のクラスタを得ることと、
連合クラスタリング方法に基づいて、前記第1図の埋め込みベクトルの第2図部分PiBと前記第2図の埋め込みベクトルの第2図部分PiB’をクラスタリング分析して前記連合グラフの前記第1図部分の第2のクラスタを得ることと、
前記第1のクラスタと前記第2のクラスタに基づいて多図面クラスタをフィルタリングしてクラスタリングレベルがより高いターゲットクラスタを得ることと、を含む請求項1から16の何れか一項に記載の方法。
【請求項18】
第一者のデータに基づいて第1図を構成し、第二者のデータに基づいて第2図を構成する構成モジュールと、
前記第一者のデータと前記第二者のデータを暗号化して交集を求めて前記第1の図と前記第2の図における共通ノードを確定し、前記共通ノードに基づいて前記第1の図と前記第2の図を関連付けて連合グラフを得るための関連モジュールと、
ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて前記連合グラフを学習し、前記第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と前記第2図から出発する前記第2図の埋め込みベクトル[PiA’,PiB’]を確定し、前記PiAと前記PiA’が、第1図の各第1図のノードの埋め込みベクトルであり、PiBとPiB’は、第2図の各第2図のノードの埋め込みベクトルである学習モジュールと、
連合クラスタリング方法に基づいて前記連合グラフの前記第1図の埋め込みベクトル[PiA,PiB]と前記第2図の埋め込みベクトル[PiA’,PiB’]のクラスタリング分析を行い、クラスタリング結果を得るためのクラスタリングモジュールと、を含む分散型グラフ埋め込みに基づく連合グラフクラスタリング装置。
【請求項19】
少なくとも1つのプロセッサと、
少なくとも1つのプロセッサと通信接続され、少なくとも1つのプロセッサが請求項1から17の何れか一項に記載の方法を実行できるように、少なくとも1つのプロセッサによって実行可能な命令が記憶されているメモリと、を含む分散型グラフ埋め込みに基づく連合グラフクラスタリング装置。
【請求項20】
マルチコアプロセッサにより実行されると、前記マルチコアプロセッサに請求項1から17の何れか一項に記載の方法を実行させるプログラムが記憶されたコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2022年1月28日に提出された、出願番号が202210106101.1で、発明の名称が「分散型グラフ埋め込みに基づく連合グラフクラスタリング方法、装置及び可読記憶媒体」である中国特許出願の優先権を主張し、この中国特許出願の開示内容は引用によって本文に組み込まれる。
【0002】
本発明は、クラスタリングの分野に属し、具体的に分散型グラフ埋め込み(Distributed Graph Embedding)に基づく連合グラフクラスタリング(Federated Graph Clustering)方法、装置及び可読記憶媒体に関するものである。
【背景技術】
【0003】
この部分は、請求の範囲に記載された本発明の実施形態に背景またはコンテキストを提供することを目的とする。ここでの説明は、この部分に含まれているからといって、先行技術であることを認めるわけではない。
【0004】
現在、連合学習技術(Federated Learning)はデータが出庫されない場合のデータの共同使用と多方データの価値のマイニングに対して高い応用潜在力があるが、それをサポートするのは、主に伝統的な機械学習の分類モデル、回帰モデルなどのアルゴリズムであり、個体の価値画像評価に集中し、潜在的なグループ行為に対するマイニングが不足している。同時に、グラフの計算は、多方データの多輪トポロジーの相互計算に関連するものであるため、プライバシー計算に基づくグラフのマイニングアルゴリズムの開発に関する研究は今では弱く、業界の成果は少ない。
したがって、プライバシーグラフ構造に基づく連合学習は早急に解決すべき問題である。
【発明の概要】
【課題を解決するための手段】
【0005】
前記従来技術に存在する問題に対して、分散型グラフ埋め込みに基づく連合グラフクラスタリング方法、装置及び可読記憶媒体が提案された。この方法、装置及びコンピュータ可読記憶媒体を利用し、前記問題を解決することができる。
【0006】
本発明により、以下の解決案が提供された。
【0007】
第1の態様では、分散型グラフ埋め込みに基づく連合グラフクラスタリング方法が提供されている。当該方法は、第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成することと、第一者のデータと第二者のデータを暗号化して交集を求め、第1図と第2図の共通ノードを確定し、共通ノードに基づいて第1図と第2図を関連付け、連合グラフを得ることと、ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の各第1図のノードの埋め込みベクトルである第1図の埋め込みベクトル[PiA,PiB]と、第2図から出発する第2図の各第2図のノードの埋め込みベクトルである第2図の埋め込みベクトル[PiA’,PiB’]を確定し、PiAとPiA’は第1図の各第1図のノードの埋め込みベクトルであり、PiBとPiB’は第2図の各第2図のノードの埋め込みベクトルであることと、連合クラスタリング方法に基づいて、連合グラフの第1図の埋め込みベクトル[PiA,PiB]と第2図の埋め込みベクトル[PiA’,PiB’]をクラスタリング分析し、クラスタリング結果を得ることと、を含む。
【0008】
一つの実施例では、第1の図の埋め込みベクトル[PiA,PiB]と第2の図の埋め込みベクトル[PiA’,PiB’]を確定することは、第1の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第一者が第1の図におけるウォークパスに基づいてPiAを確定し、第二者が第2の図におけるマッチングウォークパスに基づいてPiBを確定することと、第2の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第二者が第2の図におけるウォークパスに基づいてPiB’を確定し、第一者が第1の図におけるマッチングウォークパスに基づいてPiA’を確定することと、を含む。
【0009】
一つの実施例では、共通ノードに基づいて第1及び第2の図を関連させて連合グラフを得ることは、第1及び第2の図において共通ノードと直接的または間接的な関連関係がない孤島ノードを除去して連合グラフを得ることをさらに含む。
【0010】
一つの実施例では、第一者のデータと第二者のデータは互いに隔離されている。
【0011】
一つの実施例では、第1の図のノードは、第一者のユーザ及び/または第一者のマーチャントであり、第1の図の辺は、第1の図のノード間における関連関係に基づいて確定される。第2の図のノードは、第二者のユーザ及び/または第二者のマーチャントであり、第2の図の辺は、第2の図のノード間における関連関係に基づいて確定される。
【0012】
一つの実施例では、第一者のデータと第二者のデータを暗号化して交集を求め、第1の図ネットワーク及び第2の図ネットワークにおける共通ノードを確定することは、マーチャント及び/またはユーザの属性情報に基づいて、第1の図ネットワーク及び第2の図ネットワークにおける共通ノードを整列することを含む。
【0013】
一つの実施例では、第1の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第一者は第1の図におけるウォークパスに基づいてPiAを確定することは、ランダムのウォークステップ数Mを定義し、第一者のデータが任意の第1の図のノードを始点ノードとして第1の図においてランダムにウォークし、共通ノードの何れかにウォークすると、ウォークを停止し、第1の図のウォークステップ数Mia、ウォークした共通ノードの識別子Vab、及び、今回ウォークスルーした各第1の図のノードを記録することと、ランダムにX回ウォークした後、毎回ウォークした第1図のウォークステップ数Mia及び各第1図のノードがウォークされた頻数を統計し、各第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を得ることと、各第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を行列累積計算し、ランダムのウォーク回数Xで除算して、第1図の埋込みベクトルの第1図部分PiAを得ることと、を含む。
【0014】
一つの実施例では、第二者は、第2の図におけるマッチングウォークパスに基づいてPiBを確定することは、X回のランダムウォーク過程の中または後に、第一者がウォークした各共通ノードの識別子Vabと、対応する全ての第1の図のウォークステップ数Miaを第二者に送信することと、第二者が各共通ノードVabから出発して第2の図で対応する(M‐Mia)ステップをウォークしたグラフ埋め込みベクトルPiB_Vabを確定することと、全ての共通ノードVabに対応するグラフ埋め込みベクトルPiB_Vabを累積し、X回のランダムウォークにおいて第2図までウォークした回数であるサブウォーク回数Xで除算して、第1の図の埋め込みベクトルの第2の図部分PiBを得ることを含む。
【0015】
一つの実施例では、各第1の図のウォークステップ数Miaに対応する第1の図のノード頻数行列は、PA_Mia=[Pan1_Mia,n1=1,2,...,Na]ということを含み、ここで、第1の図が、Na個のノードPan1を含み、Miaが始点ノードから共通ノードまでの最小ステップ数mと合計ステップ数Mとの間の整数であり、Pa_Miaが始点ノードからMiaステップをランダムにX回行った後、第1図のノードPaを通過した回数である。
【0016】
一つの実施例では、PiAは、以下の式により計算される:
【0017】
【数1】
【0018】
一つの実施例では、以下の式により計算してPiBを得る:
【0019】
【数2】
【0020】
一つの実施例では、第2の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第二者は、第2の図におけるウォークパスに基づいてPIB’を確定することは、ランダムのウォークステップ数M’を定義し、第二者が第2の図のノードの何れかを始点ノードとして第2の図においてランダムにウォークし、何れかの共通ノードにウォークすると、ウォークを停止し、第2の図のウォークステップ数Mia’、ウォークした共通ノードの識別子Vab、及び、今回ウォークした各第2の図のノードを記録することと、ランダムにX’回ウォークした後、毎回ウォークした第2図のウォークステップ数Mia’及び各第2図のノードがウォークされた頻数を統計し、各第2図のウォークステップ数Mia’に対応する第2図のノード頻数行列を得ることと、各第2の図のウォークステップ数Mia’に対応する第2の図のノード頻数行列を行列累積計算し、ランダムのウォーク回数X’で除算して、第2の図の埋め込みベクトルの第2の図部分PIB’を得ることと、を含む。
【0021】
一つの実施例では、第一者は、第1の図におけるマッチングウォークパスに基づいてPiA’を確定することは、X’回のランダムウォーク過程においてまたはその後、第二者が、ウォークした各共通ノードの識別子Vabと、対応する全ての第2の図のウォークステップ数Mia’を第一者に送信することと、第一者が各共通ノードVabから出発して第1の図で対応する(M’-Mia’)ステップをウォークしたグラフ埋め込みベクトルPiA’_Vabを確定することと、全ての共通ノードVabに対応するグラフ埋め込みベクトルPiA’_Vabを累積し、サブウォーク回X’で除算して、第2の図の埋め込みベクトルの第1の図部分PiA’を得ることと、を含む。ここで、サブウォーク回数X’は、X’回のランダムウォークの過程で第1図までウォークした回数である。
【0022】
一つの実施例では、各ウォークステップ数Mia’に対応する第2の図のノード頻数行列は、
【数3】
ということを含み、ここで、第2の図がNb個のノードPbn2を含み、Mia’が共通ノードから始点ノードまでの最小ステップ数m’と合計ステップ数M’との間の整数であり、Pb_Mia’が始点ノードからX’回のMia’ステップをランダムにウォークした後、第2の図のノードPbn2を通過した回数である。
【0023】
一つの実施例では、PIB’は、以下の式により計算される:
【0024】
【数4】
【0025】
一つの実施例では、PiA’は次の式により計算して得られる:
【0026】
【数5】
【0027】
一つの実施例では、連合クラスタリング方法に基づいて、連合グラフの第1の図の埋め込みベクトル[PiA,PiB]と第2の図の埋め込みベクトル[PiA’,PiB’]に対してクラスタリング分析を行うことは、連合クラスタリング方法に基づいて、第1の図の埋め込みベクトルの第1の図部分PiAと第2の図の埋め込みベクトルの第1の図部分PiA’をクラスタリング分析し、連合グラフの第1の図部分の第1のクラスタを得ることと、連合クラスタリング方法に基づいて、第1図の埋め込みベクトルの第2図部分PiBと第2図の埋め込みベクトルの第2図部分PiB’をクラスタリング分析し、連合グラフの第1図部分の第2のクラスタを得ることと、第1のクラスタ及び第2のクラスタに基づいて多図面クラスタをフィルタリングし、スクリーニングレベルがより高いターゲットクラスタを得ることと、を含む。
【0028】
第2の態様では、第1図を第一者のデータに基づいて構成し、第2図を第二者のデータに基づいて構成する構成モジュールと、第一者のデータと第二者のデータを暗号化して交集を求め、第1の図と第2の図における共通ノードを確定し、共通ノードに基づいて第1の図と第2の図を関連付け、連合グラフを得るための関連モジュールと、ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定する学習モジュールと(PiAとPiA’は、第1図の各第1図のノードの埋め込みベクトルであり、PiBとPiB’は、第2図の各第2図のノードの埋め込みベクトルである)、連合クラスタリング方法に基づいて連合グラフの第1図の埋め込みベクトル[PiA,PiB]と第2図の埋め込みベクトル[PiA’,PiB’]のクラスタリング分析を行い、クラスタリング結果を得るためのクラスタリングモジュールと、を含む分散型グラフ埋め込みに基づく連合グラフクラスタリング装置が提供される。
【0029】
第3の態様では、少なくとも1つのプロセッサと、少なくとも1つのプロセッサと通信接続されたメモリとを含む分散型グラフ埋め込みに基づく連合グラフクラスタリング装置が提供され、ここで、メモリには、少なくとも1つのプロセッサが実行できるように、少なくとも1つのプロセッサによって実行可能な命令(第1の態様の方法など)が記憶されている。
【0030】
第4の態様では、マルチコアプロセッサにより実行されると、マルチコアプロセッサに第1の態様のような方法を実行させるプログラムが記憶されたコンピュータ可読記憶媒体が提供される。
【0031】
前記実施例の利点の1つは、分散型グラフ埋め込みアルゴリズムを利用することにより、第一者のデータと第二者のデータを互いにプライバシーデータとする条件の下で連合グラフのグラフ埋め込みベクトルを学習することができ、連合グラフのグラフ構造トポロジー(topology)特性をマトリックスに次元削減することができ、行列分析により計算の複雑度を低下させ、連合グラフ計算の効果と効率を高めることができる。
【0032】
本発明の他の利点については、以下の説明及び図面に合わせてより詳細に説明する。
【0033】
上述の説明は、本発明の技術的手段をより明確に理解することができ、よって、明細書の内容に従って実施することができるように、本発明の技術的手段の概要にすぎないことを理解されたい。本発明の前記及びその他の目的、特徴及び利点をより明確に理解しやすくするために、以下、具体的に例を挙げて本発明の具体的な実施形態を説明する。
以下の例示的な実施例の詳細な説明を読むことにより、当業者は、本明細書の優勢及び利点、並びにその他の優勢及び利点を理解するであろう。図面は、例示的な実施例を示すためにのみ使用され、本発明の限定とは考えられない。また、図面全体において、同じ部品を同じ符号で示す。
【0034】
図面において、同一または対応する符号は同一または対応する部分を示す。
【図面の簡単な説明】
【0035】
図1】本発明の一実施例による分散型グラフ埋め込みに基づく連合グラフクラスタリング装置の構成の模式図である。
図2】本発明の一実施例による分散型グラフ埋め込みに基づく連合グラフクラスタリング方法のフローの模式図である。
図3】本発明の一実施例による第1及び第2の図の模式図である。
図4】本発明の一実施例による連合グラフの模式図である。
図5】本発明の一実施例による別の連合グラフの模式図である。
図6】本発明の一実施例による分散型グラフ埋め込みに基づく連合グラフクラスタリング装置の構成の模式図である。
図7】本発明の別の実施例による分散型グラフ埋め込みに基づく連合グラフクラスタリング装置の構成の模式図である。
【発明を実施するための形態】
【0036】
以下、添付図面を参照して、本開示の例示的な実施例についてより詳細に説明する。図面には本開示の例示的な実施例が示されているが、本開示は、本明細書に記載された実施例によって制限されるべきではなく、様々な形態で実現されうることを理解すべきである。それに相反して、これらの実施例を提供することは、本開示をより完全に理解し、本開示の範囲を当業者に完全に伝えることができるようにするためである。
【0037】
本願の実施例の説明において、「含む」または「有する」などの用語は、本明細書に開示された特徴、数字、ステップ、行動、部品、部分、またはそれらの組み合わせの存在を示すことを意図し、1つまたは複数の他の特徴、数字、ステップ、行動、部品、部分またはその組み合わせの存在の可能性を排除することを意図していないことを理解されたい。
【0038】
特に断らない限り、「/」はORを意味し、例えば、A/BはAまたはBを表すことができ、本明細書における「及び/または」は、関連対象を説明する関連関係に過ぎず、3つの関係、例えば、A及び/またはBが存在し得ることを示し、Aが単独で存在し、AとBが同時に存在し、Bが単独で存在することを示すことができる。
【0039】
「第1」、「第2」という用語などは目的を説明するためのみに使用され、相対的な重要性を示したり暗示したり、示された技術的特徴の数を暗黙的に示したりするとは理解できない。したがって、「第1」、「第2」などに限定される特徴は、1つまたは複数の特徴を明示的または暗黙的に含むことができる。本願の実施例の説明において、「複数」は、特に断らない限り、2つ以上を意味する。
【0040】
本願における全てのコードは例示的であり、当業者は使用されているプログラミング言語(Programming Language)、具体的なニーズ、個人的な習慣などの要素に基づいて、本願の思想から逸脱することなく様々な変形を想到することができる。
【0041】
なお、衝突しない場合には、本発明における実施例及び実施例における特徴を互いに組み合わせてもよい。以下、図面を参照し、実施例を組み合わせて本発明を詳しく説明する。
【0042】
図1に示すように、図1は、本発明の実施例の解決手段に係るハードウェアの動作環境の構成図である。
【0043】
図1は、分散型グラフ埋め込みに基づく連合グラフクラスタリング装置のハードウェア動作環境の構成図であると説明する必要がある。本発明の実施例が分散グラフに基づいて組み込まれた連合グラフクラスタリング装置は、PCであってもよいし、携帯コンピュータなどの端末装置であってもよい。
【0044】
図1に示すように、該分散型グラフ埋め込みに基づく連合グラフクラスタリング装置は、CPUのようなプロセッサ1001と、ネットワークインタフェース1004と、ユーザインタフェース1003と、メモリ1005と、通信バス1002と、を含む。ここで、通信バス1002は、これらのコンポーネント間における接続通信を実現するために使用される。ユーザインタフェース1003は、ディスプレイ(Display)、キーボード(Keyboard)などの入力ユニットを含み、また、選択的には、ユーザインタフェース1003が、標準的な有線インタフェースと無線インタフェースを含む。ネットワークインタフェース1004は、選択的には、標準的な有線インタフェースと無線インタフェース(例えば、Wi‐Fiインタフェース)を含む。メモリ1005は、高速RAMメモリであってもよいし、安定したメモリ(non‐volatile memory)、例えば、ディスクメモリであってもよい。メモリ1005は、選択的には、前記のプロセッサ1001とは独立した記憶装置であってもよい。
【0045】
当業者は、図1に示す分散型グラフ埋め込みに基づく連合グラフクラスタリング装置の構造が分散型グラフ埋め込みに基づく連合グラフクラスタリング装置に対する限定になるものではなく、図示よりも多くまたは少ない部品、または、いくつかの部品を組み合わせたり、または、異なる部品の配置を含んでもよいことを理解することができる。
【0046】
図1に示すように、コンピュータ記憶媒体であるメモリ1005には、オペレーティングシステム、ネットワーク通信モジュール、ユーザインタフェースモジュール及び分散型グラフ埋め込みの連合グラフクラスタリングプログラムが含まれていてもよい。ここで、オペレーティングシステムは、分散型グラフ埋め込みに基づく連合グラフクラスタリング装置のハードウェア及びソフトウェアリソースを管理かつ制御するプログラムであり、分散型グラフ埋め込みに基づく連合グラフクラスタリングプログラム及びその他のソフトウェアまたはプログラムの実行をサポートするものである。
【0047】
図1に示す分散グラフに基づいて組み込まれた連合グラフクラスタリング装置において、ユーザインタフェース1003は、主に第1の端末、第2の端末及び管理端末から送信された請求や、データなどを受信するために使用されており、ネットワークインタフェース1004は、主にバックグラウンドサーバに接続してバックグラウンドサーバとデータ通信を行うために使用されており、プロセッサ1001は、メモリ1005に記憶された分散型グラフ埋め込みに基づく連合グラフクラスタリングプログラムを呼び出し、かつ以下の動作を実行するために使用されることができる。
【0048】
第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成し、第一者のデータと第二者のデータを暗号化して交集を求め、第1図と第2図における共通ノードを確定し、共通ノードに基づいて第1図と第2図を関連付け、連合グラフを得て、ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と、第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定し、ここで、PiAとPiA’は第1図の各第1図のノードの埋め込みベクトルであり、PiBとPiB’は第2図の各第2図のノードの埋め込みベクトルであり、連合クラスタリング方法に基づいて、連合グラフの第1図の埋め込みベクトル[PiA,PiB]と第2図の埋め込みベクトル[PiA’,PiB’]に対してクラスタリング分析を行い、クラスタリング結果を得る。
【0049】
これにより、分散型グラフ埋め込みアルゴリズムを利用することで、第一者のデータと第二者のデータを互いにプライバシーデータとする条件の下で連合グラフのグラフ埋め込みベクトルを学習することができ、連合グラフのグラフ構造のトポロジー特性をマトリックスにダウンさせることができ、マトリックス分析により計算の複雑度を低下させ、連合グラフ計算の効果と効率を高めることができる。
【0050】
図2は、本願の一実施例による分散型グラフ埋め込みに基づく連合グラフ計算方法のフロー概略図であり、この流れにおいて、装置の観点から言えば、実行の主体は、1つまたは複数の電子装置であってもよく、より具体的には処理モジュールであってもよい。実行の主体は、プログラムの観点から言えば、これらの電子装置に搭載されたプログラムであってもよい。本実施例では、方法の実行の主体は、図1に示す実施例におけるプロセッサであってもよい。
【0051】
図2に示すように、本実施例によって提供される方法は、202a、第一者のデータに基づいて第1の図を構成するというステップと、202b、第二者のデータに基づいて第2の図を構成するというステップと、を含む。
【0052】
第一者のデータと第二者のデータは、それぞれ第一者のプライバシーデータと第二者のプライバシーデータであり、さらに、第一者は、該第一者のデータに基づいて第1の図を構成し、第二者は該第二者のデータに基づいて第2の図を構成すると理解できる。
【0053】
図3を参照すると、実際のタスク(task)に基づいて図のエンティティノードと辺との関係を定義し、両方が所有するデータでの第1の図Aと第2の図Bをそれぞれ構成することができる。
【0054】
いくつかの実施例では、第1の図のノードは、第一者のユーザ及び/または第一者のマーチャント(merchant)であり、第1の図の辺は第1の図のノード間における関連関係に基づいて確定され、第2の図のノードは、第二者のユーザ及び/または第二者のマーチャントであり、第2の図の辺は、第2の図のノード間における関連関係に基づいて確定される。例えば、前記関連関係は、ユーザとマーチャントとの取引関係であってもよいし、ユーザとユーザとの振替関係であってもよいし、マーチャントとマーチャントとの振替関係などの任意のノード間における関連関係であってもよい。
【0055】
204、第一者のデータと第二者のデータを暗号化して交集を求め、第1図と第2図における共通ノードを確定し、共通ノードに基づいて第1図と第2図を関連付け、連合グラフを得る。
【0056】
第1の図と第2の図における共通ノードを探すことによって、第1の図と第2の図との関連付けを確立することができ、ここで、共通ノードは、第1の図と第2の図において共通に存在する同じエンティティノード、例えば、同じユーザ、または同じマーチャントなどである。
【0057】
図4を参照すると、第1の図AのVAB1と第2の図のVAB1は共通ノードであり、第1の図AのVAB2と第2の図のVAB2は共通ノードであると仮定し、これにより、第1の図Aと第2の図Bを関連付けて連合グラフを形成することができる。
【0058】
いくつかの実施例では、マーチャント及び/またはユーザの属性情報に基づいて第1の図ネットワーク及び第2の図ネットワークにおける共通ノードを整列してもよい。例えば、携帯電話番号やメールアドレスなどのユーザ属性情報から、同一ユーザに対応する共通ノードを確定することができる。
【0059】
いくつかの実施例では、第1の図と第2の図を関連付けた後、第1の図と第2の図における共通ノードと直接的または間接的な関連関係がない孤島ノードを除去して連合グラフを得ることもできる。
【0060】
図4を参照すると、上述の孤島ノードは、第1の図と第2の図にまたがる連合訓練を行うことができないため、第1の図Aと第2の図Bにおける孤島ノードを除去してフィルタリングすることにより、両方の図を計算するための連合グラフを形成することができる。
【0061】
206、ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と、第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定する。
【0062】
PiA及びPiA’は第1図の各第1図のノードの埋め込みベクトルであり、PiB及びPiB’は第2図の各第2図のノードの埋め込みベクトルである。
【0063】
グラフ埋め込み(graph embedding)は、図ノード(高次元のベクトル)を低次元のベクトルにマッピングする方法であり、これによって、各ノードの唯一性の表示を得て、そのベクトルにより推薦、分類、予測などのタスクを実現する。ランダムウォーク(random walk)に基づくグラフ埋め込みアルゴリズムは、まず、ランダムウォークアルゴリズムを用いて図におけるノードを複数回サンプリングし、いくつかのノードシーケンスを得た後、そのノードシーケンスに基づいて図における各ノードのベクトル表示を生成し、グラフ埋め込みベクトルを得る。具体的には、本実施例では、第1の図の埋め込みベクトル[PiA,PiB]は、第1の図部分PiAと第2の図部分PiBとを含むので、第1の図部分PiAが第一者により第1の図においてサンプリングすることによって獲得するものであり、第2の図部分PiBが第二者により第2の図においてサンプリングすることによって獲得するものであるので、第1の図部分と第2の図部分をそれぞれ獲得するために、分散型グラフ埋め込みアルゴリズムを用いて、前記グラフ埋め込み方法を第1の図と第2の図に分布する必要がある。
【0064】
まず、グラフ埋め込みにおける各ノードのランダムなウォークステップ数をMステップとして定義する。各第1の図のノードについて、Mステップをランダムにウォークすると、第1の図から共通ノードを通って第2の図にウォークする可能性があり、第1の図AにおいてMiaステップをウォークし、第2の図Bにおいて(M‐Mia)ステップをウォークすることになる。例えば、図5を参照すると、ノード1から出発すると仮定すると、M=4ステップをウォークし、ノード1‐2‐5‐6‐7を経て、第1の図Aにおいて、2ステップをウォークし、即ち1‐2‐5であり、第2図Bにおいて2ステップをウォークし、即ち5‐6‐7である。
【0065】
いくつかの実施例では、前記204は、第1の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第一者が第1の図におけるウォークパスに基づいてPiAを確定し、第二者が第2の図におけるマッチングウォークパスに基づいてPiBを確定し、第2の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第二者が第2の図におけるウォークパスに基づいてPiB’を確定し、第一者が第1の図におけるマッチングウォークパスに基づいてPiA’を確定することをさらに含む。
【0066】
前記第2の図におけるマッチングウォークパスは、第1の図と第2の図との間における共通ノードから出発し、第2の図で複数回ランダムにウォークした後に獲得するものである。
【0067】
前記第1の図におけるマッチングウォークパスは、第1の図と第2の図との間における共通ノードから出発し、第1の図において複数回ランダムにウォークした後に獲得するものである。
【0068】
連合グラフでは、第2の図のランダムウォークパスは第一者には分からないため、同様に、第二者にも第1の図のランダムウォークパスは分からない。したがって、第1の図のノードから出発してランダムにウォークする場合には、第一者が第1の図の埋め込みベクトルのPiA部分を取得し、第二者が第一者から送られてきた残りのウォークタスクに対してマッチングにより該第1の埋め込みベクトルのPiB部分を取得することができる。同様に、第2の図のノードから出発してランダムにウォークする場合には、第二者が第2の図の埋め込みベクトルのPiB’部分を取得し、第一者が第二者から送られてきた残りのウォークタスクに対してマッチングにより第2の図の埋め込みベクトルのPiA’部分を取得することができる。
【0069】
いくつかの実施例では、第1の図の埋め込みベクトルの第1の図部分PiAを確定することは、
ランダムのウォークステップ数Mをランダムに定義し、第一者は第1図のノードの何れかを起点ノートとして第1図においてランダムにウォークし、共通ノードの何れかまでウォークすると、ウォークを停止し、第1図のウォークステップ数Miaと、ウォークした共通ノードの識別子Vabと、今回ウォークした各第1図のノードと、を記録することを含む。
【0070】
ランダムにX回ウォークした後、毎回ウォークした第1図のウォークステップ数Miaと各第1図のノードがウォークされた頻数を統計し、各第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を取得する。
【0071】
各第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を行列累積計算し、ランダムのウォーク回数Xで除算して、第1図の埋込みベクトルの第1図部分PiAを取得する。
【0072】
具体的には、各第1図のウォークステップ数Miaに対応する第1図のノード頻数行列を取得することは、
1回ウォークして共通ノードに到達すると、
Mia=1、頻数行列がPA_1=[Pa_1,Pa_1,Pa_1,Pa_1,…,PaNa_1]であることと、
2回ウォークして共通ノードに到達することと、
Mia=2、頻数行列がPA_2=[Pa_2,Pa_2,Pa_2,Pa_2,…,PaNa_2]であること、

M回ウォークして共通ノードに到達することと、
Mia=M、頻数行列がPA_M=[Pa_M,Pa_M,Pa_M,Pa_M,…,PaNa_M]であることと、を含む。
【0073】
以上のように、第1の図から出発して共通ノードVabまでMiaステップをウォークした頻数行列PA_Miaが得られる。ここで、Miaは、開始ノードから共通ノードまでの最小ステップ数mと合計ステップ数Mとの間の整数であり、
【数6】
である。
【0074】
ここで、第1の図は、Na個のノードPan1を含み、Miaが始点ノードから共通ノードまでの最小ステップ数mと合計ステップ数Mとの間の整数であり、Pa_Miaが始点ノードからMiaステップをランダムにX回行った後、第1図のノードPaを通過した回数である。
【0075】
さらに、第1の埋め込みベクトルの第1の図部分PiAは、以下の式により計算することができる:
【0076】
【数7】
【0077】
いくつかの実施例では、第1の図の埋め込みベクトルの第2の図部分PiBを確定することは、
X回のランダムウォーク過程においてまたはその後、第一者は、ウォークした各共通ノードの識別子Vabと、対応する全ての第1図のウォークステップ数Miaを第二者に送信する。たとえば、第二者は、第一者からの複数の(Vab、残りの第2図のウォークステップ数Mib=M‐Mia)の組み合わせを受信することを含む。
【0078】
さらに、第二者は、各共通ノードVabから出発して第二者において対応するMib=(M‐Mia)ステップをウォークしたグラフ埋め込みベクトルPiB_Vabを確定する。
【0079】
例えば、第1図Aにおいて共通ノードVabまでMiaステップをウォークした後、第2図において共通ノードVabをウォーク起点としてMibステップをウォークし続け、頻数行列は
【数8】
である。さらに、各共通ノードVabを複数の第2図に対応させてステップ数Mibをウォークした頻数行列を、行列積算してから、PiB_Vabを得る。
【0080】
上述した共通ノードVabに対応するグラフ埋め込みベクトルPiB_Vabを第2の図から予め計算しておくことも理解できる。
【0081】
さらに、全ての共通ノードVabに対応するグラフ埋め込みベクトルPiB_Vabを積算し、サブウォーク回数Xで除算して、第1の図の埋め込みベクトルの第2の図部分PiBを得る。
【0082】
例えば、PiBは、
【数9】
という式により計算できる。
【0083】
ここで、サブウォーク回数Xとは、X回のランダムウォーク過程において第2図までウォークした回数である。
【0084】
同様に、第2の図のノードを始点ノードとして連合グラフにおいて複数回ランダムにウォークし、第2の図におけるウォークパスに基づいてPiB’を第二者により確定させ、第1の図におけるマッチングウォークパスからPiA’を第一者により確定させ、前記第2の図の埋め込みベクトル[PiA’,PiB’]を得ることができる。
【0085】
具体的には、ランダムのウォークステップ数M’を定義することができ、第二者は第2図のノードの何れかを起点ノートとして第2図においてランダムウォークを行い、共通ノードの何れかにウォークしたと、ウォークを停止し、第2図におけるウォークステップ数Mia’と、ウォークした共通ノードの識別子Vabと、今回ウォークした各第2図のノードとを記録し、ランダムにX’回ウォークした後、毎回ウォークした第2図におけるウォークステップ数Mia’及び各第2図のノードがウォークされた頻数を統計し、各第2図のウォークステップ数Mia’に対応する第2図のノード頻数行列を得て、各第2の図のウォークステップ数Mia’に対応する第2の図ノード頻数行列を行列累積計算し、ランダムのウォーク回数X’で除算して、第2の図の埋め込みベクトルの第2の図部分PIB’を得る。
【0086】
いくつかの実施例では、第一者は、第1の図におけるマッチングウォークパスに基づいてPiA’を確定することは、
X’回のランダムウォーク過程においてまたはその後、第二者は、ウォークした各共通ノードの識別子Vabと、対応する全ての第2図におけるウォークステップ数Mia’を第一者に送信することと、
第一者が各共通ノードVabから出発して第1の図において対応する(M’‐Mia’)ステップをウォークしたグラフ埋め込みベクトルPiA’_Vabを確定することと、
全ての共通ノードVabに対応するグラフ埋め込みベクトルPiA’_Vabを累積し、サブウォーク回数X’を除算して、第2の図の埋め込みベクトルの第1の図部分PiA’を得ることと、を含む。
【0087】
ここで、サブウォーク回数X’は、X’回のランダムウォーク過程において第1図までウォークした回数を指す。
【0088】
いくつかの実施例では、各ウォークステップ数Mia’に対応する第2の図のノード頻数行列は、
【数10】
である。
【0089】
ここで、第2の図は、Nb個のノードPbn2を含み、Mia’が始点ノードから共通ノードまでの最小ステップ数m’と合計ステップ数M’との間の整数をとり、Pb_Mia’が始点ノードからX’回のMia’ステップをランダムにウォークした後、第2の図のノードPbn2を通過した回数である。
【0090】
いくつかの実施例では、PIB’は、以下の式により計算される:
【0091】
【数11】
【0092】
いくつかの実施例では、PIA’は、以下の式により計算して得られる:
【0093】
【数12】
【0094】
208、連合クラスタリング方法に基づいて、連合グラフの第1図の埋め込みベクトル[PiA,PiB]と第2図の埋め込みベクトル[PiA’,PiB’]をクラスタリング分析してクラスタリング結果を得る。
【0095】
いくつかの実施例では、前記205は、連合クラスタリング方法に基づいて、第1の図の埋め込みベクトルの第1の図の部分PiAと第2の図の埋め込みベクトルの第1の図の部分PiA’をクラスタリング分析して連合グラフの第1の図の部分の第1のクラスタ(cluster)を得ることと、連合クラスタリング方法に基づいて、第1図の埋め込みベクトルの第2図部分PiBと第2図の埋め込みベクトルの第2図部分PiB’をクラスタリング分析して連合グラフの第1図部分の第2クラスタを得ることと、第1クラスタ及び第2クラスタに基づいて多図面クラスタをスクリーニングしてクラスタレベルがより高いターゲットクラスタを得ることとを、さらに含む。
【0096】
一つの例では、本願の実施例は、支払機関間における取引詐欺などのシーンにまたがるリスクグループの識別に使用することができ、支払プラットフォームAのとある支払アプリケーションでの取引ユーザの詐欺ユーザをマイニングすることを例として、現在、一方の支払チャネルのマーチャントが利益を取引し、マネーロンダリングした後に他方の支払チャネル下で取引を振替する詐欺グループリスクが存在し、以下のステップにより取引詐欺の関連付けを実現する:
【0097】
1、第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成すること。
【0098】
例えば、支払いプラットフォームAと、マーチャントと、ユーザとの間の振替取引は第1の図を形成し、支払いプラットフォームBのユーザと、マーチャントと、ユーザとの間の振替取引は第2の図を形成し、そのエンティティはユーザとマーチャントノードであり、関係はユーザ間における振替関係及びユーザとマーチャントの取引支払い関係である。
【0099】
2、第一者のデータと第二者のデータを暗号化して交集を求め、第1図と第2図における共通ノードを確定し、共通ノードに基づいて第1図と第2図を関連付け、連合グラフを得ること。
【0100】
例えば、ユーザのアイデンティティ情報及び企業の商工情報を主キー値とすることにより、2つの支払チャネルにおける共通ユーザとマーチャントを整列させ、共通ユーザが2つの支払チャネルにおける共通の登録取引ユーザであり、共通マーチャントが集約支払いマーチャント、マーチャントの入金コードの相互認識と相互スキャンを実現する取引マーチャントなどである。
【0101】
3、ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習すること。
【0102】
この支払プラットフォームBの各ユーザまたはマーチャントノードがMステップをウォークすることを定義し、Miaステップをウォークした後に共有ノードVabに到達し、Miaステップを何度も経て共有ノードに到達した頻数ベクトルPa‐Miaを記録し、異なるステップを経て共有ノードに到達したベクトルを重み付けて集約することによってその埋め込みベクトルPiAを獲得し、到達した共有ノードシーケンスに基づいて、支払プラットフォームAのユーザが共有ノードからM‐Miaステップをウォークしたベクトル行列を関連してマッチングし、中間ノードにおいて対応する共有ノードVab及びそれが(M‐Ma)ステップをウォークしたベクトル行列を暗号化しマッチングし、複数回のマッチング結果を重み付けて集約することによって、対応した埋め込みベクトルPiBを得て、PiAとPiBをそれぞれのデータ空間に記憶する。
【0103】
同様の方法により、支払いプラットフォームAのユーザノードまたはマーチャントノードからランダムにウォークし、PiA’とPiB’を得る。
【0104】
4、連合学習クラスタリング分析に基づく方法を採用し、まず、第1図の部分PiA、PiA’に対してそれぞれクラスタリング分析を行い、第1図のベクトルに基づいてマイニングしたクラスタをマークし、その上、中間ノードがクラスタの中心核に関するデータを記録し、第2図部分PiB、PiB’を導入した後に、クラスタ内において各ノードが第2図におけるクラスタ状況を比較し、第2図のベクトル空間におけるクラスタ中心核をマイニングし、再びクラスタをフィルタリングし、最強関連のノードデータを獲得すること。
【0105】
本明細書の説明において、「いくつかの可能な実施例」、「いくつかの実施例」、「例」、「具体例」または「いくつかの例」など用語を参照した説明は、その実施例または例に関連して説明された具体的な特徴、構造、材料、または特徴が本発明の少なくとも1つの実施例または例に含まれることを意味する。本明細書において、上述の用語の概略的な表現は、必ずしも同じ実施例または例を対象とする必要はない。さらに、記載された特定の特徴、構造、材料、または特徴は、何れか1つまたは複数の実施例または例において適切な方法で結合することができる。さらに、矛盾しない場合、当業者は、本明細書に記載されている異なる実施例または例及び異なる実施例または例の特徴を結合し、または、組み合わせることができる。
【0106】
さらに、「第1」、「第2」という用語などは目的を説明するためのみに使用され、相対的な重要性を示したり暗示したり、示された技術的特徴の数を暗黙的に示したりするとは理解できない。したがって、「第1」、「第2」などに限定される特徴は、1つまたは複数の特徴を明示的または暗黙的に含むことができる。本願の実施例の説明において、「複数」は、特に断らない限り、2つ以上を意味する。
【0107】
フローチャート中またはここで他の方法で説明されているプロセスまたは方法の記述は、特定の論理機能またはプロセスを実現するためのステップを含む実行可能な命令の1つまたは複数のコードを表すモジュール、セグメントまたは部分を示し、本発明の好ましい実施例の範囲は、関連する機能に基づいて基本的に同時または逆の順序で機能を実行することを含む、図示または議論された順序に従っていなくてもよい。これは、本発明の実施例の当業者によって理解されるべきである。
【0108】
本願の実施例の方法フローチャートについて、いくつかの動作を、ある順序で実行される異なるステップとして説明する。このようなフローチャートは、限定的なものではなく、例示的なものである。本明細書で説明したいくつかのステップは、グループ化されてもよく、単一の動作で実行されてもよく、いくつかのステップは、複数のサブステップに分割されてもよく、本明細書で示された順序とは異なる順序で実行されてもよい。フローチャートに示される様々なステップは、任意の回路構造及び/または有形のメカニズム(例えば、コンピュータ装置において動作するソフトウェア、ハードウェア(例えば、プロセッサまたはチップによって実現される論理機能)など及び/またはそれらの任意の組み合わせ)によって、任意の方法で実装することができる。
【0109】
同じ技術思想に基づいて、本発明の実施例では、前記の何れかの実施例によって提供される分散型グラフ埋め込みに基づく連合グラフクラスタリング方法を実行するための分散型グラフ埋め込みに基づく連合グラフクラスタリング装置を提供する。図6は、本発明の実施例によって提供される分散型グラフ埋め込みに基づく連合グラフクラスタリング装置の概略構成図である。
【0110】
図6に示すように、装置600は、
第一者のデータに基づいて第1の図を構成し、第二者のデータに基づいて第2の図を構成するための構成モジュール601と、
第一者のデータと第二者のデータを暗号化して交集を求め、第1の図と第2の図における共通ノードを確定し、共通ノードに基づいて第1の図と第2の図を関連付けて連合グラフを得るための関連モジュール602と、
ランダムウォークに基づく分散型グラフ埋め込みアルゴリズムを用いて連合グラフを学習し、第1図から出発する第1図の埋め込みベクトル[PiA,PiB]と第2図から出発する第2図の埋め込みベクトル[PiA’,PiB’]を確定するための学習モジュール603(ここで、PiAとPiA’は第1図の各第1図のノードの埋め込みベクトルであり、PiBとPiB’は第2図の各第2図のノードの埋め込みベクトルである)と、
連合クラスタリング方法に基づいて連合グラフの第1の図の埋め込みベクトル[PiA,PiB]と第2の図の埋め込みベクトル[PiA’,PiB’]をクラスタリング分析してクラスタリング結果を得るためのクラスタリングモジュール604と、を含む。
【0111】
本願の実施例における装置が前記の方法の実施例の様々なプロセスを実現し、同様の効果と機能を達成することができることを説明する必要がある。ここで贅言しない。
【0112】
図7は、図2に示す分散型グラフ埋め込みに基づく連合グラフクラスタリング方法を実行するための、本願の一実施例による分散型グラフ埋め込みに基づく連合グラフクラスタリング装置である。この装置は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサと通信接続されたメモリとを含み、メモリには、少なくとも1つのプロセッサが前記の実施例の方法を実行できるように、少なくとも1つのプロセッサによって実行可能な命令が記憶されている。
【0113】
本願のいくつかの実施例によれば、プロセッサによって実行されるときに前記の実施例に記載の方法を実行されるコンピュータ実行可能命令を記憶した分散型グラフ埋め込み連合グラフクラスタリング方法に基づく不揮発性コンピュータ記憶媒体が提供される。
【0114】
本願における様々な実施例は、累加的に記載されているものである。それぞれの実施例の間の同じ類似部分を互いに参照すればよく、各実施例は、他の実施例と異なる点を重点的に示している。特に、装置、装置及びコンピュータ可読記憶媒体の実施例については、基本的に方法の実施例と似ているため、その説明は簡略化され、関連する点について、方法の実施例の一部の説明を参照すればよい。
【0115】
本願の実施例によって提供される装置、デバイス及びコンピュータ可読記憶媒体は方法と一対一に対応しているため、装置、デバイス及びコンピュータ可読記憶媒体もそれに対応する方法と類似した有益な技術効果を有しており、前記で方法の有益な技術効果について詳細に説明したので、ここでは、装置、デバイス及びコンピュータ可読記憶媒体の有益な技術効果については贅言しない。
【0116】
当業者は、本発明の実施例が方法、システム、またはコンピュータプログラム製品として提供され得ることを理解するであろう。したがって、本発明は、完全なハードウェアの実施例、完全なソフトウェアの実施例、または、ソフトウェアとハードウェアの態様を組み合わせた実施例の形態を採用することができる。また、本発明は、コンピュータの利用可能なプログラムコードを含むコンピュータの利用可能な記憶媒体(ディスクメモリ、CD‐ROM、光学メモリなどを含むが、これらに限定されない)の1つまたは複数に実施されるコンピュータプログラム製品の形態を採用することができる。
【0117】
本発明は、本発明の実施例による方法、装置(システム)及びコンピュータプログラム製品のフローチャート及び/またはブロック図を参照して説明される。フローチャート及び/またはブロック図の各フロー及び/またはブロック、ならびにフローチャート及び/またはブロック図のフロー及び/またはブロックの組み合わせは、コンピュータプログラム命令によって実現されうることが理解されるべきである。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または、他のプログラマブルデータ処理装置のプロセッサに提供されて、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行される命令によって、フローチャートの1つまたは複数のフロー及び/またはブロック図の1つまたは複数のブロックに指定された機能を実現するための手段である機械を生成することができる。
【0118】
これらのコンピュータプログラム命令は、コンピュータまたは他のプログラマブルデータ処理装置を特定の方法で動作させることができるコンピュータ可読メモリに記憶することもでき、これにより、該コンピュータ可読メモリに記憶された命令は、フローチャートの1つまたは複数のフロー及び/またはブロック図の1つまたは複数のブロックにおいて指定された機能を実現する命令装置を含む製造品を生成する。
【0119】
これらのコンピュータプログラム命令は、コンピュータまたは他のプログラム可能な装置において一連の動作ステップを実行してコンピュータによって実現される処理を生成するようにコンピュータまたは他のプログラム可能なデータ処理装置上にロードすることもでき、よって、コンピュータまたは他のプログラム可能な装置において実行される命令は、フローチャートの1つまたは複数のフロー及び/またはブロック図の1つまたは複数のブロック内で指定された機能を実現するためのステップを提供する。
【0120】
典型的な構成では、計算装置は、1つまたは複数のプロセッサ(CPU)と、入出力インタフェースと、ネットワークインタフェースと、メモリとを含む。
【0121】
メモリは、読み取り専用メモリ(ROM)またはフラッシュメモリ(フラッシュRAM)などのコンピュータ可読媒体中の非永続的メモリ、ランダムアクセスメモリ(RAM)及び/または不揮発性メモリなどの形態を含むことができる。メモリはコンピュータ可読媒体の例である。
【0122】
コンピュータ可読媒体は、永続性、非永続性、リムーバブル及び非リムーバブルメディアを含み、任意の方法または技術によって情報記憶を実現することができる。情報は、コンピュータ可読命令、データ構造、プログラムのモジュールまたは他のデータであってもよい。コンピュータの記憶媒体の例としては、相変化メモリ(PRAM)、静的ランダムアクセスメモリ(SRAM)、動的ランダムアクセスメモリ(DRAM)、ほかのタイプのランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、電気的に消去可能、プログラム可能な読み取り専用メモリ(EEPROM)、フラッシュメモリまたは他のメモリ技術、読取専用光ディスク読み取り専用メモリ(CD‐ROM)、デジタル多機能光ディスク(DVD)または他の光学記憶、磁気カセットテープ、磁気テープ磁気ディスク記憶装置または他の磁気記憶装置または他の非伝送媒体が挙げられるが、これらに限定されないが、計算装置がアクセスできる情報を記憶するために使用できる。また、添付図面では、本発明の方法の動作を特定の順序で説明しているが、これは、これらの動作をその特定の順序で実行しなければならない、または全ての動作を実行しなければ所望の結果を達成できないことを要求したり暗示したりするものではない。追加的にまたは代替的に、いくつかのステップを省略して、複数のステップを1つのステップ実行に合併し、及び/または、1つのステップを複数のステップ実行に分解することができる。
【0123】
いくつかの具体的な実施形態を参照して本発明の精神及び原理を説明したが、本発明は開示された具体的な実施例に限定されるものではなく、各態様の区分は、これらの態様における特徴を組み合わせて利益を得ることができないことを意味するものではなく、この区分は、単に説明の便宜のためである。本発明は、添付される請求の範囲の精神及び範囲に含まれる様々な補正及び均等な構成を包含することを目的とする。
【符号の説明】
【0124】
600 装置
601 構成モジュール
602 関連モジュール
603 学習モジュール
604 クラスタリングモジュール
1001 プロセッサ
1002 通信バス
1003 ユーザインタフェース
1004 ネットワークインタフェース
1005 メモリ
図1
図2
図3
図4
図5
図6
図7
【国際調査報告】