JP5727421B2 - 関連ノード検索装置、関連ノード検索方法、及びプログラム - Google Patents
関連ノード検索装置、関連ノード検索方法、及びプログラム Download PDFInfo
- Publication number
- JP5727421B2 JP5727421B2 JP2012161986A JP2012161986A JP5727421B2 JP 5727421 B2 JP5727421 B2 JP 5727421B2 JP 2012161986 A JP2012161986 A JP 2012161986A JP 2012161986 A JP2012161986 A JP 2012161986A JP 5727421 B2 JP5727421 B2 JP 5727421B2
- Authority
- JP
- Japan
- Prior art keywords
- relevance
- nodes
- matrix
- node
- search
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
前記グラフデータから、PPRに基づく特定のノードの関連度を算出するために用いるユニタリ行列と上三角行列の逆行列を計算し、記憶手段に格納する事前計算手段と、
前記問い合わせ分布、及び前記事前計算手段により求めたユニタリ行列と上三角行列の逆行列を用いて、関連度が高い順にK 個のノードを検索、又は所定の閾値よりも大きい関連度を持つノードを検索し、出力する検索手段とを備えることを特徴とする関連ノード検索装置として構成される。
前記検索手段は、グラフの隣接行列及び前記問い合わせ分布に基づいて全てのノードについての関連度の下限値を推定し、当該下限値に基づいて関連度の上限値を推定する関連度推定手段と、前記関連度推定手段により推定された前記上限値に基づいて選択された関連度が高いことが期待されるノードについて、前記ユニタリ行列と前記上三角行列の逆行列を用いて関連度を計算する関連度計算手段と、を備えるように構成することができる。
本実施の形態に係る関連ノード検索装置1の構成、及び機能の概要を図1〜図3を参照して説明する。
以下、本発明の実施の形態における関連ノード検索装置1が実行する処理内容について、その原理や処理手順などを詳細に説明する。実施の形態の説明にあたり、まずは本明細書で用いる記号を定義し、必要となる背景知識を説明する。
PPRはグラフのノードの関連度を計算するひとつの方法である。PPRでは問い合わせ分布から各ノードの存在確率を決定し、決定されたノードからランダムウォークを行う。そしてランダムウォークでノードに到達するたびに一定の確率cで問い合わせ分布に基づき各ノードに戻る。ここで、グラフのノード数をnとする。sをn×1行列とし、su要素をノードuにランダムウォークする確率を表すとする。またdを問い合わせ分布で決定されるn×1行列とする。またAを列が正規化されたグラフの隣接行列とする(すなわちAu,v要素はノードvからノードuへランダムウォークする確率を表す)。定常状態における各ノードにおける存在確率は以下の式を再帰的に収束するまで繰り返すことで計算することができる。
s = (1-c)As + cd (1)
PPR は定常状態における確率を関連度とする方法である。すなわちs行列のsu要素はノードuの分布dに対する関連度となる。
本実施の形態に係る技術は、大きく以下の2つの手法(疎行列計算と関連度の推定)で構成される。
上記のように、問い合わせ分布に対する関連度は繰り返し計算によって定常状態における確率を計算することで求めることができる。この方法はグラフの全てのノードの関連度を再帰的に計算するため計算コストが高い。そこで本実施の形態に係る手法では全てのノードの関連度を計算せずに、選んだノードの関連度のみを計算し高速な検索を可能にする。
上記の疎行列計算の手法により、選んだノードの関連度を高速に計算することができる。しかし、上位K個のノードを検索するためには全てのノードの関連度を計算しなければならない。そこで、本実施の形態に係る技術では、高速に検索を行うために関連度の推定を行う。具体的には各ノードに対して関連度の推定を行い、関連度が高いことが期待されるノードに対してのみ疎行列を用いて正確な関連度を計算する。ノードの推定値はO(1)で計算することができるため、少ない計算コストで関連度の計算を省略することができる。後述するように、本実施の形態で用いる関連度の推定値は正確な関連度の上限値になることが保証されているため、推定を用いても検索結果が正確になるという利点がある。
以下、疎行列を用いて選択したノードの関連度を計算する処理について詳細に説明する。まず選択したノードの関連度は逆行列から計算できることを説明し、その逆行列を疎行列から計算する手法について説明する。
s=c{I- (1-c)A}-1d=c{PTIP- (1-c)PTA′P}-1d =cPT{I- (1-c)A′}-1Pd (2)
特定のノードの関連度を計算するため、本実施の形態では行列I - (1 - c)A′ のQR分解を計算する。すなわちQR = I - (1 - c)A′となるが、ここで行列Qは直交行列(ユニタリ行列)であり、行列Rは上三角行列である。形式的には特定のノードxの関連度は以下のように計算する。
sx = fx・g (3)
式(3)からノードxの関連度はベクトルfxとgを用いれば繰り返し計算なしに求めることができる。またベクトルdはユーザから与えられるため、関連度を計算するためまずベクトルgを計算する必要がある。
次に、関連度の推定について説明する。これは、上位K個のノードを検索するために、検索の途中において正確な関連度を計算していないノードの関連度の上限値を高速に推定するものである。関連度の上限値を計算するために、本実施の形態ではまず関連度の下限値を推定する。関連度の下限値は与えられた分布の値が零にならないシードノードからの最小ホップ数を用いて計算する。シードノードからの最小ホップ数は幅優先探索を用いて計算する。huをノードuに対するシードノードからの最小ホップ数とし、H(i)をシードノードからの最小ホップ数がiとなるノードの集合とする。すなわちH(i)はi番目のレイヤを構成し、H(0)はシードノードの集合となる。本実施の形態では以下のように関連度の下限値を計算する。
上位K個のノードを検索するために必要な計算コストは以下のようになる。
これまで上位K個のノードを検索する方法について説明したが、本実施の形態に係る関連ノード検索装置1により、閾値εより大きい関連度を持つノードを検索することもできる。すなわち本実施の形態に係る関連ノード検索装置1により、閾値εより大きい関連度を持つノードの範囲検索が可能である。以下にその詳細を説明する。
10 事前計算部
11 ノード並び替え部
12 逆行列計算部
20 検索部
21 関連度推定部
22 関連度計算部
23 データ保存部
24 検索処理制御部
Claims (7)
- 複数のノードからなるグラフデータと問い合わせ分布からPPR(Personalized PageRank)に基づき関連度を計算し、関連度が高い順にK 個のノードを検索する、又は所定の閾値よりも大きい関連度を持つノードを検索する関連ノード検索装置であって、
前記グラフデータから、PPRに基づく特定のノードの関連度を算出するために用いるユニタリ行列と上三角行列の逆行列を計算し、記憶手段に格納する事前計算手段と、
前記問い合わせ分布、及び前記事前計算手段により求めたユニタリ行列と上三角行列の逆行列を用いて、関連度が高い順にK 個のノードを検索、又は所定の閾値よりも大きい関連度を持つノードを検索し、出力する検索手段と
を備えることを特徴とする関連ノード検索装置。 - 前記事前計算手段は、
前記ユニタリ行列と前記上三角行列の逆行列とがそれぞれ疎になるように、前記グラフデータにおけるノードを並び替え、ノードを並び替えたグラフデータを記憶手段に格納するノード並び替え手段と、
前記ノード並び替え手段によりノードが並び替えられたグラフデータを用いて、前記ユニタリ行列と前記上三角行列の逆行列を計算する逆行列計算手段と、を備え、
前記検索手段は、
グラフの隣接行列及び前記問い合わせ分布に基づいて全てのノードについての関連度の下限値を推定し、当該下限値に基づいて関連度の上限値を推定する関連度推定手段と、
前記関連度推定手段により推定された前記上限値に基づいて選択された関連度が高いことが期待されるノードについて、前記ユニタリ行列と前記上三角行列の逆行列を用いて関連度を計算する関連度計算手段と、を備える
ことを特徴とする請求項1に記載の関連ノード検索装置。 - 前記検索手段において、
前記関連度推定手段により、下限値の降順に、関連度の上限値が前記K番目の関連度未満又は前記所定の閾値未満となるまでノードを探索し、関連度の上限値が前記K番目の関連度未満又は前記所定の閾値未満にならない間は、前記関連度計算手段により正確な関連度を計算することにより、関連度が高い順にK 個のノードを検索、又は前記所定の閾値よりも大きい関連度を持つノードを検索する
ことを特徴とする請求項2に記載の関連ノード検索装置。 - 複数のノードからなるグラフデータと問い合わせ分布からPPR(Personalized PageRank)に基づき関連度を計算し、関連度が高い順にK 個のノードを検索する、又は所定の閾値よりも大きい関連度を持つノードを検索する関連ノード検索装置が実行する関連ノード検索方法であって、
前記グラフデータから、PPRに基づく特定のノードの関連度を算出するために用いるユニタリ行列と上三角行列の逆行列を計算し、記憶手段に格納する事前計算ステップと、
前記問い合わせ分布、及び前記事前計算ステップにより求めたユニタリ行列と上三角行列の逆行列を用いて、関連度が高い順にK 個のノードを検索、又は所定の閾値よりも大きい関連度を持つノードを検索し、出力する検索ステップと
を備えることを特徴とする関連ノード検索方法。 - 前記事前計算ステップは、
前記ユニタリ行列と前記上三角行列の逆行列とがそれぞれ疎になるように、前記グラフデータにおけるノードを並び替え、ノードを並び替えたグラフデータを記憶手段に格納するノード並び替えステップと、
前記ノード並び替えステップによりノードが並び替えられたグラフデータを用いて、前記ユニタリ行列と前記上三角行列の逆行列を計算する逆行列計算ステップと、を備え、
前記検索ステップは、
グラフの隣接行列及び前記問い合わせ分布に基づいて全てのノードについての関連度の下限値を推定し、当該下限値に基づいて関連度の上限値を推定する関連度推定ステップと、
前記関連度推定ステップにより推定された前記上限値に基づいて選択された関連度が高いことが期待されるノードについて、前記ユニタリ行列と前記上三角行列の逆行列を用いて関連度を計算する関連度計算ステップと、を備える
ことを特徴とする請求項4に記載の関連ノード検索方法。 - 前記検索ステップにおいて、
前記関連度推定ステップにより、下限値の降順に、関連度の上限値が前記K番目の関連度未満又は前記所定の閾値未満となるまでノードを探索し、関連度の上限値が前記K番目の関連度未満又は前記所定の閾値未満にならない間は、前記関連度計算ステップにおいて正確な関連度を計算することにより、関連度が高い順にK 個のノードを検索、又は前記所定の閾値よりも大きい関連度を持つノードを検索する
ことを特徴とする請求項5に記載の関連ノード検索方法。 - コンピュータを、請求項1ないし3のうちいずれか1項に記載の関連ノード検索装置における各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012161986A JP5727421B2 (ja) | 2012-07-20 | 2012-07-20 | 関連ノード検索装置、関連ノード検索方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012161986A JP5727421B2 (ja) | 2012-07-20 | 2012-07-20 | 関連ノード検索装置、関連ノード検索方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014021862A JP2014021862A (ja) | 2014-02-03 |
JP5727421B2 true JP5727421B2 (ja) | 2015-06-03 |
Family
ID=50196634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012161986A Active JP5727421B2 (ja) | 2012-07-20 | 2012-07-20 | 関連ノード検索装置、関連ノード検索方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5727421B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106952166A (zh) * | 2016-01-07 | 2017-07-14 | 腾讯科技(深圳)有限公司 | 一种社交平台的用户影响力估算方法及装置 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6190324B2 (ja) * | 2014-06-09 | 2017-08-30 | 日本電信電話株式会社 | 検索装置、検索方法および検索プログラム |
CN104933621A (zh) * | 2015-06-19 | 2015-09-23 | 天睿信科技术(北京)有限公司 | 一种担保圈的大数据分析系统和方法 |
JP6974248B2 (ja) * | 2018-05-02 | 2021-12-01 | ヤフー株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
-
2012
- 2012-07-20 JP JP2012161986A patent/JP5727421B2/ja active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106952166A (zh) * | 2016-01-07 | 2017-07-14 | 腾讯科技(深圳)有限公司 | 一种社交平台的用户影响力估算方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2014021862A (ja) | 2014-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Heimann et al. | Regal: Representation learning-based graph alignment | |
Hayashi et al. | Fully dynamic betweenness centrality maintenance on massive networks | |
Qi et al. | Computing the nearest Euclidean distance matrix with low embedding dimensions | |
JP5727421B2 (ja) | 関連ノード検索装置、関連ノード検索方法、及びプログラム | |
US10191998B1 (en) | Methods of data reduction for parallel breadth-first search over graphs of connected data elements | |
JP5506711B2 (ja) | 類似ノード検索装置及び方法及びプログラム | |
US20210034928A1 (en) | Combinatorial bayesian optimization using a graph cartesian product | |
WO2015192798A1 (zh) | 主题挖掘方法和装置 | |
Avron et al. | Community detection using time-dependent personalized pagerank | |
Rising et al. | An efficient algorithm for the symmetric principal minor assignment problem | |
Coşkun et al. | Indexed fast network proximity querying | |
Yu et al. | Apple: Approximate path for penalized likelihood estimators | |
JP2014228975A (ja) | 検索装置、検索方法および検索プログラム | |
CN111177190B (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
JP6721535B2 (ja) | Lle計算装置、lle計算方法及びlle計算プログラム | |
Reinecke et al. | Phase-type distributions | |
JP5647166B2 (ja) | 類似ノード検索装置及び方法及びプログラム | |
Liao et al. | Efficient Resistance Distance Computation: the Power of Landmark-based Approaches | |
JP6005583B2 (ja) | 検索装置、検索方法および検索プログラム | |
Lu et al. | A matrix sampling approach for efficient SimRank computation | |
Kahou et al. | A partitioning algorithm for block-diagonal matrices with overlap | |
Bergamaschi et al. | Efficiently preconditioned inexact Newton methods for large symmetric eigenvalue problems | |
Tunzi et al. | Determining the connectedness of an undirected graph | |
Yang et al. | Efficient Estimation of Pairwise Effective Resistance | |
Huang et al. | Efficient algorithms for ‘universally’constrained matrix and tensor factorization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140311 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140813 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141114 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150331 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150402 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5727421 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |