代码改变世界

随笔分类 - 深度学习框架

MXNet的新接口Gluon

2018-03-16 17:41 by ☆Ronny丶, 2072 阅读, 收藏, 编辑
摘要:为什么要开发Gluon的接口 在MXNet中我们可以通过 模块来定义神经网络,并组通过 模块提供的一些上层API来简化整个训练过程。那MXNet为什么还要重新开发一套Python的API呢,是否是重复造轮子呢?答案是否定的,Gluon主要是学习了Keras、Pytorch等框架的优点,支持动态图(I 阅读全文

将数据加载到网络

2018-03-15 17:48 by ☆Ronny丶, 1189 阅读, 收藏, 编辑
摘要:训练一个机器学习深度学习模型一般可以简单概括为以下三个步骤: 准备数据 定义网络结构 训练 我们可以把整个过程用下面的一个Pipeline图例来表示。 其中的 就主要负责把数据按一定的格式 到深度学习网络的输入层上。不同的深度学习框架对为放进网络中的数据格式要求不一样。在MXNet中对于Module 阅读全文

利用Module模块把构建的神经网络跑起来

2018-03-15 09:51 by ☆Ronny丶, 4570 阅读, 收藏, 编辑
摘要:训练一个神经网络往往只需要简单的几步: 1. 准备训练数据 2. 初始化模型的参数 3. 模型向往计算与向后计算 4. 更新模型参数 5. 设置相关的checkpoint 如果上述的每个步骤都需要我们写Python的代码去一步步实现,未免显的繁琐,好在MXNet提供了Module模块来解决这个问题, 阅读全文

使用Sybmol模块来构建神经网络

2018-03-09 11:57 by ☆Ronny丶, 1314 阅读, 收藏, 编辑
摘要:符号编程 在 "之前的文章" ,我们介绍了NDArray模块,它是MXNet中处理数据的核心模块,我们可以使用NDArray完成非常丰富的数学运算。实际上,我们完全可以使用NDArray来定义神经网络,这种方式我们称它为 命令式的编程风格 ,它的优点是编写简单直接,方便调试。像下面我们就定义了一个两 阅读全文

使用MXNet的NDArray来处理数据

2018-03-06 14:29 by ☆Ronny丶, 10858 阅读, 收藏, 编辑
摘要:"NDArray.ipynb" NDArray介绍 机器学习处理的对象是数据,数据一般是由外部传感器(sensors)采集,经过数字化后存储在计算机中,可能是文本、声音,图片、视频等不同形式。 这些数字化的数据最终会加载到内存进行各种清洗,运算操作。 几乎所有的机器学习算法都涉及到对数据的各种数学运 阅读全文

在Docker容器中搭建MXNet/Gluon开发环境

2018-03-02 16:38 by ☆Ronny丶, 2662 阅读, 收藏, 编辑
摘要:在这篇文章中没有直接使用MXNet官方提供的docker image,而是从一个干净的nvidia/cuda镜像开始,一步一步部署mxnet需要的相关软件环境,这样做是为了更加细致的了解mxnet的运行环境,方便后续我们更加灵活的去修改相关的配置。 1. 通过docker创建干净的系统环境 这里镜像 阅读全文