开源
Ann-visualizer:用于可视化人工神经网络的 Python 库
来源:元经纪     阅读:812
网站管理员
发布于 2023-01-29 07:24
查看主页

概述

用于可视化人工神经网络(Artificial Neural Networks ,ANN)的 Python 库。

这是一个很棒的可视化 python 库,用于与 Keras 一起工作。它使用 python 的 graphviz 库来创建您正在构建的神经网络的可呈现图。

2.0 版已发布!

ann_visualizer 2.0 版现已发布!社区需要 CNN 可视化工具,因此我们更新了模块。您可以查看下面的 CNN 可视化示例!

安装

[hidecontent type="logged" desc="隐藏内容:登录后可查看"]

自 Github

  1. ann_visualizer从 github 存储库下载文件夹。
  2. ann_visualizer文件夹放在与主 python 脚本相同的目录中。

从点子

使用以下命令:

pip3 install ann_visualizer

确保你已经安装了 graphviz。安装使用:

sudo apt-get install graphviz && pip3 install graphviz

用法

from ann_visualizer.visualize import ann_viz;
#Build your model here
ann_viz(model)

文档

ann_viz(model, view=True, filename="network.gv", title="MyNeural Network")

  • model- Keras 顺序模型
  • view- 如果为真,则在执行后打开图形预览
  • filename- 在哪里保存图形。(.gv 文件格式)
  • title- 图表的标题

示例人工神经网络

import keras;
from keras.models import Sequential;
from keras.layers import Dense;

network = Sequential();
        #Hidden Layer#1
network.add(Dense(units=6,
                  activation='relu',
                  kernel_initializer='uniform',
                  input_dim=11));

        #Hidden Layer#2
network.add(Dense(units=6,
                  activation='relu',
                  kernel_initializer='uniform'));

        #Exit Layer
network.add(Dense(units=1,
                  activation='sigmoid',
                  kernel_initializer='uniform'));

from ann_visualizer.visualize import ann_viz;

ann_viz(network, title="");

这将输出:

CNN 示例

import keras;
from keras.models import Sequential;
from keras.layers import Dense;
from ann_visualizer.visualize import ann_viz
model = build_cnn_model()
ann_viz(model, title="")

def build_cnn_model():
  model = keras.models.Sequential()

  model.add(
      Conv2D(
          32, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          32, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(MaxPooling2D(pool_size=(2, 2)))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          64, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          64, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(MaxPooling2D(pool_size=(2, 2)))
  model.add(Dropout(0.2))

  model.add(Flatten())
  model.add(Dense(512, activation="relu"))
  model.add(Dropout(0.2))

  model.add(Dense(10, activation="softmax"))

  return model

这将输出(由于图片太长这里放链接)https://camo.githubusercontent.com/0063303452173a0aec9c37b624048b203bfb681757f5b43207e7dfe790e0230f/68747470733a2f2f692e696d6775722e636f6d2f7633517041436c2e706e67

[/hidecontent]

 
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
小屏幕+大电池+骁龙8gen4顶级芯片,是梦想中“情机”吗?
fcnt发布arrowswe2系列:支持脉搏神经监测
网友曝航班发放过期坚果包 签保密协议后补偿1千!吉祥航空回应
我国首个核电工业操作系统发布 每秒可捕捉200万个数据波动
台风“摩羯”爆发式增强:将成为近十年影响海南最强台风

首页

分类

定制方案

消息

我的