シムランク

コンテンツへジャンプ
フリー百科事典『ウィキペディア』より

SimRankは、シンプルで直感的なグラフ理論モデルに基づく汎用的な類似度尺度です。SimRankは、オブジェクト間の関係性を持つあらゆるドメインに適用でき、オブジェクトが出現する構造的コンテキストの類似度を、他のオブジェクトとの関係性に基づいて測定します。実質的に、SimRankは、「2つのオブジェクトは、類似のオブジェクトによって参照されている場合、類似しているとみなされる」という尺度です。SimRankは広く採用されていますが、さまざまな要因の影響を受ける不合理な類似度スコアを出力する可能性があり、証拠重み係数の導入、[ 1 ]、 SimRankによって無視される追加の用語の挿入[ 2 ]、またはPageRankベースの代替手段の使用など、いくつかの方法で解決できます。[ 3 ]

導入

[編集]

多くのアプリケーションでは、オブジェクト間の「類似性」の尺度が必要です。分かりやすい例としては、従来のテキストコーパスやワールドワイドウェブにおける「類似文書検索」クエリが挙げられます。より一般的には、類似性の尺度は、例えばレコメンデーションシステムにおける協調フィルタリングなど、オブジェクトのクラスタリングに使用できます。レコメンデーションシステムでは、「類似」するユーザーやアイテムがユーザーの嗜好に基づいてグループ化されます。

オブジェクトのさまざまな側面を使用して類似性を判断できますが、通常はドメインと、そのドメインでの類似性の適切な定義によって異なります。ドキュメント コーパスでは、一致するテキストが使用される場合があり、協調フィルタリングでは、共通の好みによって類似のユーザーが識別される場合があります。 SimRank は、多くの関心領域で見つかるオブジェクト間の関係を活用する一般的なアプローチです。たとえばWebでは、2 つのページ間にハイパーリンクがある場合、それらのページは関連しています。同様のアプローチは、科学論文とその引用、または相互参照情報を含むその他のドキュメント コーパスに適用できます。レコメンデーション システムの場合、アイテムに対するユーザーの好みは、ユーザーとアイテムの関係を構成します。このような領域は、ノードオブジェクトを表し、エッジが関係を表すグラフとして自然にモデル化されます。

SimRankアルゴリズムの背後にある直感は、多くのドメインにおいて、類似のオブジェクトは類似のオブジェクトによって参照されるというものです。より正確には、オブジェクトと がそれぞれオブジェクトとから参照されている場合、およびと が類似しているとみなされます。つまり、オブジェクト はそれ自体 と最大限に類似しているということです。[ 4 ]

SimRank は構造的コンテキストの類似性のみを決定する汎用アルゴリズムであることに注意することが重要です。SimRank は、オブジェクト間に十分な関連関係があり、少なくとも何らかの類似性の概念を関係性に基づいているあらゆるドメインに適用されます。言うまでもなく、他のドメイン固有の側面の類似性も重要です。これらは、全体的な類似性の尺度として、関係構造的コンテキストの類似性と組み合わせることができます (また、組み合わせるべきです)。たとえば、Web ページの場合、SimRank は従来のテキストの類似性と組み合わせることができます。同じ考え方が科学論文やその他の文書コーパスにも適用されます。推薦システムの場合、アイテム間の既知の類似性 (両方のコンピューター、両方の衣類など) やユーザー間の類似性 (同じ性別、同じ支出レベルなど) が組み込まれている場合があります。この場合も、これらの類似性を、嗜好パターンに基づいて計算された類似性スコアと組み合わせて、全体的な類似性の尺度を生成できます。

基本的なSimRank方程式

[編集]

有向グラフのノードについて、の入近傍と出近傍の集合をそれぞれと表します。の場合には、個々の入近傍は と表され、の場合には、個々の出近傍は と表されます

オブジェクトと類似性を で表す。前述の動機に従い、 について再帰方程式が書けるの場合にはが と定義される。そうでない場合、

ここで、 はと の間の定数です。ここで少し技術的な問題として、または は入近傍を持たない場合があります。この場合、 と の間に類似性を推測する方法がないため類似性は に設定され、したがって、または の場合には、上記の式の和は と定義されます

SimRankの行列表現

[編集]

