0

Graphviz を使用して、基本的なニューラル ネットワークの状態を把握しようとしています。入力層には 14 個のニューロンがあり、出力層には 1 個のニューロンしかありません。隠れ層の数と、各層内にあるニューロンの数を選択できます。通常、隠れ層は 1 つだけです。ただし、この層内のニューロンの数はかなり大きくなる可能性があります (1000 など)。しかし、デモンストレーションの目的で、必要なニューロンは 5 つだけです (何百ものニューロンの有用な画像が得られないことは承知しています)。そうしたいです:

  • 各ニューロン間のエッジ (接続) の重みを書きます
  • 重みに応じてエッジの厚さを変更します
  • 多分各レイヤーにラベルを付ける

太さについては、「ペン幅」を使用できることを知っています。また、各レイヤーを境界付けてラベルを付けるのに役立つクラスターについても知っています。これまでの主な問題は、入力層 (14 個のニューロン) と非表示層の間にエッジが多すぎて、Graphiz が鮮明な画像を生成できないことです。接続の重みを表示するラベルを追加すると、さらに悪化します。入力レイヤーと非表示レイヤーの間にスペースを追加すると、レンダリングの読みやすさが向上すると思いますが、長い研究にもかかわらず、その方法が見つかりませんでした。

現在のニューラル ネットワークのレンダリング (重みなし)

この画像の背後にある自動生成されたドット コードは次のとおりです。

digraph graphname {
0.0 -> 1.0;
0.1 -> 1.0;
0.2 -> 1.0;
0.3 -> 1.0;
0.4 -> 1.0;
0.5 -> 1.0;
0.6 -> 1.0;
0.7 -> 1.0;
0.8 -> 1.0;
0.9 -> 1.0;
0.10 -> 1.0;
0.11 -> 1.0;
0.12 -> 1.0;
0.13 -> 1.0;
0.0 -> 1.1;
0.1 -> 1.1;
0.2 -> 1.1;
0.3 -> 1.1;
0.4 -> 1.1;
0.5 -> 1.1;
0.6 -> 1.1;
0.7 -> 1.1;
0.8 -> 1.1;
0.9 -> 1.1;
0.10 -> 1.1;
0.11 -> 1.1;
0.12 -> 1.1;
0.13 -> 1.1;
0.0 -> 1.2;
0.1 -> 1.2;
0.2 -> 1.2;
0.3 -> 1.2;
0.4 -> 1.2;
0.5 -> 1.2;
0.6 -> 1.2;
0.7 -> 1.2;
0.8 -> 1.2;
0.9 -> 1.2;
0.10 -> 1.2;
0.11 -> 1.2;
0.12 -> 1.2;
0.13 -> 1.2;
0.0 -> 1.3;
0.1 -> 1.3;
0.2 -> 1.3;
0.3 -> 1.3;
0.4 -> 1.3;
0.5 -> 1.3;
0.6 -> 1.3;
0.7 -> 1.3;
0.8 -> 1.3;
0.9 -> 1.3;
0.10 -> 1.3;
0.11 -> 1.3;
0.12 -> 1.3;
0.13 -> 1.3;
0.0 -> 1.4;
0.1 -> 1.4;
0.2 -> 1.4;
0.3 -> 1.4;
0.4 -> 1.4;
0.5 -> 1.4;
0.6 -> 1.4;
0.7 -> 1.4;
0.8 -> 1.4;
0.9 -> 1.4;
0.10 -> 1.4;
0.11 -> 1.4;
0.12 -> 1.4;
0.13 -> 1.4;
1.0 -> 2.0;
1.1 -> 2.0;
1.2 -> 2.0;
1.3 -> 2.0;
1.4 -> 2.0;
}

このコードでは、ニューロンは LAYER_NUMBER.NEURON_NUMBER のように番号付けされています。写真ではニューロンが正しい順序で表示されていないことに注意してください。この問題も解決できませんでした...

助けてくれてありがとう。

4

1 に答える 1

0

以下は、いくつかの異なるアイデアを含むグラフです。

ranksep は「ランク」間の距離を広げます。margin はノードを大きくします。(おそらくこれを行うより良い方法があります。)

