深度学习从入门到实战 内容简介
本书摒弃了枯燥的理论推导,以大量实战应用案例及知识模块等内容帮助机器学习领域的初、中级程序员踏实通过深度学习的技术门槛,切实提升开发技能,积累开发经验。实战应用案例丰富,深入浅出地解析深度学习的方法论和深度学习实战应用是本书的一大特色,全书详细讲述了深度学习中涉及的神经网络基础知识、方法论解析与核心技术;同时从12个落地实践角度阐述了深度学习的实践应用。此外,本书中所有案例的代码程序均可以运行,读者按照相应说明,即可得到预期效果,希望本书的努力可以为读者在深度学习领域提供一定帮助,这就是我们的动力与追求。
深度学习从入门到实战 本书特色
深度学习:从入门到实战摒弃了枯燥的理论推导,以大量实战应用案例及知识模块等内容帮助机器学习领域的初、中级程序员踏实通过深度学习的技术门槛,切实提升开发技能,积累开发经验。实战应用案例丰富,深入浅出地解析深度学习的方法论和深度学习实战应用是本书的一大特色,全书详细讲述了深度学习中涉及的神经网络基础知识、方法论解析与核心技术;同时从12个落地实践角度阐述了深度学习的实践应用。此外,本书中所有案例的代码程序均可以运行,读者按照相应说明,即可得到预期效果,希望本书的努力可以为读者在深度学习领域提供一定帮助,这就是我们的动力与追求。
深度学习从入门到实战 目录
第1篇深度学习入门篇第0章引言:从人工智能到深度学习20.1人工智能与机器学习 20.1.1 人工智能 3【知识扩容】大数据带来的挑战 40.1.2 机器学习 4【认知提升】细说图灵测试 5【新观点】机器学习适合做什么 60.2机器学习的模式 7【知识扩容】人工智能学派之争 80.3深度学习 9【案例0-1】天气预报深度神经网络 9【认知提升】说文解字“深度学习” 11【应知应会】深度与学习 12【*佳实践】减小损失函数的方法 120.4温故知新 130.5停下来,思考一下 14第1章深度学习入门基础 161.1数学基础 161.1.1 矩阵论基础 17【案例1-1】像指挥官一样对矩阵进行“排兵布阵” 181.1.2 概率论基础与重要结论 19【应知应会】MATLAB中概率论基本命令 211.2机器学习基础 211.2.1 监督学习 22【应知应会】数据挖掘与机器学习 221.2.2 无监督学习 23【案例1-2】“无监督学习”中的k-means聚类 241.3神经网络基础 261.3.1 生物神经网络 26【认知提升】探索初级视觉皮层的启示 261.3.2 人工神经网络与神经元模型 27【知识扩容】Walter Pitts其人 271.4*优化理论基础 281.4 1 *优化问题 291.4.2 多目标优化问题 301.4.3 群智能优化方法 31【案例1-3】指挥“群智能团队”逐渐逼近问题*优解 321.5温故知新 351.6停下来,思考一下 36第2章神经网络原理与实现 382.1线性问题与感知机 382.2多层前馈神经网络与BP算法 412.2.1 多层前馈神经网络 41【案例2-1】具有异或逻辑的感知机 422.2.2 多层前馈神经网络的训练 43【案例2-2】训练前馈神经网络 47【应知应会】梯度下降算法 472.3其他神经网络 482.3.1 径向基函数网络 482.3.2 自组织映射网络 49【案例2-3】用SOM网络聚类Iris数据 492.3.3 深度神经网络 502.4温故知新 532.5停下来,思考一下 53第2篇深度学习方法论解析篇第3章卷积神经网络(CNN) 583.1卷积神经网络入门 583.1.1 生物机理 593.1.2 拓扑结构 61【知识扩容】图像处理中的全连接网络与卷积网络 633.1.3 卷积神经网络的特点 633.2卷积神经网络的关键技术643.2.1 卷积 65【案例3-1】利用图像的卷积操作对6×6的单通道图像进行瘦身 66【知识扩容】多通道卷积 67【案例3-2】构建基本CNN 68【认知提升】不同角度看“卷积” 683.2.2 池化 69【*佳实践】小技巧总结 71【案例3-3】在Keras框架中实现MaxPooling 71【知识扩容】VGG卷积神经网络 72【案例3-4】揭开VGG和GoogLeNet的“庐山真面目” 73【认知提升】GoogleNet的Inception结构 753.2.3 扁平化 75【案例3-5】实现图像特征矩阵的扁平化操作 763.2.4 关键技术小结 76【新观点】卷积神经网络发展方向 773.3综合案例:三步教你构建手写字识别神经网络 78【应知应会】Adam优化算法 79【知识扩容】CNN在自然语言处理中的应用 813.4温故知新 823.5停下来,思考一下 82第4章生成式对抗网络(GAN) 844.1生成式对抗网络基本原理844.1.1 GAN的核心思想 84【认知提升】GAN与博弈理论 854.1.2 GAN数学描述 86【认知提升】“囚徒困境”博弈模型 864.1.3 GAN的网络结构与核心技术 874.1.4 GAN的改进模型 90【案例4-1】ACGAN基于TensorFlow框架的实现(图像为64×64单通道数据) 91【认知提升】博弈理论与多目标优化 984.2 GAN应用 994.2.1 数据缺失 1004.2.2 多标签预测 1014.2.3 根据环境生成相应数据 1024.2.4 数据特征表示 1034.2.5 图像检索 1044.2.6 文本到图像翻译 1044.2.7 医学方面 1054.3综合案例:动手构建生成式对抗网络 1064.3.1 基于MATLAB的GAN 1064.3.2 基于TensorFlow的GAN 1084.4温故知新 1154.5停下来,思考一下 115第5章循环神经网络(RNN) 1175.1循环神经网络基本原理1175.1.1 问题背景 118【案例5-1】词性标注(我学习循环神经网络) 118【应知应会】one-hot编码 119【认知提升】神经网络的记忆问题 1205.1.2 循环神经网络基本思想 120【*佳实践】RNN的梯度爆炸和消失问题 1235.2 LSTM网络基本原理 1245.2.1 LSTM的关键技术 124【知识扩容】递归神经网络(Recursive Neural Network,RNN) 1285.2.2 LSTM的应用 128【应知应会】自然语言处理 1295.3综合案例:基于LSTM的语音预测 1305.3.1 加载数据 1305.3.2 定义网络结构 1305.3.3 网络训练及评估 131【应知应会】深度学习代码一般结构 1325.4综合案例:基于循环神经网络的手写数字识别 1325.4.1 数据准备及参数设置 1325.4.2 网络构建 1335.4.3 网络训练 1345.5综合案例:基于LSTM的自然语言处理 1355.5.1 数据收集及编码 1355.5.2 构建LSTM模型 1365.5.3 模型训练 1375.5温故知新 1375.6停下来,思考一下 138第3篇深度学习实战篇第6章深度学习主流工具及框架 1426.1 MATLAB基本语法与深度学习工具箱 1426.1.1 MATLAB简介 1426.1.2 MATLAB安装 1436.1.3 MATLAB常用语法 1466.1.4 基于MATLAB的深度学习工具箱 149【案例6-1】基于MATLAB的AlexNet模型初探 151【案例6-2】用安装好的深度学习工具箱中的卷积神经网络做mnist手写数字识别,来验证工具箱的有效性 1526.2 Python基本语法、库与开发工具 1536.2.1 Python简介 1536.2.2 Python安装 1536.2.3 Python常用语法 155【应知应会】Python常见错误提示及原因 1566.2.4 常用Python库 1576.2.5 常用Python开发工具 161【知识扩容】PyCharm常用快捷键 162【案例6-3】Python送你圣诞帽 1636.3 Caffe框架及环境搭建 1656.3.1 Caffe简介 1656.3.2 Caffe环境搭建 166【案例6-4】手写体数字识别 1676.4 TensorFlow框架及环境搭建 1676.4.1 TensorFlow简介 1676.4.2 TensorFlow与Keras框架的关系 1686.4.3 Windows 10上TensorFlow的环境搭建 1696.5其他常用框架 1776.5.1 微软CNTK 1776.5.2 MXNet 1786.5.3 Torch 1786.5.4 Theano 1796.6温故知新 1806.7停下来,思考一下 180第7章AlexNet关键技术与实战 1827.1剖析AlexNet网络结构 182【知识扩容】ImageNet与李飞飞 1867.2 AlexNet关键技术 1877.2.1 ReLU激活函数 1877.2.2 标准化 187【应知应会】激活函数的“饱和”与“不饱和” 188【认知提升】马太效应、二八定律、长尾理论 1887.2.3 Dropout 1897.2.4 多GPU 190【应知应会】CUDA 1907.3 AlexNet与LeNet对比 1917.4 CNN通用架构 1917.5综合案例:基于AlexNet的深度学习实战 1927.5.1 静态图像分类 1927.5.2 用AlexNet做特征提取(feature extraction) 1947.5.3 用AlexNet做迁移学习 1977.5.4 卷积神经网络的特征可视化 2007.6温故知新 2097.7停下来,思考一下 210第8章将手写体识别进行到底 2118.1手写体识别“江湖地位”2118.2手写数字识别 2128.2.1 手写数字的无监督学习 213【应知应会】稀疏表示 213【应知应会】无监督学习中的自动编码器 2198.2.2 手写数字的全连接神经网络识别 219【应知应会】softmax函数介绍 220【认知提升】熵 2208.2.3 手写数字的卷积神经网络识别 2218.3手写汉字识别 2298.3.1 数据读取及预处理 229【*佳实践】数据读取 2318.3.2 卷积神经网络构建 2318.3.3 网络模型训练及结果可视化 2338.4综合案例:手写数字旋转角度识别 2348.4.1 数据载入 2358.4.2 网络构建 2358.4.3 网络训练 2368.4.4 测试预测精度 2368.4.5 残差展示 2378.4.6 偏转角度矫正及可视化 2378.5温故知新 2388.6停下来,思考一下 239第9章基于深度学习的视频检测 2409.1人物监控视频问题研究意义及现状 2409.1.1 研究意义 2409.1.2 国内外研究现状 2429.2研究情况介绍 2449.2.1 研究内容 2449.2.2 研究目标及关键科学问题 244【案例9-1】基于Python库的人脸识别 2459.3综合案例:基于深度学习的人脸视频检测 2479.3.1 环境准备 2479.3.2 数据处理 2489.3.3 模型训练 2509.3.4 监控代码 2559.4综合案例:基于深度学习的物体视频检测 2569.4.1 AlexNet回顾 2569.4.2 入门版 2579.4.3 初级版 2589.4.4 加强版 2599.4.5 升级版 2609.4.6 豪华版 261【案例9-2】让手机当网络摄像头 2629.5温故知新 2629.6停下来,思考一下 263第10章基于深度学习的信息隐藏 26410.1 数字图像隐写分析研究现状及意义 26410.1.1 研究意义 26710.1.2 研究现状 26810.1.3 潜在的应用 26810.2 数字图像隐写分析概述 270【案例10-1】基于四叉树编码的空间域高保真可逆信息隐藏 27110.3 基于ACGAN的无载体信息隐藏 27210.3.1 生成式对抗网络回顾 272【应知应会】零和博弈 27210.3.2 基于ACGAN的信息隐藏关键技术 27410.4 综合案例:ACGAN信息隐藏实战 27610.4.1 方案概述 276【认知提升】可逆信息隐藏 27710.4.2 隐藏算法与提取算法的实现 27810.4.3 性能分析 28610.4.3 可靠性 28710.4.4 安全性 28710.5 温故知新 2881
深度学习从入门到实战 作者简介
高志强,军队指挥学武警信息化研究方向博士,毕业于中国人民武装警察部队工程大学,武警部队首届军事大数据工程专业筹备组成员。作为骨干成员参与研制多项武警部队信息化装备及平台系统,参与国家自然科学基金2项、陕西省自然科学基金1项。主要研究方向:深度学习、大数据与智能计算、面向大数据开放与治理的差分隐私保护数据发布关键技术研究及应用、粒子群优化算法等。
黄剑,现为武警工程大学教员,技术十一级,少校警衔,主要研究领域包括,武警信息化,军队指挥学,军事智能系统。 李永,男,博士,硕士生导师,武警工程大学计算机基础教研室副主任。2011年12 月获国防科大计算机科学与技术博士学位。中国计算机学会会员。研究领域为机器学习,模式识别、图像处理和国产自主可控软件应用。长期从事《程序设计基础》、《高级人工智能》、《计算机逻辑学》、《数据库基础》等计算机领域教学工作,发表论文20 余篇。曾获武警部队科技进步一等奖和军队教学成果三等奖。 刘明明,男,硕士学历,武警工程大学教员。研究方向为信息隐藏,深度学习。