我的第一本书《MXNet深度学习实战》

Posted AI之路

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的第一本书《MXNet深度学习实战》相关的知识,希望对你有一定的参考价值。

-------------------------------------------以下为2019年6月6日更新-------------------------------------

目前《MXNet深度学习实战》已经出版,读者可以从淘宝、天猫、当当网、京东等购买。

书籍相关的代码都维护在:https://github.com/miraclewkf/MXNet-Deep-Learning-in-Action, 欢迎大家star,有任何问题都可以在博客或github的issue中留言,多谢支持。

附:天猫搜索mxnet:

本书封面:

----------------------------------------------以下为原文---------------------------------------------

这篇博客介绍下我即将出版的第一本书:《MXNet深度学习实战》,欢迎大家多多支持。

为什么写这本书

2018年3月,华章图书的杨老师在博客上联系我,问我是否有出书意向,内容是深度学习框架方面的实战教学。当时的我使用MXNet和PyTorch框架也有一段时间了,虽然说不上精通,但是用起来还算熟悉,再加上我本人一直以来都喜欢和他人交流算法,并且想完善下自己在深度学习框架方面的知识体系,于是经过一段时间的考虑后,我答应了。

于我而言,MXNet和PyTorch框架我都非常喜欢,因为目前市面上关于MXNet框架的书籍很少,而且MXNet发展至今各种接口比较稳定,用了一年多体验还是挺不错的,所以最终决定以MXNet框架来写这本深度学习实战教程,书中也介绍了个人在算法方面的经验。MXNet是亚马逊官方维护的深度学习框架,在灵活性和高效性方面都做得很棒,个人觉得这个框架是应该受到更多重视的。

写这本书的难度比想象中的要大许多,在写作过程中许多零散的知识点需要想办法串联起来,让不同知识储备的人都能看懂,许多环境依赖需要从头到尾跑一遍,确认清楚。写书和写博客最大的不同点在于书籍在出版后修正比较麻烦,不像博客,随时发现错误都可修改,因此在写作过程中对许多细节和措辞都推敲了很久,自己也从中学到了许多。

关于本书内容

接下来我详细介绍下这本书的内容,希望能遇见适合他的读者。整本书共12章,分为准备篇、基础篇、实战篇和扩展篇4大部分,前面10章都是基于MXNet高效的符号式编程进行介绍,最后2章介绍MXNet推出的命令式编程接口Gluon和用于计算机视觉的工具库GluonCV,具体内容如下:

  • 准备篇
  1. 第1章介绍人工智能、机器学习、深度学习、深度学习框架之间的关系,帮助读者理清名词。此外还将介绍MXNet框架的基础知识、发展历程、优势特点、和其他深度学习框架的对比等。
  2. 第2章介绍MXNet的不同安装方式,涉及显卡驱动、cuda、cudnn等介绍,尤其介绍了Docker,一种常用的环境隔离工具,目前在工业界应用十分广泛。目前安装MXNet非常简单,例如CPU版本的安装只需要一行pip命令就可以完成。
  • 基础篇
  1. 第3章介绍MXNet的几个基础组成:NDArray、Symbol和Module,分别对应基础数据结构、网络层、整体网络,是层层递进的关系,MXNet高效的静态图主要就是通过Symbol模块实现的。
  2. 第4章介绍基于MNIST手写书字体分类的训练和测试,是一个非常适合新手入门的算法例子,涉及常用的几个模块划分,比如数据读取、网络结构搭建、训练参数配置、模型导入等。
  3. 第5章介绍MXNet框架的数据读取和数据增强操作,涉及基于原图像和MXNet框架使用的RecordIO文件两种读取方式的对比;数据增强操作是模型训练过程中非常重要的步骤,因此将详细介绍常用数据增强操作,包括不同形式的resize、crop和镜像、色彩变化等,通过实际图像对比理解这些操作的含义。
  4. 第6章介绍常用网络层,比如卷积层、池化层、激活层、全连接层、损失函数层等,通过实际数据演示这些层的具体计算过程和维度变化过程。另外这一章简要介绍目前计算机视觉领域广泛使用的算法网络,比如VGG、ResNet、DenseNet等。
  5. 第7章介绍模型训练的配置,比如参数初始化、优化函数设置、训练日志保存、评价指标的定义与选择等,还将介绍迁移学习、断点训练的含义。
  • 实战篇
  1. 第8章介绍图像分类算法,以kaggle比赛中的猫狗分类为例介绍如何在实际数据中应用图像分类算法,涉及常用评价指标介绍、训练调优、迁移学习、固定网络层参数等。
  2. 第9章介绍目标检测算法,以SSD算法为例,内容包括任务定义、网络结构的搭建、模型的训练及测试等细节。对数据集准备和评价指标、IOU、NMS等计算细节做详细介绍。
  3. 第10章介绍图像分割算法,以语义分割中的FCN算法为例介绍语义分割算法的定义、相关指标的介绍、如何训练模型、如何测试模型等过程,另外还会介绍自定义评价指标、自定义数据读取接口的实现。
  • 扩展篇
  1. 第11章介绍MXNet框架的Gluon接口,包括Gluon接口中比较重要的data、nn、model zoo等模块,用户可以通过这些接口灵活构建网络结构,同时可以将基于动态图构建好的网络结构转换成静态图进行训练或测试,兼顾灵活和高效。
  2. 第12章介绍GluonCV库,这是MXNet推出的一个专门为计算机视觉任务服务的深度学习库,包含常用公开数据集的读取接口、常用算法的网络结构读取和预训练模型下载接口等,部分复现的算法结果都优于原论文算法的结果。这一章还会重点解读复现论文的代码细节,方便有需要的同学学习。目前MXNet官方也在强力推这个库,用起来体验真的很棒。

