Графвиз не рисует граф

Я пытаюсь визуализировать график нейронной сети, созданный с помощью mxnet inn python. Код показан ниже

net = mx.sym.Variable('data')    
net = mx.sym.FullyConnected(data=net, name='fc1', num_hidden=128)    
net = mx.sym.Activation(data=net, name='relu1', act_type="relu")    
net = mx.sym.FullyConnected(data=net, name='fc2', num_hidden=10)    
net = mx.sym.SoftmaxOutput(data=net, name='out')    
mx.viz.plot_network(net, shape={'data':(100,200)})  

Последняя строка выполняется без ошибок, и я вижу это сообщение - graphviz.dot.Digraph at 0x262f91b8e10>

Но я не вижу ни одного графика. Обратите внимание, что я установил graphviz.

2 ответа

Я не уверен, если это ваша проблема или нет. Но в Ubuntu, по крайней мере, вам нужно установить graphviz дважды: как в виде отдельного пакета, так и в виде привязок Python отдельно.

sudo apt-get install -y graphviz
sudo pip install graphviz

Если вы сделаете все это и окажетесь в блокноте jupyter, у объекта graphviz есть метод (я забыл, как он называется), который jupyter анализирует и вызывает для отрисовки чертежа.

Если вы находитесь в командной строке ipython или python shell, он, конечно, не будет отображать чертеж, потому что он не может отображать графику.

Мне пришлось добавить путь к двоичным файлам graphviz в моей переменной окружения PATH, и, как предложено unubtu, я назвал a.render() который создал файл PDF с графиком в нем.

Другие вопросы по тегам