の間の任意の定数が与えられたときを類似度行列とし、その要素は類似度スコア を表すものとし、を列正規化された隣接行列とし、その要素はから への辺が存在する場合に、そうでない場合は 0 であるとする。行列表記法を用いると、SimRankは次のように定式化できる。

ここでは単位行列です

SimRankの計算

[編集]

グラフのSimRank方程式の解は、固定点への反復によって得られますを のノード数とします。各反復 において、エントリ を保持できます。ここで、 は反復 におけるの間のスコアです。に基づいて、を順に計算します。 から開始します。ここで、各 は実際のSimRankスコア の下限値です

計算するには、基本的なSimRank方程式を使用して次の式を取得します。

についてはについてはとなる。つまり、各反復において、 SimRank基本方程式に従って、前回の反復におけるの近傍点の類似度スコアを用いての類似度を更新する。値は の増加に伴って減少しない[ 4 ]では、値がSimRank基本方程式を満たす限界、すなわちSimRankスコアに収束することが示された。 つまり、すべての 、 について、となる。

当初のSimRank提案では、減衰係数と固定の反復回数を選択することが提案されていました。しかし、最近の研究[ 5 ]では、与えられた値と反復計算されたSimRankスコアの精度は一般的に比較的低いことが示されました。より正確な計算結果を保証するために、後者の論文では、より小さな減衰係数(特に)を使用するか、より多くの反復回数を行うことが提案されています。

コシムランク

[編集]

CoSimRankはSimRankの派生版であり、局所的な定式化も可能という利点があります。つまり、CoSimRankは単一のノードペアに対して計算できます。[ 6 ]を類似度行列とし、その要素は類似スコアを表します。を列正規化された隣接行列とします。行列表記法では、CoSimRankは次のように定式化されます。

ここでは単位行列です。単一のノードペアのみの類似度スコアを計算するには、 を標準基底のベクトルとします。つまり、- 番目の要素が 1 で、その他の要素はすべて 0 です。この場合、CoSimRank は次の 2 つのステップで計算されます。

ステップ1は、Personalized PageRankの簡略版と見ることができます。ステップ2では、各反復におけるベクトル類似度を合計します。行列表現とローカル表現はどちらも同じ類似度スコアを計算します。CoSimRankは、 を変更することで、ノードセットの類似度を計算するためにも使用できます

SimRankに関するさらなる調査

[編集]

部分和のメモ化

[編集]

リゾーキンら[ 5 ]は、 SimRankの計算を高速化するための3つの最適化手法を提案した。

  1. 必須ノードの選択により、事前スコアがゼロのノード ペアの一部の計算が省略される場合があります。
  2. 部分和メモ化は、類似度の合計の一部をキャッシュして後で再利用することで、異なるノード ペア間の類似度の繰り返し計算を効果的に削減できます。
  3. 類似度のしきい値設定により、計算されるノード ペアの数をさらに削減できます。

特に、部分和メモ化に関する2つ目の観察結果は、 からへのSimRankの計算を大幅に高速化する上で極めて重要な役割を果たします。ここで、は反復回数、はグラフの平均次数、 はグラフ内のノード数です。部分和メモ化の中心的な考え方は、以下の2つのステップで構成されています。

まず、部分和は次のように記される。

そして、次のように反復的に計算される。

したがって、、、の結果は、後で最初の引数として指定された頂点の類似度を計算するときに再利用できます。

参照

[編集]

引用