各ノードに色を付け、そのノードの各エッジがすべて同じ色相を使用するようにします。読みやすくするために、その色相のノードを明るくし、エッジを暗くすることができます。#rrggbb 表記をサポートしているため、色名の使用について心配する必要はありません。

このような色を使用すると、複雑なグラフの視覚的な明瞭さが大幅に向上することがわかりました。エッジに色を付けると、エッジをたどるのがはるかに簡単になります。重みが小さいものは、かろうじて見えるか、完全に見えないようにすることができます。

この着色のもう1つの利点は、実際のニューロンを染色するアプローチを反映できることです。インスピレーションについては、これを参照してくださいhttp://neuroimages.tumblr.com

digraph graphname {
graph [rankdir="LR" ranksep="3.0"]
node [style=filled];
edge [penwidth="0.5" color="#e0e0e0"];

0.1 [fillcolor="cadetblue"];
0.2 [fillcolor="coral"];
0.3 [fillcolor="green"];
0.4 [fillcolor="gold"];
0.6 [fillcolor="cyan"];

1.0 [margin=0.4];
1.1 [margin=0.4];
1.2 [margin=0.4];
1.3 [margin=0.4];
1.4 [margin=0.4];

0.0 -> 1.0;
0.1 -> 1.0 [color="cadetblue1" penwidth="1"];
0.2 -> 1.0 [color="coral2" penwidth="2"];
0.3 -> 1.0 [color="green3" penwidth="6"];
0.4 -> 1.0 [color="gold4" penwidth="8"];
0.5 -> 1.0;
0.6 -> 1.0;
0.7 -> 1.0;
0.8 -> 1.0;
0.9 -> 1.0;
0.10 -> 1.0;
0.11 -> 1.0;
0.12 -> 1.0;
0.13 -> 1.0;
0.0 -> 1.1;
0.1 -> 1.1 [color="cadetblue2" penwidth="2"];
0.2 -> 1.1 [color="coral3" penwidth="5"];
0.3 -> 1.1 [color="green4" penwidth="8"];
0.4 -> 1.1; 
0.5 -> 1.1 [color="cyan1" penwidth="1"];
0.6 -> 1.1;
0.7 -> 1.1;
0.8 -> 1.1;
0.9 -> 1.1;
0.10 -> 1.1;
0.11 -> 1.1;
0.12 -> 1.1;
0.13 -> 1.1;
0.0 -> 1.2;
0.1 -> 1.2 [color="cadetblue3"  penwidth="3"];
0.2 -> 1.2 [color="coral4"  penwidth="6"];
0.3 -> 1.2;
0.4 -> 1.2 [color="gold1" penwidth="1"];
0.5 -> 1.2 [color="cyan2" penwidth="2"];
0.6 -> 1.2;
0.7 -> 1.2;
0.8 -> 1.2;
0.9 -> 1.2;
0.10 -> 1.2;
0.11 -> 1.2;
0.12 -> 1.2;
0.13 -> 1.2;
0.0 -> 1.3;
0.1 -> 1.3 [color="cadetblue4" penwidth="4"];
0.2 -> 1.3;
0.3 -> 1.3 [color="green1" penwidth="1"];
0.4 -> 1.3 [color="gold2" penwidth="2"];
0.5 -> 1.3 [color="cyan3" penwidth="3"];
0.6 -> 1.3;
0.7 -> 1.3;
0.8 -> 1.3;
0.9 -> 1.3;
0.10 -> 1.3;
0.11 -> 1.3;
0.12 -> 1.3;
0.13 -> 1.3;
0.0 -> 1.4;
0.1 -> 1.4 [color="cadetblue4"  penwidth="2"];
0.2 -> 1.4 [color="coral4" penwidth="2"];
0.3 -> 1.4 [color="green4" penwidth="2"];
0.4 -> 1.4 [color="gold4" penwidth="2"];
0.5 -> 1.4 [color="cyan4" penwidth="2"];
0.6 -> 1.4;
0.7 -> 1.4;
0.8 -> 1.4;
0.9 -> 1.4;
0.10 -> 1.4;
0.11 -> 1.4;
0.12 -> 1.4;
0.13 -> 1.4;
1.0 -> 2.0;
1.1 -> 2.0;
1.2 -> 2.0;
1.3 -> 2.0;
1.4 -> 2.0;
}
于 2013-04-02T03:23:54.860 に答える