PAI实现的深度学习网络可视化编辑功能-FastNeuralNetwork

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
简介: 在深度学习领域流传着这样一句话,“一张好的表示图,胜过一千个公式” 本文会介绍如何通过PAI-DSW中的FastNerualNetwork功能实现深度学习网络的可视化编辑。 神经网络最早诞生于生物领域,用来模仿生物大脑复杂的神经元构成,后来人类为了探索大脑是如何思考,通过一层一层的数学公式来模拟大脑分析事物的过程。
在深度学习领域流传着这样一句话,“一张好的表示图,胜过一千个公式”
本文会介绍如何通过PAI-DSW中的FastNeuralNetwork功能实现深度学习网络的可视化编辑。

PAI产品入口:https://data.aliyun.com/product/learn
神经网络最早诞生于生物领域,用来模仿生物大脑复杂的神经元构成,后来人类为了探索大脑是如何思考,通过一层一层的数学公式来模拟大脑分析事物的过程。再后来就有了深度学习框架,人们可以通过代码去构建深度学习网络,复杂的深度学习网络通常由几十行甚至几百行代码构成,每一层网络又由许多参数组成,如下图:

当层数增多,通过代码去构建深度学习网络变的困难,并且难以维护和调整。FastNeuralNetwork功能可以将深度学习构图代码一键式转化成网络架构图,并且可以实现可视化编辑,大大增强了模型解读性和可维护性,如下图:

下面就介绍下如何使用FastNeuralNetwork功能。

功能介绍

1.创建

进入DSW,目前只有KerasCode和KerasGraph两个Kernel实现了FastNeuralNetwork功能。

  • KerasCode:先写深度学习网络代码,然后将代码转成图
  • KerasGraph:直接通过画布构建深度学习网络,并且将图转成代码

也可以通过左侧Demo列表提供的官方代码FNNDemo直接使用。

2.Magic Command介绍

打开Keras Code功能进入交互式开发页面,先通过代码构建深度学习网络。如以下示例代码:

import keras
from keras.models import Model
from keras.models import Sequential
from keras.layers import Conv2D, Dense, MaxPooling2D, Flatten, Dropout
from keras.initializers import VarianceScaling, Zeros

model = Sequential()
model.add(MaxPooling2D(padding='valid', data_format='channels_last', pool_size=(2, 2), strides=(2, 2), trainable=True))
model.add(Conv2D(dilation_rate=(1, 1), padding='valid', data_format='channels_last', bias_initializer=Zeros(), use_bias=True, filters=64, strides=(1, 1), trainable=True, kernel_initializer=VarianceScaling(mode='fan_avg', seed=None, scale=1.0, distribution='uniform'), activation='relu', kernel_size=(3, 3)))
model.add(MaxPooling2D(padding='valid', data_format='channels_last', pool_size=(2, 2), strides=(2, 2), trainable=True))
model.add(Dropout(rate=0.25, trainable=True))
model.add(Flatten(data_format='channels_last', trainable=True))
model.add(Dense(bias_initializer=Zeros(), use_bias=True, units=128, trainable=True, kernel_initializer=VarianceScaling(mode='fan_avg', seed=None, scale=1.0, distribution='uniform'), activation='relu'))
model.add(Dropout(rate=0.4, trainable=True))
model.add(Dropout(rate=0.2))

代码中构建了一个Sequential模型,模型对象是model,可以通过输入Magic Command 将代码转化成图

%show_model model

点击图片进入画图编辑界面:

3.编辑网络

FNN功能实现了Keras的原生Cell向画布拖拽并且编辑的功能,画布分为Cell列表区,画布编辑区和参数配置区。

相同作用的Cell会自动编排成组:

画布中的组件会跟代码做自动映射:

4.代码保存

点击To Code按钮弹窗,提示通过画布的修改会导致代码有哪些变化:

点击ok,即可在原有代码文件中生成新的模型构建代码。

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
21天前
|
机器学习/深度学习 存储 算法
深度学习500问——Chapter02:机器学习基础(4)
深度学习500问——Chapter02:机器学习基础(4)
39 0
|
21天前
|
机器学习/深度学习 数据可视化 算法
深度学习之梯度下降参数可视化
深度学习之梯度下降参数可视化
53 2
|
21天前
|
机器学习/深度学习 算法 大数据
机器学习与深度学习介绍
机器学习与深度学习介绍
|
21天前
|
机器学习/深度学习 人工智能 自然语言处理
大数据分析的技术和方法:从深度学习到机器学习
大数据时代的到来,让数据分析成为了企业和组织中不可或缺的一环。如何高效地处理庞大的数据集并且从中发现潜在的价值是每个数据分析师都需要掌握的技能。本文将介绍大数据分析的技术和方法,包括深度学习、机器学习、数据挖掘等方面的应用,以及如何通过这些技术和方法来解决实际问题。
75 2
|
21天前
|
人工智能 异构计算
基于PAI-DSW使用SD WebUI实现AI扩图功能
在本教程中,您将学习如何在阿里云交互式建模(PAI-DSW)中,使用Stable-Diffusion-WebUI实现AI扩图功能。
基于PAI-DSW使用SD WebUI实现AI扩图功能
|
21天前
|
机器学习/深度学习 算法 数据可视化
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-2
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
112 0
|
21天前
|
机器学习/深度学习 Ubuntu Linux
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)-1
计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)
74 1
|
21天前
|
机器学习/深度学习 人工智能 流计算
人工智能平台PAI 操作报错合集之在集群上提交了包含alink相关功能的flink任务,但是却报错如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
21天前
|
机器学习/深度学习 数据可视化 Linux
深度学习模型可视化工具——Netron使用介绍
深度学习模型可视化工具——Netron使用介绍
139 2
|
21天前
|
机器学习/深度学习 运维 算法
深度学习500问——Chapter02:机器学习基础(5)
深度学习500问——Chapter02:机器学习基础(5)
43 0

热门文章

最新文章

相关产品

  • 人工智能平台 PAI