本书由一线博学技术专家撰写,凝结了其自身多年的实践经验,阐述了深度学习的发展历程、相关概念和工作原理,介绍了两个当前流行的深度学习工具:Caffe 和TensorFlow ,并且初步探讨了强化学习的基本原理和应用。为了帮助初学者快速上手,本书注重从总体框架和脉络上把握深度学习技术,同时在阐述原理时配以简单的实例供读者印证。 本书语言生动风趣,以通俗的语言讲述复杂的原理,循循善诱,深入浅出,适合有志于从事人工智能、深度学习相关研究的信息类专业的高年级本科生或研究生阅读,也可供业界准备或正在从事深度学习、机器视觉等相关研发工作的工程技术人员参考。
一线博学技术专家撰写,凝结其自身多年的实践经验,深入浅出阐述深度学习的发展历程、相关概念和工作原理涉及当前流行的两个深度学习工具:Caffe和TensorFlow,并且初步探讨强化学习的基本原理和应用
龙飞,高级工程师,本科毕业于南京大学,博士毕业于清华大学,香港科技大学博士后。曾供职于中国电子科技集团公司第五十四研究所。现任中国搜索创新研发部总监。负责公司互联网创新产品和人工智能、大数据相关项目的研发。主持并参与了国搜识图、国搜学术、国搜图书等平台和频道的研发与上线。主要研究方向为网络路由、无线网状网络,近年涉足深度学习、数据挖掘领域。在国内外发表学术论文20余篇,获得软件著作权5项,并著有中文专著2部,英文专著1部,译著2部。
目录
第1章绪论
1.1引
1.2基本概念
1.2.1回归、分类、聚类
1.2.2监督学习、非监督学习、半监督学习、强化学习
1.2.3感知机、神经网络
1.3发展历程
1.4相关学者与会议或赛事
1.5本章小结
参考文献
第2章回归
2.1线性回归
2.1.1问题描述
2.1.2问题求解
2.1.3工具实现
2.2逻辑回归
2.2.1问题描述
2.2.2问题求解
2.2.3工具实现
2.3本章小结
参考文献
第3章人工神经网络
3.1Rosenblatt感知机
3.1.1训练方法
3.1.2算法实例
3.1.3梯度下降
3.2人工神经网络
3.2.1网络架构
3.2.2训练方法
3.2.3算法实例
3.3本章小结
参考文献
深度学习:入门与实践
目录
第4章Caffe简介
4.1CNN原理
4.1.1卷积
4.1.2池化
4.1.3LeNet5
4.2Caffe架构
4.2.1Blob类
4.2.2Layer类
4.2.3Net类
4.2.4Solver类
4.3Caffe应用实例
4.3.1车型识别
4.3.2目标检测
4.4本章小结
参考文献
第5章TensorFlow简介
5.1TensorFlow架构
5.2TensorFlow简单应用
5.2.1TensorFlow安装
5.2.2线性回归
5.3TensorFlow高级应用
5.3.1MNIST手写数字识别
5.3.2车型识别
5.4本章小结
参考文献
第6章强化学习简介
6.1强化学习基本原理
6.2AlphaGo基本架构
6.3其他趣味应用
6.4本章小结
参考文献
后记
第1章绪论
可见,Samuel给出了一个比较直观的定义,机器学习就是研究如何让计算机在不被明确地编程的情况下具有学习能力。这就不是机关术那么简单,而是具有类人的智能了。Mitchell的定义比较正式,因而得到了广泛引用。但这段英文实在是佶屈聱牙,有点像英文绕口令。其实不必担心,这段定义里有三个重要的概念,分别是经验E、任务T和性能指标P。如果一个计算机程序能够通过经验E改进其在任务T上的性能指标P,则称其具有学习能力。这是一个非常重要的定义,定义了机器学习的一个通用模型。从后文中可以看到,经验E、任务T和性能指标P贯穿机器学习的始终,在求解机器学习问题时都有着明确的数学表示。Mitchell的定义对于初学者来说依然比较难以理解。其实可以参考人类学习的过程,经验E就是从大量历史数据中总结出的规律,任务T一般为对新事物的识别和新形势的预测,P当然指的就是识别和预测的率。古谚“老马识途”比喻的是阅历丰富的人对事物的走向把握得比较,也就是因为其“历史数据”很多,从而能够总结出比较客观的规律而已。那么深度学习又是什么呢?关于深度学习的定义有很多,但有一点是肯定的,那就是深度学习是机器学习的一个子域(subfield)或分支(branch)。深度学习兴起于2006年,也被称为深度结构化学习(deep structured learning)、层次化学习(hierarchical learning)或深度机器学习(deep machine learning)[1,2]。虽然学术界尚无对深度学习的统一定义,在此可以提供几个的定义供读者参考。定义1深度学习方法是多层表示的表示学习方法,多层表示由一个从低到高的非线性简单模块网络获得,每个模块将表示从一个层次(起始于原始输入)转化至另一个更高的、更抽象的层次[3]。定义2深度学习是机器学习的一个分支,基于一个尝试使用多复杂结构处理层或多非线性变化来模型化高层次抽象的算法集[4]。定义3深度学习是一类机器学习算法:使用多层非线性处理单元级联来进行特征抽取和转换。每个后续层使用之前层的输出作为输入。算法可能是监督的或非监督的,应用包括模式分析(非监督)和分类(监督)。是基于多层数据特征或表示的(非监督)学习。高层特征来自低层特征以形成层级表示。是更广的机器学习领域中的数据表示学习部分。学习对应于不同层抽象的多层表示,不同层组成了概念的不同层级。以上定义有两个共同点:(1)多层非线性处理单元;(2)每层中的监督或非监督特征表示学习,各层组成从低层特征到高层特征的层次结构。定义4深度学习是机器学习中的一个算法集,在多个层次上进行学习,对应不同层次的抽象。通常使用人工神经网络。学习的统计模型中不同的层次对应不同层次的概念,高层次的概念由低层次的概念定义,相同低层次的概念可帮助定义许多高层次的概念。及时个定义是机器学习界的大神Hinton在其发表于Nature上的文章“Deep learning”中给出的定义,第二和第三个定义是维基百科给出的定义,第四个定义出自Li Deng的Deep Learning Methods and Applications一书。这是四个足以令初学者失去继续学习勇气的定义。不过没关系,随着后面对例子的讲解,读者会对深度学习有一个直观的认识,那时再回过头来看看上述定义,就会有所理解。在此之前,只需要知道两点就足够了:(1)深度学习是机器学习的一种;(2)深度学习使用深度神经网络为主要工具,这也是其得名的原因。1.2基本概念在有关深度学习的文献阅读中,经常会遇到一些术语和概念。对于初学者来说,快速入门的方法莫过于对其中某些关键概念的掌握。把握整个领域的知识架构,提纲挈领地学习,避免陷入只见树木,不见森林的困境。本节意在以浅显而非专业化的语言描述机器学习、深度学习中一些关键的概念,梳理整个领域的知识架构,为进一步了解深度学习的原理和应用做好铺垫。首先从一些基本的概念说起。随着人工智能领域在近些年的火爆,科技工作者的微信朋友圈经常被人工智能相关的新闻和技术帖刷屏。人工智能、机器学习、深度学习等名词成了圈内的高频词汇。这些概念都是什么意思,又有什么关系呢?蒙特利尔大学深度学神Yoshua Bengio在其即将于MIT出版社出版的Deep learning[6]一书中对这些概念进行了阐述,借用其文氏图表示这些概念的关系如图1.1所示。
这本书非常好,深入浅出,非常适合初学者看,能够迅速掌握人工智能的相关知识,是难得的一本好书。
非常不错的书,深入浅出,特别适合小白作为熟悉深度学习的第一本书,也可以作为相关从业人员扩展眼界的书,推荐人手一本