这本书的代码后期都会放到这个项目中:https://github.com/miraclewkf/MXNet-Deep-Learning-in-Action 。

整本书内容还是比较适合深度学习入门或者想要尝试MXNet框架的读者。之所以列举每一章节的内容,是希望想要购买的读者能够清楚地了解到这本书是否适合自己。不奢求此书能满足所有人的需要,但求需要此书的人能够从中有所收获。

重点:如何先读为快

目前《MXNet深度学习实战》这本书还在写作中,大部分章节已经完成了初稿,因此华章图书推出了鲜读栏目,也就是读者可以在纸质版书籍出版前先阅读电子版内容,有需要的同学可以扫描下图中的二维码直接进行购买,这个定价包括阅读电子版的权限以及本书出版后的纸质版书籍一本。另外,现在离最终截稿还有一个多月时间,读者如果在阅读过程中认为有需要改进的地方都可以和我联系,微信联系方式在博客的最后。

目前华章鲜读针对此书推出了分享活动:分享好友、朋友圈,立即获取返18元现金!上不封顶!接下来介绍分享活动的内容。

活动说明:

  1. 分享前请先关注下“华章书院”公众号,以便在个人中心中随时查询、转出返现金额。

  2. 进入《MXNet 深度学习实战》鲜读详情页后,可通过两种方式分享;

  3. 方式1 :链接分享
    直接向朋友、朋友圈分享产品简述及链接,凡形成购买后即刻返现。

  4. 方式2 :海报分享
    保存海报到手机相册,将图片发送给朋友或分享到朋友圈,凡形成购买后即刻返现。

  5. 如何查看返现金额和记录

通过“华章书院”公众号底部菜单“知识店铺”进入知识店铺主页,进入“我的”个人中心,找到“我的收益”即可查看。

假如你分享出去的二维码有4个人购买了该专栏,那么你就能有72元返现了,相当于可以免费购买这个专栏了。

写在最后

之前在博客的部分评论中留下了自己的QQ号用于和其他算法爱好者交流,但是有时候自己一个人没有太多时间回答,现在打算建一个深度学习算法交流群,大家可以相互交流取经,感兴趣的同学可以加我微信:wkf8092,我拉你进群,备注信息:姓名-学校或公司-研究领域。

以上是关于我的第一本书《MXNet深度学习实战》的主要内容,如果未能解决你的问题,请参考以下文章

Windows上mxnet实战深度学习:Neural Net

我的第一本书《FFmpeg音视频开发基础与实战》已正式出版

我的第一本书《FFmpeg音视频开发基础与实战》已正式出版

我的第一本书《FFmpeg音视频开发基础与实战》已正式出版

我的第一本书《FFmpeg音视频开发基础与实战》已正式出版

老男孩告诉您如何系统学习linux运维?