『リンゴールド・ティルフォードアルゴリズムの解説とウォークスルー』

Explaining and walking through the Apple Gold Tilford algorithm

数値例とPythonコードを使用したツリーノードのプロットアルゴリズム

Photo by Sergiu Vălenaș on Unsplash

はじめに

1981年のReingold-Tilfordアルゴリズムは、ノードをツリー構造に配置して可読性を最大化することで、階層データの視覚的に魅力的な表現を作成します。つまり、ツリー内のすべてのノードの(x, y)座標を取得するアルゴリズムです。

論文によると、良いツリーダイアグラムにはいくつかの美的なルールがあります:

1. 同じ深さのノードは直線上に配置され、その深さを定義する直線は平行であるべきです。

2. 左の子ノードは親ノードの左側に、右の子ノードは右側に配置されるべきです(バイナリツリーにのみ適用されます)。

3. 親ノードは子ノードの中央に配置されるべきです。

4. ツリーとその鏡像は互いに反射する図を生成し、部分木はツリー内のどこに出現しても同じように描画されるべきです。

ノードのy座標を決定することは簡単ですが、x座標は少し複雑です。この記事では、他の論文や記事よりもやや複雑なツリー上で数値例を使用してアルゴリズムを説明し、さまざまなシナリオをカバーします。また、異なる用語を区別するために元の論文では使用されていない追加の専門用語も紹介します。

アルゴリズムの重要な直感は、ツリーを左から右にプロットすることです。一番左のノードの座標は(0, 0)と考えることができ、さまざまな部分木はそれに応じて右にシフトします。

おもしろい事実scikit-learn Pythonライブラリもこのアルゴリズムを使用して決定木をプロットしています!

専門用語

すべてのノードの最終座標を決定する前に、3つの用語が重要です。元の論文ではxmodという用語が言及されていますが、私の説明では追加のshiftを使用します…

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

機械学習

「機械学習 vs AI vs ディープラーニング vs ニューラルネットワーク:違いは何ですか?」

テクノロジーの急速な進化は、ビジネスが効率化のために洗練されたアルゴリズムにますます頼ることで、私たちの日常生活を形...

人工知能

ギル・ジェロン、Orca SecurityのCEO&共同創設者-インタビューシリーズ

ギル・ゲロンは、オルカ・セキュリティのCEO兼共同設立者ですギルは20年以上にわたりサイバーセキュリティ製品をリードし、提...

人工知能

ジョナサン・ダムブロット、Cranium AIのCEO兼共同創設者- インタビューシリーズ

ジョナサン・ダムブロットは、Cranium AIのCEO兼共同創業者ですCranium AIは、サイバーセキュリティおよびデータサイエンスチ...

人工知能

ディープAIの共同創業者兼CEO、ケビン・バラゴナ氏- インタビューシリーズ

ディープAIの創設者であるケビン・バラゴナは、10年以上の経験を持つプロのソフトウェアエンジニア兼製品開発者です彼の目標...

人工知能

Aaron Lee、Smith.aiの共同設立者兼CEO - インタビューシリーズ

アーロン・リーさんは、Smith.aiの共同創業者兼CEOであり、AIと人間の知性を組み合わせて、24時間365日の顧客エンゲージメン...

人工知能

「パクストンAIの共同創業者兼CEO、タングイ・シャウ - インタビューシリーズ」

タングイ・ショウは、Paxton AIの共同創設者兼CEOであり、法的研究と起草の負担を軽減するためにGenerative AIを使用するプラ...