[編集]
  1. ^ I. Antonellis、H. Garcia-Molina、C.-C. Chang. Simrank++: クリックグラフのリンク解析によるクエリ書き換え。VLDB '08 : Proceedings of the 34th International Conference on Very Large Data Bases、408-421ページ。 [1]
  2. ^ W. Yu, X. Lin, W. Zhang, L. Chang, J. Pei. 「More is Simpler: Effectively and Efficiently Assessing Node-Pair Similarities Based on Hyperlinks. VLDB '13 : Proceedings of the 39th International Conference on Very Large Data Bases」13~24ページ。 [2]
  3. ^ a b H. Chen、CL Giles「ASCOS++:SimRank問題に対処するための重み付きネットワークの非対称類似度尺度」ACM Transactions on Knowledge Discovery from Data (TKDD) 10.2 2015. [3]
  4. ^ a b G. JehとJ. Widom. SimRank: 構造的コンテキスト類似度の尺度. KDD'02 : Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining, pages 538-543. ACM Press , 2002. 「アーカイブコピー」 (PDF) 。 2008年5月12日にオリジナル (PDF)からアーカイブ。 2008年10月2日閲覧{{cite web}}: CS1 maint: archived copy as title (link)
  5. ^ a b D. Lizorkin、P. Velikhov、M. Grinev、D. Turdakov. SimRank計算における精度推定と最適化手法。VLDB '08 : Proceedings of the 34th International Conference on Very Large Data Bases、422~433ページ。「アーカイブコピー」(PDF) 。 2009年4月7日にオリジナル(PDF)からアーカイブ。 2008年10月25日閲覧 {{cite web}}: CS1 maint: archived copy as title (link)
  6. ^ S. RotheとH. Schütze. CoSimRank: 柔軟かつ効率的なグラフ理論的類似度尺度. ACL '14 : 計算言語学協会第52回年次会議議事録(第1巻:長編論文), 1392-1402ページ. [4]
  7. ^ D. FogarasとB. Racz. リンクベース類似検索のスケーリング. WWW '05 : Proceedings of the 14th international conference on World Wide Web, pages 641--650, New York, NY, USA, 2005. ACM . [5]
  8. ^ アントネッリス、イオアニス、ヘクター・ガルシア・モリーナ、チ・チャオ・チャン。「Simrank++:クリックグラフのリンク分析によるクエリ書き換え」VLDB Endowment 1.1 論文集 (2008): 408-421. arXiv : 0712.0499
  9. ^ W. Yu、X. Lin、W. Zhang. 大規模ネットワークにおける効率的なSimRank計算に向けて. ICDE '13 : Proceedings of the 29th IEEE International Conference on Data Engineering、601--612ページ.「アーカイブコピー」(PDF) 。 2014年5月12日時点のオリジナル(PDF)からのアーカイブ。 2014年5月9日閲覧 {{cite web}}: CS1 maint: archived copy as title (link)

出典

