推荐序一
通俗也是一种美德
这是一个大数据时代。
这也是一个人工智能时代。
如果说大数据技术是还有待人们去研究、去挖掘、去洞察的问题,那么人工智能无疑是这个问题的解决方案,至少是方案之一。
人的智能,无疑是学习的产物。那么机器的智能呢,它何尝不是学习的产物?只不过在当下,它被深深地打上了“深度学习”的烙印。通过深度学习,我们可以把大数据挖掘的技术问题转换为可计算的问题。
有人说,深度学习不仅是一种算法的升级,更是一种思维模式的升级。其带来的颠覆性在于,它把人类过去痴迷的算法问题演变成数据和计算问题。吴军博士更是断言,未来只有2%的人有能力在智能时代独领风骚,成为时代的弄潮儿。所以,拥抱人工智能,携手深度学习,不仅是一种时代的召唤,而且顺应了当前科学技术对人才的紧迫需求。
深度学习矗立于人工智能的前沿。我们远眺它容易,但近爱它却不易。在信息过剩的时代,我们可能会悲哀地发现,知识鸿沟横在我们面前。的确,大量有关深度学习的书籍占据着我们的书架,数不尽的博客充斥着我们的屏幕。然而,很多时候,我们依然对深度学习敬而远之。
这个“敬”是真实的,这个“远”通常是被迫的。因为找到一本通俗易懂的有关深度学习的读物,并非易事。
张玉宏博士所著的《深度学习之美:AI时代的数据处理与最佳实践》,正是在这种背景下以通俗易懂的姿态面世的书籍。如果用一句话来形容这本书,那就是“通俗易懂也是一种美德”。
在任何时代,能把复杂的事情解释清楚,都是一项非常有用的本领。张玉宏博士是一名高校教师,加之他还是一名科技作家,因此,通俗易懂、行文流畅、幽默风趣,便成了这本书的特征。
这里有一个比喻:如果你爱好明史,且古文基础深厚,去阅读《明史》可能是你的不二选择;但倘若你不太喜欢学究气的著作,那就推荐你去读读当年明月所写的《明朝那些事儿》。本书仿佛就是《明朝那些事儿》版的“深度学习”。巧妙的比喻、合理的推断、趣味的故事,时不时地散落在书里,妙趣横生。
当然,这本书也不是十全十美的,但瑕不掩瑜,如果你想零基础入门深度学习,那么相信这本书一定能够给你提供很多帮助。
黄文坚
墨宽投资创始人、《TensorFlow实战》作者
2018年5月于北京
推荐序二
技术,也可以“美”到极致
和张玉宏博士认识是在2015年,那个时候我还在CSDN&《程序员》杂志做编辑。结缘的过程颇为巧合,仅仅是因为一次无意浏览,看到他在CSDN论坛义务回答网友的问题,被其认真、高水平和深入浅出的回答所吸引,倾慕之下,我策划了一次采访。而这次采访奠定了我们的友谊,文章在CSDN作为头条发布并获得3万多的阅读量后,我们在论文翻译、《程序员》杂志供稿上开始了合作。
仅仅牛刀小试,张博士翻译的文章就篇篇阅读量破万。对于晦涩难懂的技术文章而言,阅读量破万是很高的数字,无异于如今朋友圈的10万阅读量。其中最值得一提的是《PayPal高级工程总监:读完这100篇论文就能成大数据高手》这篇文章,在2015年阅读量近6万后,2017年又被某大数据公众号转载,在朋友圈刷屏。为此,我在微博上有感而发:“有价值的内容,是经得起时间冲刷的。”然而,文章被追捧的背后,则是张博士呕心沥血的付出,也许只有我知道——为了保障质量,那100篇论文张博士全部下载并看了一遍,独立注解超过50%,前后花了整整一周时间,通宵达旦,聚沙成塔。
2016年我来到阿里巴巴做云栖社区的内容运营,和张博士的合作也来到了这里。云栖社区是阿里云运营、阿里技术协会和集团技术团队支持的开放技术社区,是云计算、大数据和人工智能顶级社区之一。在这个阶段,张博士在技术文章翻译上又有了另外一种风格:局部放大翻译,就某个点深度解读,并加入自己的认识,这种类似“书评”式的写作方式,让原本枯燥的技术文章显得很有趣,在阅读量上也是立竿见影——他的文章的阅读量比一般技术文章的阅读量多好几倍,这在彼时的社区是极为少见的。
后来,张博士和我说,他想发表系列文章,细致地讲一讲深度学习,我非常认同和支持他做这件事。
于是接下来的几个月,张博士不断受到以下赞誉:
“文章形象生动,耐人寻味,重燃深度学习的欲望。”
“这个系列写得太棒了!!!谢谢您愿意分享。”
“大神,更新的频率可以稍微快点吗?万分感谢!”
有人甚至用追剧来形容自己的感受,并评论:“期待好久了,终于更新了,作者辛苦了,感谢作者提供该优秀文章以供学习。”
“容易理解,害怕大神不更新。”
……
这些赞誉,说的是在社区篇篇10多万阅读量的文章:
一入侯门“深”似海,深度学习深几许(深度学习入门系列之一)
人工“碳”索意犹尽,智能“硅”来未可知(深度学习入门系列之二)
神经网络不胜语, M-P模型似可寻(深度学习入门系列之三)
“机器学习”三重门,“中庸之道”趋若人(深度学习入门系列之四)
Hello World感知机,懂你我心才安息(深度学习入门系列之五)
损失函数减肥用,神经网络调权重(深度学习入门系列之六)
山重水复疑无路,最快下降问梯度(深度学习入门系列之七)
BP算法双向传,链式求导最缠绵(深度学习入门系列之八)
全面连接困何处,卷积网络见解深(深度学习入门系列之九)
卷地风来忽吹散,积得飘零美如画(深度学习入门系列之十)
局部连接来减参,权值共享肩并肩(深度学习入门系列之十一)
激活引入非线性,池化预防过拟合(深度学习入门系列之十二)
循环递归RNN,序列建模套路深(深度学习入门系列之十三)
LSTM长短记,长序依赖可追忆(深度学习入门系列之十四)
上面这些文章,光看标题就非同凡响,是的,能把技术文章的标题写得这么文艺和生动,一看文学功力就十分深厚。内容更不用说,通俗易懂、图文并茂、形象生动。“用这么幽默的语言,将那么高大上的技术讲得一个过路人都能够听懂,这是真的好文章。”身边的一位朋友如此述说。而更值得一提的是,在每篇博文后面,除了小结,还有“请你思考”,考察读者对知识的掌握情况,锻炼读者的思辨能力,让读者能够进一步主动学习,触类旁通。
这样出色的文章,也许只有张博士才能写出来。为什么呢?我想,一方面得益于其读博士时,在美国西北大学有过两年访学经历,他在中美教育差异上有过深刻的思考;另一方面,也源自他丰富的教学经验——是的,他在河南工业大学执教多年,懂得“教”与“授”的拿捏。对于张博士的教学,学生袁虎是这么谈论自己的感受的:“他的课跟美国高校的课堂比较接近——开放、平等、互动性强,鼓励学生去思考。上课的时候,他并不死守课本知识,而是特别注重教授给我们学习方法。”袁虎还特别指出,他们专业出来的几个技术大神多多少少都算是张博士的门徒。
在云栖社区的连载,从2017年5月17日开始,到8月17日结束,一共14篇文章,很多读者“追剧”至此,仍意犹未尽。有读者说:“作为机器学习小白,楼主的文章真是赞。楼主,出书吧!!!看博客真担心哪天突然就没有了。”因为一些原因,社区的博客篇幅有限,内容浅尝辄止……他觉得自己可以做得更多、更好。
因此,《深度学习之美:AI时代的数据处理与最佳实践》在这里和大家见面了。可以说,拿到这本书的读者是非常幸运的,因为你们不需要每天刷博客“追剧”,也不需要苦苦等待。你们可以边捧书边喝咖啡,在橘黄色的台灯下、在安静的深夜里看个尽兴。
人工智能在当下非常火爆。不可否认,也许你可以从汗牛充栋的网上获得深度学习的一些知识点或技巧,但网络中的知识是碎片化的。尤其对于初学者,如果想走得更远,需要一本书系统地进行指导,并从底层思考这些知识的来龙去脉,以及知识之间的关联,本书正是这样一本书。
结集成册的《深度学习之美:AI时代的数据处理与最佳实践》除了继承之前博文趣味性、通俗易懂等诸多优点之外,篇幅更宏大(此前的连载只是一个起步),内容上还增加了实战环节,让大家能够学以致用,在实践中与理论印证。另外,相比此前连载的博文,书籍中增加了许多张老师亲自绘制的趣图,诙谐地说明了不同知识点或概念间的区别。在理论上,张博士也对公式的前因后果给出了详细的推导过程,只有知道它是怎么来的,才能更好地运用它。学习知识不正是这样吗?
社会变化非常快,因此人们总爱反复核算事物的价值,喜欢性价比高的东西。如何衡量一本书的价值,除了看它是否能帮到你之外(技能价值),还要看它的社会价值。本书是张博士深度学习的思想随笔,兴之所至的内容,往往也是精彩至极、深度思考的结晶。
我非常佩服张博士,他不仅博览群书,还能够将不同类型的书籍内化,并结合生活案例,以一种非常有趣的形式将深奥的知识表达出来,比如用“求婚”“耳光”等例子讲解“激活函数”和“卷积函数”。尤其是“中庸之道”的例子,让大家在悟透一个很难弄懂的知识点的同时,自己的思想也从富有哲理的故事中变得不一样。
这种技术领域的人文情怀,绝非一般高手能做到的。上述认识,相信手握此书的您,也会很快感受到。
——@我是主题曲哥哥,网易高级编辑
前阿里云资深内容运营、CSDN&《程序员》杂志编辑
2018年5月
自序
深度学习的浅度梦想
这是一本有关“深度学习”的图书!
这是一本有关“深度学习”通俗易懂的图书!
这是一本有关“深度学习”的、有些人文情怀的图书!
我希望,我的读者在读这本书时,能给它这三种不同境界的渐进式的评价。第一个评价,说明它“有料”。第二个评价,说明它“有用”。第三个评价,说明它“有趣”。“有料、有用且有趣”是我对本书的定位,也是写作本书的浅度梦想,不是有大咖说过吗,“梦想还是要有的,万一实现了呢?”
写一本好书,真的很难!
但并非不能达成。窃以为,写成一本好书,通常有两条途径。第一条我称之为“自上而下大家传道法”。也就是说,有些学术大家已在领域内功成名就,名声斐然,他们俯下身段,抽出时间,高屋建瓴,精耕细作,必出精品。比如,卡耐基梅隆大学的Tom Mitchell教授编写的《机器学习》、南京大学周志华老师编写的《机器学习》,都是业内口碑极好的畅销常青树,实为我辈楷模。
但“大家写好书”并不是充分条件,因为大家通常都非常忙,他们可能非常“有料、有钱(有经费)”,但却未必“有闲”。要知道,写作不仅仅是一项脑力活,它还是一项极花费时间的体力活。
好在还有写成好书的第二条途径,我且称之为“自下而上小兵探道法”。也就是说,写书的作者本身并非领域专家,而是来自科研实战一线,他们的眼前也时常迷茫一片,不得不肉搏每一个理论困惑,手刃每一个技术难题,一路走来,且泣且歌,终于爬上一个小山丘。松了口气,渴了口水,嗯,我要把自己趟过的河,踩过的坑,写出来总结一下,除了自勉,也能让寻路而来的同门或同道中人,不再这么辛苦。
很显然,我把自己定位为第二类(至少梦想是)。
我是一个科技写作爱好者,我在网络上写过很多有关于大数据主题的(主要发表在CSDN)文章,也有关于深度学习的(主要发表于阿里云-云栖社区)。出于爱好写作的原因,有时我也关注写作的技巧。直到有一天,一位知名人士的一席话,一下子“电着”我了。他说,“写作的终极技巧,就是看你写的东西对读者有没有用。”拿这个标准来衡量一下,什么辞藻华丽、什么文笔优美,都可能是绿叶与浮云。在这一瞬间,我也明白了,为什么我所在的城市,地铁时刻表的变更通知,寥寥几百字,短短没几天,阅读量也可以轻易达到10万。嗯,这样的写作,有干货,对读者有用。好作品的要素,它都有!
于是,“对读者有用”,就成为指导我写作这本书的宗旨。以用户的思维度量,就可以比较清晰地知道,什么对读者有用。
当前,人工智能非常火爆。自从AlphaGo点燃世人对人工智能的极大热情后,学术界和产业界都积极投身于此,试图分得一杯羹。而当前(至少是当前)人工智能的当红主角就是“深度学习”,它不仅仅表现在AlphaGo一战成名的技术上,还表现在图像识别、语音识别、自然语言处理性能提升上,总总而生,林林而群。
当然,想投身于此并非易事,因为深度学习的门槛比较高。为了搞懂深度学习,我把国内市面上大部分与深度学习相关的书籍都买来拜读了(在后记中,我会感谢支持的各种基金),受益匪浅,但至少于我而言,它们大部分的学习曲线都是陡峭的,或者说它们大多高估了初学者的接受程度,为了读懂它们,读者真的需要“深度学习”。
在深度学习领域,的确也有一批高水平的读者,但他们可能并不需要通过相对滞后的书籍来提高自己的知识水平,新鲜出炉的arXiv论文,才是他们的“菜”。但高手毕竟有限,懵懵懂懂的初学者,数量还是相当庞大的。
于是,我想,写一本零基础入门的、通俗易懂的、图文并茂的、理论结合实战的深度学习书籍,对广大的深度学习初学者来说,应该是有用的。
本书的写作风格,也紧扣前面的四个修饰词,章节的安排也是按照循序渐进的节奏展开的。为了降低门槛和强调实践性,本书采用了双主线写作方式,一条主线是理论脉络,从基础的机器学习概念,到感知机、M-P模型、全连接网络,再到深度学习网络,深入浅出地讲解相关的理论。另外一条主线是实战脉络,从Python零基础入门说起,直到TensorFlow的高级应用。
全书共分16章,具体来说,第1章给出深度学习的大图(Big Picture),让读者对其有一个宏观认知。第2章和第3章,给出了机器学习的相关基础理论。仅仅懂理论是不够的,还需要动手实践,用什么实践呢?最热门的机器学习语言非Python莫属了。于是我们在第4章添加了Python基础,以边学边用边提高为基调,并在第5章讲解了基于Python的机器学习实战。
有了部分Python基础,也有了部分机器学习基础,接下来,我们该学习与神经网络相关的理论了。于是在第6章至第10章,我们先后讲解了M-P模型、感知机、多层神经网络、BP神经网络等知识。其中大部分的理论都配有Python实战讲解,就是让读者有“顶天(上接理论)立地(下接实战)”的感觉。接下来的问题就是,如果所有神经网络学习的项目都是Python手工编写的,是不是效率太低了呢?
是的,是该考虑用高效率框架的时候了,于是在第11章,我们讲解了被广泛认可的深度学习框架TensorFlow。有了这个基础,后面的深度学习理论就以此做实战基础。第12章详细讲解了卷积神经网络。随后,在第13章,我们站在实战的基础上,对卷积神经网络的TensorFlow实践进行了详细介绍。
任何一项技术都有其不足。在第14章,我们讲解了循环递归网络(RNN)。在第15章,我们讲解了长短期记忆(LSTM)网络。以上两章内容,并非都是高冷的理论,除了给出理论背后有意思的小故事,还结合TensorFlow进行了实战演练。在第16章,我们顺便“惊鸿一瞥”解读了Hinton教授的新作“神经网络胶囊(CapsNet)”,点出卷积神经网络的不足,并给出了神经胶囊的详细论述和实践案例分析。
本书中的部分内容(共计14篇),先后发表在技术达人云集的云栖社区(https://yq.aliyun. com/topic/111),然后被很多热心的网友转载到CSDN、知乎、微信公众号、百度百家等自媒体中,受到了很多读者的认可。于吾心,有乐陶然。
当然,从我对自己的定位——“小兵探道”可知,我对深度学习的认知,仍处于一种探索阶段,我仍是一个深度学习的学习者。在图书中、在网络中,我学习并参考了很多有价值的资料。这里,我对这些有价值的资料的提供者、生产者,表示深深的敬意和谢意。
有时候,我甚至把自己定位为一个“知识的搬运工”、深度学习知识的梳理者。即使如此,由于学术水平尚浅,我对一些理论或技术的理解,可能是肤浅的,甚至是错误的,所以,如果本书有误,且如果读者“有闲”,不妨给出您的宝贵建议和意见,我在此表示深深的感谢。同时,由于时间和精力有限,很多有用的深度学习理论和技术还没有涉及,只待日后补上。
张玉宏
2018年3月