深度学习导论及案例分析
基本信息

编辑推荐
关于深度学习的导论性著作,也是了解深度学习的入门之书。
详述了深度学习的9大重要模型及其学习算法、变种模型和混杂模型,内容翔实,具有提纲挈领的指导意义。
基于Matlab、Python和C++相关的程序案例介绍深度学习模型,有助于读者全面了解深度学习模型和算法的实现途径
这是一部关于深度学习的导论性著作,也是了解深度学习的入门书籍。全书涵盖了深度学习的发展历史、特点优势,包括各种重要的模型、算法及应用,对读者把握深度学习的基本脉络和未来趋势,具有提纲挈领的指导意义。
深度学习是近年来在神经网络发展史上掀起的一波新浪潮,是机器学习的一大热点方向,是实现人工智能的一种强大技术,有关成果早已震撼了学术界和工业界。随着AlphaGo战胜人类的围棋冠军,深度学习又受到了空前绝*的爆炸性关注。
有兴趣的读者可以从本书开始,逐步揭开深度学习的神秘面纱,窥探其中的奥妙所在。
本书具有如下特色
内容布局注重深入浅出、引用文献丰富,方便读者学习和钻研。
试图纠正许多读者对深度学习的一些错误理解,比如认为多层感知器不是深度学习模型,认为自编码器能够直接用来进行手写字符识别,认为受限玻耳兹曼机也是严格意义上的深度学习模型,等等。
提供了许多深度学习的基本案例,涉及Matlab、Python和C++常用语言,以及Theano和Caffe等开源库,有助于读者通过不同语言的分析案例,全面了解深度学习模型和算法的实现途径。
内容简介
计算机书籍
深度学习是近年来在神经网络发展史上掀起的一波新浪潮,是机器学习的一大热点方向,因在手写字符识别、维数约简、图像理解和语音处理等方面取得了巨大进展,所以很快受到了学术界和工业界的高度关注。在本质上,深度学习就是对具有深层结构的网络进行有效学习的各种方法。本书介绍了深度学习的起源和发展,强调了深层网络的特点和优势,说明了判别模型和生成模型的相关概念,详述了深度学习的9种重要模型及其学习算法、变种模型和混杂模型,讨论了深度学习在图像处理、语音处理和自然语言处理等领域的广泛应用,总结了深度学习目前存在的问题、挑战和未来的发展趋势,还分析了一系列深度学习的基本案例。本书可以作为计算机、自动化、信号处理、机电工程、应用数学等相关专业的研究生、教师和科研工作者在具备神经网络基础知识后,进一步了解深度学习理论和方法的入门教材或导论性参考书,有助于读者掌握深度学习的主要内容并开展相关研究。
目录
第一部分基础理论
第1章概述2
1.1深度学习的起源和发展2
1.2深层网络的特点和优势4
1.3深度学习的模型和算法7
第2章预备知识9
2.1矩阵运算9
2.2概率论的基本概念11
2.2.1概率的定义和性质11
2.2.2随机变量和概率密度函数12
2.2.3期望和方差13
2.3信息论的基本概念14
2.4概率图模型的基本概念15
2.5概率有向图模型16
2.6概率无向图模型20
2.7部分有向无圈图模型22
2.8条件随机场24
2.9马尔可夫链26
2.10概率图模型的学习28
前言
自2006年诞生以来,深度学习很快成长壮大,并有一些相关的英文书籍陆续出版。虽然国内也开始出现译著,但对深度学习的内容概括得并不全面,远不能够满足市场需求。本书的内容几乎涵盖了深度学习的所有重要方面,结构上分为基础理论和案例分析两个部分。在基础理论部分,本书不仅介绍了深度学习的起源和发展、特点和优势,而且描述了深度学习的9种重要模型,包括受限玻耳兹曼机、自编码器、深层信念网络、深层玻耳兹曼机、和积网络、卷积神经网络、深层堆叠网络、循环神经网络和长短时记忆网络。此外,还讨论了这些模型的学习算法、变种模型和混合模型,以及它们在图像视频处理、音频处理和自然语言处理等领域中的广泛应用,并总结了有关的开发工具、问题和挑战。在案例分析部分,本书主要挑选了一些深度学习的程序案例进行细致的说明和分析,指导读者学习有关的程序代码和开发工具,以便在解决实际问题时加以灵活利用。其中,每个程序案例都包括模块简介、运行过程、代码分析和使用技巧这4个部分,层次结构清晰,以利于读者选择和学习,并在应用中拓展思路。本书的一个不足之处是:案例分析部分没有涉及“和积网络”和“深层堆叠网络”,这是因为和积网络的运行需要大规模集群的硬件条件,另外也很难找到便于构造深层堆叠网络案例的程序代码。
本书的一大特色是从初学者的角度出发,在知识结构的布局上注重深入浅出,对深度学习的模型涵盖得较全面,文献引用非常丰富,既适合读者入门学习,又有助于他们深入钻研。同时,本书也试图纠正许多读者对深度学习的一些错误理解,比如认为多层感知器不是深度学习模型,认为自编码器能够直接用来识别手写字符,认为受限玻耳兹曼机也是严格意义上的深度学习模型,等等。
本书的另一个特色是通过程序案例介绍深度学习模型。这对缺乏相关背景知识的读者可能非常有帮助,使他们在知其然不知其所以然的情况下运行深度学习程序并获得计算结果,从而在积累实践经验和感性认识的过程中逐步了解深度学习的有关内容。本书的案例涉及三种常见的编程语言:Matlab、Python和C++。其中,很多深度学习程序是用Matlab编写的,可以直接运行。如果使用Python语言编写深度学习程序,则可以调用Theano开源库;若使用C++语言,则可以调用Caffe开源库。不同的语言分析案例有助于读者全面了解深度学习模型和算法的实现途径,并根据自己的熟练程度灵活选择。
本书是集体智慧的结晶。北京工业大学计算机学院的刘波、胡海鹤和刘兆英等老师,以及张亚红、曾少锋、沈成恺、杨红丽和丁勇等同学,在文献和软件资料的收集整理方面提供了很大帮助。此外,华章公司的温莉芳副总经理对本书的出版给予了大力支持,张梦玲编辑对本书内容的编排提出了许多宝贵意见。在这里向他们表示衷心的感谢。
最后,还要感谢父母、爱人和儿女在本书写作期间给予的理解,感谢他们的真情鼓励、默默付出以及对非规律生活的宽容。同时,作者在此也因减少了对他们的关爱而深表愧疚和歉意。
限于作者水平,本书在内容取材和结构编排上可能存在不妥之处,希望使用本书的教师、学生、专家以及其他读者提出宝贵的批评和建议。
作者
2016年8月于北京工业大学