[編集]

    SimRankは、シンプルで直感的なグラフ理論モデルに基づく汎用的な類似度尺度です。SimRankは、オブジェクト間の関係性を持つあらゆるドメインに適用でき、オブジェクトが出現する構造的コンテキストの類似性を、他のオブジェクトとの関係性に基づいて測定します。実質的に、SimRankは「2つのオブジェクトは、類似のオブジェクトによって参照されている場合、類似しているとみなされる」という尺度です。SimRankは広く採用されていますが、さまざまな要因の影響を受ける不合理な類似度スコアを出力する可能性があり、証拠重み係数の導入[1] 、 SimRankでは無視される追加の用語の挿入[2] 、またはPageRankベースの代替手段の使用など、いくつかの方法で解決できます。[3]

    導入

    多くのアプリケーションでは、オブジェクト間の「類似性」の尺度が必要です。分かりやすい例としては、従来のテキストコーパスやワールドワイドウェブにおける「類似文書検索」クエリが挙げられます。より一般的には、類似性の尺度は、例えばレコメンデーションシステムにおける協調フィルタリングなど、オブジェクトのクラスタリングに使用できます。レコメンデーションシステムでは、「類似」するユーザーやアイテムがユーザーの嗜好に基づいてグループ化されます。

    オブジェクトのさまざまな側面を使用して類似性を判断できますが、通常はドメインと、そのドメインでの類似性の適切な定義によって異なります。ドキュメント コーパスでは、一致するテキストが使用される場合があり、協調フィルタリングでは、共通の好みによって類似のユーザーが識別される場合があります。 SimRank は、多くの関心領域で見つかるオブジェクト間の関係を活用する一般的なアプローチです。たとえばWebでは、2 つのページ間にハイパーリンクがある場合、それらのページは関連しています。同様のアプローチは、科学論文とその引用、または相互参照情報を含むその他のドキュメント コーパスに適用できます。レコメンデーション システムの場合、アイテムに対するユーザーの好みは、ユーザーとアイテムの関係を構成します。このような領域は、ノードオブジェクトを表し、エッジが関係を表すグラフとして自然にモデル化されます。

    SimRankアルゴリズムの背後にある直感は、多くのドメインにおいて、類似のオブジェクトは類似のオブジェクトによって参照されるというものです。より正確には、オブジェクトと は、それぞれオブジェクトから参照されている場合、類似しているとみなされますまた、とは、それ自体が類似しています。基本ケースは、オブジェクトがそれ自体 と最大限に類似していることです。[4]

    SimRank は構造的コンテキストの類似性のみを決定する汎用アルゴリズムであることに注意することが重要です。SimRank は、オブジェクト間に十分な関連関係があり、少なくとも何らかの類似性の概念を関係性に基づいているあらゆるドメインに適用されます。言うまでもなく、他のドメイン固有の側面の類似性も重要です。これらは、全体的な類似性の尺度として、関係構造的コンテキストの類似性と組み合わせることができます (また、組み合わせるべきです)。たとえば、Web ページの場合、SimRank は従来のテキストの類似性と組み合わせることができます。同じ考え方が科学論文やその他の文書コーパスにも適用されます。推薦システムの場合、アイテム間の既知の類似性 (両方のコンピューター、両方の衣類など) やユーザー間の類似性 (同じ性別、同じ支出レベルなど) が組み込まれている場合があります。この場合も、これらの類似性を、嗜好パターンに基づいて計算された類似性スコアと組み合わせて、全体的な類似性の尺度を生成できます。

    基本的なSimRank方程式

    有向グラフのノードについて、の入近傍と出近傍の集合をそれぞれと表します。の場合には、個々の入近傍は と表され、の場合には、個々の出近傍は と表されます

    オブジェクトと類似性を で表す。前述の動機に従い、 について再帰方程式が書けるの場合にはが と定義される。そうでない場合、

    ここで、 はと の間の定数です。ここで少し技術的な問題として、または は入近傍を持たない場合があります。この場合、 と の間に類似性を推測する方法がないため類似性は に設定され、したがって、または の場合には、上記の式の和は と定義されます

    SimRankの行列表現

    の間の任意の定数が与えられたときを類似度行列とし、その要素は類似度スコア を表すものとし、を列正規化された隣接行列とし、その要素はから への辺が存在する場合に、そうでない場合は 0 であるとする。行列表記法を用いると、SimRankは次のように定式化できる。

    ここでは単位行列です

    SimRankの計算

    グラフのSimRank方程式の解は、固定点への反復によって得られますを のノード数とします。各反復 において、エントリ を保持できます。ここで、 は反復 におけるの間のスコアです。に基づいて、を順に計算します。 から開始します。ここで、各 は実際のSimRankスコア の下限値です

    計算するには、基本的なSimRank方程式を使用して次の式を取得します。

    についてはについてはとなる。つまり、各反復において、 SimRank基本方程式に従って、前回の反復におけるの近傍点の類似度スコアを用いての類似度を更新する。値は の増加に伴って減少しない[4]では、値がSimRank基本方程式を満たす限界、すなわちSimRankスコアに収束することが示された。 つまり、すべての 、 について、となる。

    当初のSimRank提案では、減衰係数と固定の反復回数を選択することが提案されていました。しかし、最近の研究[5]では、与えられた値と反復計算によって得られるSimRankスコアの精度は一般的に比較的低いことが示されました。より正確な計算結果を保証するために、後者の論文では、より小さな減衰係数(特に)を使用するか、より多くの反復計算を行うことが提案されています。

    コシムランク

    CoSimRankはSimRankの派生版であり、局所的な定式化も可能という利点があります。つまり、CoSimRankは単一のノードペアに対して計算できます。[6]を類似度行列とし、その要素は類似スコアを表します。を列正規化された隣接行列とします。行列表記法を用いると、CoSimRankは以下のように定式化できます。

    ここでは単位行列です。単一のノードペアのみの類似度スコアを計算するには、 を標準基底のベクトルとします。つまり、- 番目の要素が 1 で、その他の要素はすべて 0 です。この場合、CoSimRank は次の 2 つのステップで計算されます。

    ステップ1は、Personalized PageRankの簡略版と見ることができます。ステップ2では、各反復におけるベクトル類似度を合計します。行列表現とローカル表現はどちらも同じ類似度スコアを計算します。CoSimRankは、 を変更することで、ノードセットの類似度を計算するためにも使用できます

    SimRankに関するさらなる調査

    部分和のメモ化

    Lizorkinら[5]はSimRankの計算を高速化するための3つの最適化手法を提案した。

    1. 必須ノードの選択により、事前スコアがゼロのノード ペアの一部の計算が省略される場合があります。
    2. 部分和メモ化は、類似度の合計の一部をキャッシュして後で再利用することで、異なるノード ペア間の類似度の繰り返し計算を効果的に削減できます。
    3. 類似度のしきい値設定により、計算されるノード ペアの数をさらに削減できます。

    特に、部分和メモ化に関する2つ目の観察結果は、 からへのSimRankの計算を大幅に高速化する上で極めて重要な役割を果たします。ここで、は反復回数、はグラフの平均次数、 はグラフ内のノード数です。部分和メモ化の中心的な考え方は、以下の2つのステップで構成されています。

    まず、部分和は次のように記される。

    そして、次のように反復的に計算される。

    したがって、、、の結果は、後で最初の引数として指定された頂点の類似度を計算するときに再利用できます。

    参照

    引用

    1. ^ I. Antonellis、H. Garcia-Molina、C.-C. Chang. Simrank++: クリックグラフのリンク解析によるクエリ書き換え。VLDB '08 : Proceedings of the 34th International Conference on Very Large Data Bases、408--421ページ。[1]
    2. ^ W. Yu, X. Lin, W. Zhang, L. Chang, J. Pei. 「More is Simpler: Effectively and Efficiently Assessing Node-Pair Similarities Based on Hyperlinks. VLDB '13 : Proceedings of the 39th International Conference on Very Large Data Bases」13~24ページ。[2]
    3. ^ ab H. Chen、CL Giles。「ASCOS++:SimRank問題に対処するための重み付きネットワークの非対称類似度尺度」ACM Transactions on Knowledge Discovery from Data (TKDD) 10.2 2015.[3]
    4. ^ ab G. JehとJ. Widom. SimRank: 構造的コンテキスト類似度の尺度. KDD'02 : Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining, pages 538-543. ACM Press , 2002. 「アーカイブコピー」(PDF) 。 2008年5月12日にオリジナル(PDF)からアーカイブ。 2008年10月2日閲覧{{cite web}}: CS1 maint: archived copy as title (link)
    5. ^ ab D. Lizorkin、P. Velikhov、M. Grinev、D. Turdakov. SimRank計算における精度推定と最適化手法。VLDB '08 : Proceedings of the 34th International Conference on Very Large Data Bases、422~433ページ。「アーカイブコピー」(PDF) 。 2009年4月7日にオリジナル(PDF)からアーカイブ。 2008年10月25日閲覧{{cite web}}: CS1 maint: archived copy as title (link)
    6. ^ S. RotheとH. Schütze. CoSimRank: 柔軟かつ効率的なグラフ理論的類似度尺度. ACL '14 : 計算言語学協会第52回年次会議議事録(第1巻:長編論文), 1392-1402ページ. [4]
    7. ^ D. FogarasとB. Racz. リンクベース類似検索のスケーリング. WWW '05 : Proceedings of the 14th international conference on World Wide Web, pages 641--650, New York, NY, USA, 2005. ACM . [5]
    8. ^ アントネッリス、イオアニス、ヘクター・ガルシア・モリーナ、チ・チャオ・チャン。「Simrank++:クリックグラフのリンク分析によるクエリ書き換え」VLDB Endowment 1.1 論文集 (2008): 408-421. arXiv : 0712.0499
    9. ^ W. Yu、X. Lin、W. Zhang. 大規模ネットワークにおける効率的なSimRank計算に向けて. ICDE '13: Proceedings of the 29th IEEE International Conference on Data Engineering、601--612ページ. 「アーカイブコピー」(PDF) 。 2014年5月12日時点のオリジナル(PDF)からのアーカイブ。 2014年5月9日閲覧{{cite web}}: CS1 maint: archived copy as title (link)

    出典

    • Cai, Y.; Cong, G.; Jia, X.; Liu, H.; He, J.; Lu, J.; Du, X. (2009-12-01). 「実世界ネットワークにおけるリンクベースの類似度計算のための効率的なアルゴリズム」. 2009年 第9回 IEEE 国際データマイニング会議. pp.  734– 739. doi :10.1109/ICDM.2009.136. ISBN 978-1-4244-5242-2. S2CID  9799597。
    Retrieved from "https://en.wikipedia.org/w/index.php?title=SimRank&oldid=1320715469"
    Original text
    Rate this translation
    Your feedback will be used to help improve Google Translate