ニューラル ネットワーク(Keras)
TensorFlow マシンの学習ライブラリのハイレベルインターフェイスである Keras は、Graphviz を使用してニューラルネットワークの接続方法を視覚化します。これは、結合および分岐を含む非線形ニューラルネットワークに特に役立ちます。
これはシンプルなニューラルネットワークです(Keras Functional API から)。顧客の発行チケットの優先順位を付け、チケットを処理できる部署にルーティングします。Keras の model_to_dot
関数 を使用して生成されます。
このモデルには 3 つの入力があります
- 問題のタイトル テキスト
- 問題の本文テスト
- 問題のタグ
と 2 つの出力があります
- 予測優先順位
- 予測部門
各ノードには入力と出力行列の形状(長さ、幅)というラベルが付けられます。None
は、形状がまだ決まっていない場合、形状がこのモデルを訓練する最終的なデータによって異なる場合に表示されます。
[入力 .gv ファイル] [SVG] [ラスター画像]
neural-network.gv.txt
digraph G {
fontname="Helvetica,Arial,sans-serif"
node [fontname="Helvetica,Arial,sans-serif"]
edge [fontname="Helvetica,Arial,sans-serif"]
concentrate=True;
rankdir=TB;
node [shape=record];
140087530674552 [label="title: InputLayer\n|{input:|output:}|{{[(?, ?)]}|{[(?, ?)]}}"];
140087537895856 [label="body: InputLayer\n|{input:|output:}|{{[(?, ?)]}|{[(?, ?)]}}"];
140087531105640 [label="embedding_2: Embedding\n|{input:|output:}|{{(?, ?)}|{(?, ?, 64)}}"];
140087530711024 [label="embedding_3: Embedding\n|{input:|output:}|{{(?, ?)}|{(?, ?, 64)}}"];
140087537980360 [label="lstm_2: LSTM\n|{input:|output:}|{{(?, ?, 64)}|{(?, 128)}}"];
140087531256464 [label="lstm_3: LSTM\n|{input:|output:}|{{(?, ?, 64)}|{(?, 32)}}"];
140087531106200 [label="tags: InputLayer\n|{input:|output:}|{{[(?, 12)]}|{[(?, 12)]}}"];
140087530348048 [label="concatenate_1: Concatenate\n|{input:|output:}|{{[(?, 128), (?, 32), (?, 12)]}|{(?, 172)}}"];
140087530347992 [label="priority: Dense\n|{input:|output:}|{{(?, 172)}|{(?, 1)}}"];
140087530711304 [label="department: Dense\n|{input:|output:}|{{(?, 172)}|{(?, 4)}}"];
140087530674552 -> 140087531105640;
140087537895856 -> 140087530711024;
140087531105640 -> 140087537980360;
140087530711024 -> 140087531256464;
140087537980360 -> 140087530348048;
140087531256464 -> 140087530348048;
140087531106200 -> 140087530348048;
140087530348048 -> 140087530347992;
140087530348048 -> 140087530711304;
}