Apache MXNet 版本 0.12 扩展了 Gluon 功能以支持前沿的研究

2019 年 11 月 06 日

Apache MXNet 版本 0.12 扩展了 Gluon 功能以支持前沿的研究

上周,Apache MXNet 社区发布了 MXNet 版本 0.12。主要功能是支持 NVIDIA Volta GPU 和 sparse tensor 。该版本还包括一些新的 Gluon 编程接口功能。特别是,可以通过这些功能在您的深度学习模型中轻松开展前沿的研究:

  • 变分丢弃;可用于有效地应用丢弃技术以减轻递归神经网络 (RNN) 中的过拟合问题
  • 卷积 RNN、长短期记忆 (LSTM) 和门控循环单元 (GRU) 单元;可用于对具有基于时间的序列和空间维度的数据集进行建模
  • 七个新的损失函数、导出功能和训练器函数增强功能

变分丢弃 (VariationalDropoutCell) 根据最新的研究提供一种新的工具以减轻 RNN 中的过拟合问题。本文参考了“A Theoretically Grounded Application of Recurrent Neural Networks”“RNNDrop: A Novel Approach for RNNs in ASR”。 _ 过拟合 _ 是一种建模错误,其中拟合的模型与训练数据集非常接近,以至于在查看新数据或测试数据集时,将会降低其预测精度。_ 丢弃 _ 是一种建模技术,它随机地将模型参数归零,以便模型在训练过程中不会过度依赖于任何单个输入或参数。不过,这种技术尚未成功应用于 RNN。迄今为止的研究侧重于仅将丢弃完全随机地应用于输入和输出,即,在 RNN 的所有时间步长中将其归零。变分丢弃消除了这种涵盖所有时间步长的随机性,并在每个时间步长将相同的随机丢弃数组 (或掩码) 应用于 RNN 的输入、输出和隐藏状态。

卷积 RNN、LSTM 和 GRU 单元 (例如,Conv1DRNNCell、Conv1DLSTMCell、Conv1DGRUCell) 简化了具有序列和空间维度 (例如,随时间捕获的视频或图像) 的数据集的建模过程。卷积 LSTM 模型首次成功应用于“Convolutional LSTM Network: A Machine Learning Approach for Precipitation Nowcasting”中介绍的研究。LSTM 网络设计用于分析顺序数据,同时跟踪长期相关性。它们提高了自然语言处理 (NLP) 的技术水平。不过,在应用于数据集空间维度以及具有基于时间的序列的时空使用案例时,它们产生的效果非常有限。时空使用案例的示例包括预测未来六小时香港的不同低洼地区的总降雨量 (如前面引用的研究论文所讨论的一样),或者检测视频是否包含暴力内容。为了识别图像,卷积神经网络 (CNN) 对图像应用卷积运算以使模型能够捕获空间上下文,从而提高了技术水平。卷积 RNN、LSTM 和 GRU 分别将这些卷积运算加入 RNN、LSTM 和 GRU 架构中。

该 MXNet 版本还在 Gluon 支持的损失函数集中增加了七个损失函数:(1) S 形二叉交叉熵损失、(2) 联结主义时间分类 (CTC) 损失、(3) Huber 损失、(4) 铰链损失、(5) 平方铰链损失、(6) 逻辑损失和 (7) 三重损失。损失函数根据某个目标衡量您的模型效果是否良好。这些损失函数使用不同的数学计算来衡量这种效果,因此,它们在模型训练期间对优化过程具有不同的影响。选择损失函数更多地是一门艺术而不是一门科学,并且没有简单的启发式方法帮助确定选择哪个函数。相反,您可以参考对这些损失函数的广泛研究,以了解何时可以成功应用这些损失函数,而何时无法成功应用这些损失函数。

该版本还引入了一些有用的附加功能,例如,导出 API 和训练器优化程序函数的学习速率属性。通过使用导出 API,您可以将神经网络模型架构和相关的模型参数导出为中间格式,可以在以后或不同位置使用该格式加载模型。该 API 仍然是实验性的,因此,尚不支持所有功能。此外,您现在还可以使用新增的训练器学习速率属性设置和读取学习速率。

后续步骤

MXNet 非常容易上手,可以在发行说明中找到该版本的完整更改列表。要了解 Gluon 接口的详细信息,请访问 MXNet 详细信息页面教程

作者介绍:
Vikram Madan 是 AWS 深度学习高级产品经理。他负责开发让深度学习引擎变得更易于使用的产品,工作重点是开源 Apache MXNet 引擎。在业余时间,他喜欢长跑以及看纪录片。

本文转载自 AWS 技术博客。

原文链接:
https://amazonaws-china.com/cn/blogs/china/apache-mxnet-version-0-12-extends-gluon-functionality-to-support-cutting-edge-research/

2019 年 11 月 06 日 08:00 71

评论

发布
暂无评论
发现更多内容

食堂就餐卡系统设计

Season

极客大学架构师训练营

极客时间第0期架构师训练营第一周总结

2流程序员

神奇的梦想

泰稳@极客邦科技

身心健康 个人成长 目标管理

架构师训练营第一周总结

Hugo

架构课程心得

dj_cd

极客大学架构师训练营

第一周.UML课后作业

西柚

UML

论一个前端工程师的自我修养

萧文翰

ios android 开发者 前端 Web

初步架构想法

极客大学架构师训练营

架构师训练营第一周 - 学习总结

Lost Horizon

极客大学架构师训练营

食堂就餐卡系统设计

Lane

架构设计作业1——食堂就餐卡系统设计

Andy风

架构师训练营作业--Week1

吴炳华

游戏夜读 | 毛利率有多少?

game1night

解决出海网络难题 融云保障 MiniJoy 千万印度用户流畅互动

Geek_116789

「架构师训练营」Week01 作业+总结

PowerZhang

极客大学架构师训练营

架构师训练营第一周总结

邵帅

再下一城 三六零收购织语CCwork深化“智慧办公”生态布局

人称T客

讲一个程序员如何副业月赚三万的真实故事

非著名程序员

程序员 独立开发者 副业赚钱 提升认知

UML 建模

师哥

架构师训练营作业

邵帅

【大厂面试04期】讲讲一条MySQL更新语句是怎么执行的?

NotFound9

MySQL 数据库 后端

四个和成长有关的小故事

泰稳@极客邦科技

团队管理 TGO鲲鹏会 团队组织 职业成长

比Webpack更高效的Rollup入门指南

费马

Rollup 打包 前端工程化 webpack

[Go] 写一个守护协程的通用套路是什么?

eddix

golang pattern

剖析Golang Context:从使用场景到源码分析

伴鱼技术团队

golang 源码分析 并发编程 程序语言 Context

8000字长文让你彻底了解 Java 8 的 Lambda、函数式接口、Stream 用法和原理

古时的风筝

函数式接口 Lambda stream Java 25 周年

食堂就餐系统设计

Hugo

食堂就餐卡系统架构设计

dj_cd

极客大学架构师训练营

重学 Java 设计模式:实战装饰器模式(SSO单点登录功能扩展,增加拦截用户访问方法范围场景)

小傅哥

设计模式 小傅哥 重构 代码质量 代码坏味道

架构师训练营第1周学习总结

Season

极客大学架构师训练营

食堂就餐卡系统设计

于成

跨越计算鸿沟:如何靠软硬件协同突破算力瓶颈?

跨越计算鸿沟:如何靠软硬件协同突破算力瓶颈?

Apache MXNet 版本 0.12 扩展了 Gluon 功能以支持前沿的研究-InfoQ