Databricks でのグラフとネットワーク分析
この記事では、グラフ分析のための Databricks 機能の概要と、グラフの基本的な概念の概要について説明します。 グラフは、特にソーシャルネットワークや通信ネットワークなど、特定の研究分野の文脈では、一般にネットワークとも呼ばれます。
グラフは、エッジによって接続された頂点のセットです。 頂点はノードとも呼ばれ、エッジはリンク、リレーションシップ、またはアークと呼ばれることもあります。 たとえば、ソーシャルネットワークは人々の間のつながりを表しています。 その他の例としては、都市間のフライト、トレーニング、バス接続などの交通ネットワークや、サーバー間でインターネット トラフィックを伝送するケーブルなどのテレコミュニケーション ネットワークなどがあります。 グラフ処理は、詐欺や脅威の検出、製品の推奨などの分野でも一般的に使用されます。 多くのビジネス上の問題は、グラフ処理によるネットワークの理解と分析から恩恵を受けており、機械学習などの他のアナリティクス手法と組み合わせると特に強力です。
この図は簡単な例を示しています。 このネットワークのノードは、西ヨーロッパと中央ヨーロッパの6か国です。 図の線 (エッジ) は、2 つの国が国境を共有していることを示しています。
Databricks Runtime ML には、あらゆる規模の問題に対応するネットワーク分析パッケージが含まれています。 1 つのコンピュート ノードで処理できる比較的小規模なネットワークの場合は、 NetworkX を使用します。 分散処理が必要な大規模なネットワークの場合は、 GraphFrames を使用します。 また、必要に応じて追加のオープンソースパッケージをインストールしたり、グラフの処理や視覚化のために外部のパートナーやツールに接続したりすることもできます。
この記事の残りの部分では、ネットワーク分析の基本的な概念について説明し、NetworkX パッケージを使用してそれらの概念の一部を説明するノートブックが含まれています。
グラフ解析とネットワーク解析の概念
このセクションでは、ネットワーク解析の基本概念の一部について説明します。
ノードとエッジ
ネットワーク解析では、ネットワーク(グラフ)は、ノードのセットと、ノードを接続するエッジ(リンク)のセットで構成されます。 ノードは、人や都市など、接続されているものを表します。 エッジは、一緒に働いた人や、それらの間に直接リンクを持つトレーニングする ステーションなど、それらの間の接続または関係を表します。
ノードは、頂点、点、またはエンティティとも呼ばれます。 エッジは、ライン、リレーションシップ、またはリンクとも呼ばれます。
ネットワークとノードのプロパティ
最短パス
最短パスは、2 つのノード間の最小距離であり、アカウント 方向リンクと、オプションでエッジの重みを考慮します。 たとえば、前の図では、ノード Germany と Spain の間の最短パスはフランスを経由し、パス距離は 2 です。
中心
中心性は、ネットワーク内のノードの重要性を測定する方法です。 中心性にはいくつかの異なる尺度があります。 ノードの次数中心性は、ノードが直接接続されているネットワーク内のノードの割合に基づいています。 ノードの媒介中心性は、ノードを通過するネットワーク内の最短パスの割合です。