一時的なグラフのベンチマーク (Ichijiteki na gurafu no benchimāku)
一瞬の輝き:グラフのベンチマーク (Isshun no kagayaki gurafu no benchimāku)
時間的グラフ学習のための挑戦的かつ現実的なデータセット
近年、公開データセットや標準化された評価プロトコルの利用などにより、静的グラフ上での機械学習において重要な進展がなされてきました。これらの進展は、広く採用されているOpen Graph Benchmark(OGB)などが存在することにより加速されています。しかし、多くの現実のシステム、例えばソーシャルネットワーク、交通ネットワーク、金融取引ネットワークは、ノードとエッジが常に追加されたり削除されたりしながら経時的に進化します。これらはしばしば時間的なグラフとしてモデル化されます。これまで、時間的なグラフ学習の進展は、大規模で高品質なデータセットの不足や適切な評価の欠如により、過度に楽観的な性能が得られていました。
これに対応するために、現実的かつ再現性のある評価のための挑戦的で多様なベンチマークデータセットのコレクションであるTemporal Graph Benchmark(TGB)を提案します。OGBの成功を受けて、TGBはデータセットのダウンロードと処理、評価プロトコルの自動化を行っており、ユーザーはリーダーボードを使用してモデルのパフォーマンスを比較することができます。TGBは時間的グラフコミュニティにおける標準化されたベンチマークとなり、新規手法の開発や大規模時間的ネットワークの理解の向上に貢献することを期待しています。
- ウェブサイト: https://tgb.complexdatalab.com/
- 論文: https://arxiv.org/abs/2307.01026
- Github: https://github.com/shenyangHuang/TGB
この投稿は私たちの論文Temporal Graph Benchmark for Machine Learning on Temporal Graphs(NeurIPS 2023 Datasets and Benchmarks Track)に基づいており、Emanuele Rossiと共同執筆しました。より多くの時間的グラフの作業については、私のウェブサイトをご覧ください。時間的グラフについてもっと学びたいですか?Temporal Graph Reading GroupとTemporal Graph Learning Workshop @ NeurIPS 2023に参加して、最先端のTG研究のさらなる知識を得ましょう。
目次:
モチベーション
過去数年間、静的グラフの機械学習の分野は、公開データセットとOpen Graph Benchmark(OGB)、Long Range Graph Benchmark、TDC Benchmarkなどの確立されたベンチマークの出現により、大きな成長を遂げました。しかし、社会ネットワークや交通ネットワーク、金融取引ネットワークなど、多くの現実世界のシステムは時間的に変化します。これまで、時間的グラフの進歩は、大規模で高品質なデータセットと包括的な評価フレームワークの不足により、大幅に妨げられてきました。この希少性と評価の制約は、WikipediaやRedditなどの人気のあるデータセット上のモデルに対するほぼ完璧なAPまたはAUROCスコアをもたらし、モデルのパフォーマンスの過剰な評価と競合するモデルの区別の難しさにつながっています。
- 「PySpark UDFを使用して合成テーブルの列間にOne-To-Oneの関係を作成する方法」
- 「データサイエンスプロジェクトのための8つのGitHubの代替品」
- 「大規模な言語モデルの公正な評価に向けて」
データセットの不足。一般的なTGデータセットには、実際の時間的ネットワークで見られるスケールよりもはるかに少ない数百万のエッジしか含まれていません。さらに、これらのデータセットは主に社会およびインタラクションネットワークの範囲に制約されています。ネットワークの特性は領域によって大幅に異なる場合があるため、さまざまな領域でベンチマークを行うことは重要です。最後に、ノードレベルのタスクに対するデータセットの不足により、ほとんどの手法はリンク予測にしか焦点を当てていません。この課題を解決するために、TGBには5つの異なるドメインから取得した9つのデータセットが含まれており、ノード、エッジ、タイムスタンプの数にして桁違いに大きくなっています。さらに、TGBでは新しいノード性向予測タスクのための4つのデータセットを提案しています。
単純な評価。動的リンク予測は通常、二値分類タスクとして定義されます:正の(真の)エッジは1のラベルを持ち、負の(存在しない)エッジは0のラベルを持ちます。評価では、テスト時にはソースノードを固定し、宛先ノードを一様にランダムに選択することで、1つの負のエッジを1つの正のエッジごとにサンプリングします。この評価では容易に予測できる負のエッジのみが考慮されるため、多くのモデルがWikipediaやRedditで95%以上のAPを獲得し、モデルのパフォーマンスが過大評価され、競合するモデルの区別が難しくなっています(Poursafaei et al. 2022、Rossi et al. 2020、Wang et al. 2021、Souza et al. 2022)。TGBでは、リンク予測タスクをランキング問題として扱い、評価をより堅牢にします。改善された評価により、より現実的なパフォーマンスが実現され、異なるモデル間の明確な差が明らかになります。
問題設定
TGBでは、Kazemi et al. 2020によって定義される連続時間の時間的グラフに焦点を当てています。この設定では、時間的グラフをタイムスタンプ付きのエッジストリームとして表し、(ソース、宛先、タイムスタンプ)の三つ組で構成されます。時間的エッジは重み付け、方向付けがされることがあり、ノードとエッジの両方にはオプションで特徴が付けられることに注意してください。
さらに、ストリーミング設定では、モデルは推論時に新しい情報を組み込むことができます。特に、時刻tでテストエッジを予測する際には、テストエッジを含むtより前に発生したすべてのエッジにアクセス[1]することができます。ただし、バックプロパゲーションや重みの更新において、テスト情報を使用することは許可されません。
データセットの詳細
TGBには9つのデータセットが含まれており、うち7つはこの研究のために独自に作成され、2つは以前の文献から引用されています。データセットはトレーニング、バリデーション、テストセットに時間的に分割され、比率は70/15/15です。データセットはエッジの数に基づいて以下のカテゴリに分類されます:小規模(<5百万)、VoAGI(5–25百万)、および大規模(> 25百万)。
TGBデータセットには異なるドメインとタイムグラニュリティ(UNIXタイムスタンプから年次まで)があります。最後に、データセットの統計情報も多岐にわたります。例えば、トレーニングセットに観測されなかったテストエッジの比率で定義されるサプライズインデックスは、データセットによって大きく異なります。多くのTGBデータセットには、テストセットに多くの新規ノードが含まれており、帰納的な推論が必要です。
TGBデータセットはまた、現実の世界のタスクに関連しています。たとえば、tgbl-flight
データセットは2019年から2022年までのクラウドソーシングされた国際フライトネットワークです。空港はノードとしてモデル化され、エッジは特定の日における空港間のフライトです。このタスクの目的は、将来の日付における2つの特定の空港間でのフライトの発生を予測することです。これはキャンセルや遅延などのフライトの潜在的な障害を予測するために役立ちます。たとえば、COVID-19パンデミックでは、COVID-19の拡散を防ぐために多くのフライトルートがキャンセルされました。グローバルフライトネットワークの予測は、COVID-19などの疾病の新たな地域への拡散の研究と予測にも重要です(Ding et al. 2021参照)。詳細なデータセットとタスクの説明は、論文のセクション4に提供されています。
ダイナミックリンクプロパティ予測
ダイナミックリンクプロパティ予測の目標は、将来のタイムスタンプでノードペア間のリンクのプロパティ(通常は存在)を予測することです。
ネガティブエッジサンプリング。実際の応用では、真のエッジは事前にはわかりません。そのため、大量のノードペアがクエリされ、最高スコアを持つペアのみがエッジとして扱われます。これに触発されて、リンク予測タスクをランキング問題として定義し、1つのポジティブエッジに対して複数のネガティブエッジをサンプリングします。具体的には、与えられたポジティブエッジ(s、d、t)において、ソースノードsとタイムスタンプtを固定し、q個の異なる宛先ノードdをサンプリングします。各データセットでは、qは評価完全性とテストセットの推論時間のトレードオフに基づいて選択されます。q個のネガティブサンプルのうち、半分は一様にランダムにサンプリングされ、残りの半分は過去のネガティブエッジ(トレーニングセットで観察されたがt時点では存在しないエッジ)です。
パフォーマンスメトリック。このタスクでは、フィルタリングされた平均相互順位(MRR)をメトリックとして使用します。MRRはランキング問題に適した指標であり、本来は推薦システムと知識グラフの文献で一般的に使用されています。
小規模データセットの結果。小さなtgbl-wiki
データセットとtgbl-review
データセットでは、最も優れたモデルは大きく異なることが観察されます。さらに、tgbl-wiki
のトップパフォーマンスモデル(CAWNとNATなど)は、tgbl-review
ではパフォーマンスが大幅に低下しています。その理由として考えられるのは、tgbl-review
データセットがtgbl-wiki
データセットに比べてサプライズインデックスが高いことです。高いサプライズインデックスは、テストセットのエッジの高い比率がトレーニングセットで観察されないことを示しており、より多くの帰納的な推論がtgbl-review
には必要です。tgbl-review
では、GraphMixerとTGATが最も優れたモデルです。tgbl-wiki
では可能なネガティブをすべてサンプリングし、tgbl-review
では各ポジティブエッジごとに100個のネガティブをサンプリングできるようになっています。
これらのデータセットでは、多くの手法がGPUメモリを使い果たすため、TGN、DyRep、またはEdgebankのようなGPUメモリ要件の低い手法を比較しています。ただし、一部のデータセット(たとえばtgbl-comment
やtgbl-flight
)は複数年にわたり展開されているため、長い時間軸で分布のシフトが起こる可能性があります。
洞察。上記のtgbl-wiki
の例では、評価に使用されるネガティブサンプルの数はモデルの性能に大きな影響を与えることがわかります。ネガティブサンプルの数が20からすべての目的地に増加すると、ほとんどの手法で性能の低下が見られます。これは、頑健な評価にはより多くのネガティブサンプルが必要であることを確認しています。興味深いことに、CAWNやEdgebankなどの手法は性能の低下が比較的少なく、なぜ特定の手法が影響を受けにくいのかについては、今後の調査の課題とします。
次に、TGメソッドのトレーニングと検証の時間には2桁違いの差があり、ヒューリスティックなベースラインであるEdgebankが常に最も高速であることがわかります(単なるハッシュテーブルとして実装されているため)。これは、モデルの効率と拡張性を改善することが重要な未来の方向性であり、TGBで提供される大規模なデータセットで新しいモデルや既存のモデルをテストできるようにする必要があることを示しています。
動的ノードプロパティの予測
動的ノードプロパティの予測の目標は、任意のタイムスタンプtでノードのプロパティを予測することです。動的ノードラベルを持つ大規模な公開TGデータセットが不足しているため、ノードの親和性予測タスクを紹介し、時間的なグラフ上でのノードレベルのタスクを調査しています。ノードラベル付きの新しいデータセットを提供していただける場合は、お問い合わせください。
ノード親和性の予測。このタスクでは、一部のノード(ユーザーなど)が他のノード(アイテムなど)に対する親和性、および時間の経過に伴う親和性の変化を考慮します。このタスクは、たとえば推薦システムにおいて重要であり、ユーザーの異なるアイテムに対する好みを時間の経過に応じてモデル化することが重要です。ここでは、予測されたアイテムの相対的な順序を正解データと比較するために、トップ10アイテムのノーマライズされた割引累積利得(NDCG@10)を使用します。ラベルは、将来の期間におけるユーザーの異なるアイテムとの相互作用の頻度をカウントすることで生成されます。
結果。このタスクでは、TGモデルと2つの単純なヒューリスティック(持続予測と移動平均)を比較しています。ここで重要な観察結果は、単純なヒューリスティック(持続予測および移動平均)がTGメソッドと競合し、ほとんどの場合でこれらを上回る強力な性能を発揮していることです。これは、将来的にノードレベルのタスクのためにより多くのTGメソッドを開発する必要があることを示しています。
TGBの始め方
TGBの使用方法は?上記はTGBの機械学習パイプラインを示しています。データセットを自動的にダウンロードして、numpy
、PyTorch
、およびPyG
互換のデータ形式に変換することができます。ユーザーは自分自身のTGモデルを設計するだけで、TGBの評価器を使用して容易にテストすることができます。また、公開されているオンラインのTGBリーダーボードが、時間的グラフ領域の最近の進歩を追跡するのに役立ちます。パッケージのインストールも簡単です:
pip install py-tgb
最後に、モデルのパフォーマンスをTGBリーダーボードに提出することができます。再現性のために、コードへのリンクとアプローチを説明する論文を提供していただくことをお願いしています。提出するには、Googleフォームに記入してください。
結論と今後の展望
時間的グラフ上の機械学習のために現実的で再現性のある評価を可能にするために、私たちはTemporal Graph Benchmarkを提案しました。TGBデータセットと評価により、モデルのパフォーマンスがデータセットごとに大きく異なることがわかりました。したがって、時間的グラフドメインの多様な範囲で評価する必要性を示しています。さらに、ノードの関連性予測タスクでは、簡単なヒューリスティクスがTGメソッドを上回りますので、将来的にはノードレベルのTGモデルの開発を促すものです。
PyGへの統合。Matthias Fey(Kumo.AI)氏、PyGのコアリーダーは、PyGの将来のバージョンにTGBが統合されると2023年のStanford Graph Learning Workshopで発表しました。お楽しみに!
TGXライブラリ。私たちは現在、時間的グラフのためのユーティリティと可視化のPythonライブラリであるTGXを開発しています。TGXはTGBおよびPoursafaei et al. 2022から20の組み込みの時間的グラフデータセットをサポートしています。
コミュニティのフィードバックとデータセットの貢献。TGBはコミュニティ主導のプロジェクトであり、メールやGithubの問題を通じて提案をくれたすべてのコミュニティメンバーに感謝いたします。もし提案やTGBへの新しいデータセットの貢献をしたい場合は、メールまたはGithubでイシューを作成してください。特に動的ノードやグラフの分類タスクに適した大規模なデータセットを求めています。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles