上篇 初见
         第1天 什么是深度学习 2
         1.1 星星之火,可以燎原 3
         1.2 师夷长技 4
         1.2.1 谷歌与微软 4
         1.2.2 Facebook、亚马逊与NVIDIA 5
         1.3 中国崛起 6
         1.3.1 BAT在路上 6
         1.3.2 星光闪耀 7
         1.3.3 企业热是风向标 8
         1.4 练习题 9
         第2天 深度学习的过往 10
         2.1 传统机器学习的局限性 10
         2.2 从表示学习到深度学习 11
         2.3 监督学习 12
         2.4 反向传播算法 13
         2.5 卷积神经网络 15
         2.6 深度学习反思 17
         2.7 练习题 18
         2.8 参考资料 18
         第3天 深度学习工具汇总 19
         3.1 Caffe 19
         3.2 Torch & OverFeat 20
         3.3 MxNet 22
         3.4 TensorFlow 22
         3.5 Theano 24
         3.6 CNTK 24
         3.7 练习题 25
         3.8 参考资料 26
         第4天 准备Caffe环境 27
         4.1 Mac OS环境准备 27
         4.2 Ubuntu环境准备 28
         4.3 RHEL/Fedora/CentOS环境准备 29
         4.4 Windows环境准备 29
         4.5 常见问题 32
         4.6 练习题 32
         4.7 参考资料 33
         第5天 Caffe依赖包解析 34
         5.1 ProtoBuffer 34
         5.2 Boost 38
         5.3 GFLAGS 38
         5.4 GLOG 39
         5.5 BLAS 40
         5.6 HDF5 41
         5.7 OpenCV 42
         5.8 LMDB和LEVELDB 42
         5.9 Snappy 43
         5.10 小结 43
         5.11 练习题 49
         5.12 参考资料 49
         第6天 运行手写体数字识别例程 50
         6.1 MNIST数据集 50
         6.1.1 下载MNIST数据集 50
         6.1.2 MNIST数据格式描述 51
         6.1.3 转换格式 53
         6.2 LeNet-5模型 60
         6.2.1 LeNet-5模型描述 60
         6.2.2 训练超参数 65
         6.2.3 训练日志 66
         6.2.4 用训练好的模型对数据进行预测 76
         6.2.5 Windows下训练模型 76
         6.3 回顾 78
         6.4 练习题 79
         6.5 参考资料 79
         篇尾语 80
         中篇 热恋
         第7天 Caffe代码梳理 82
         7.1 Caffe目录结构 82
         7.2 如何有效阅读Caffe源码 84
         7.3 Caffe支持哪些深度学习特性 86
         7.3.1 卷积层 86
         7.3.2 全连接层 89
         7.3.3 激活函数 91
         7.4 小结 99
         7.5 练习题 99
         7.6 参考资料 100
         第8天 Caffe数据结构 101
         8.1 Blob 101
         8.1.1 Blob基本用法 102
         8.1.2 数据结构描述 108
         8.1.3 Blob是怎样炼成的 109
         8.2 Layer 125
         8.2.1 数据结构描述 126
         8.2.2 Layer是怎样建成的 127
         8.3 Net 136
         8.3.1 Net基本用法 136
         8.3.2 数据结构描述 139
         8.3.3 Net是怎样绘成的 139
         8.4 机制和策略 146
         8.5 练习题 147
         8.6 参考资料 148
         第9天 Caffe I/O模块 149
         9.1 数据读取层 149
         9.1.1 数据结构描述 149
         9.1.2 数据读取层实现 150
         9.2 数据变换器 155
         9.2.1 数据结构描述 155
         9.2.2 数据变换器的实现 156
         9.3 练习题 171
         第10天 Caffe模型 172
         10.1 prototxt表示 173
         10.2 内存中的表示 176
         10.3 磁盘上的表示 176
         10.4 Caffe Model Zoo 178
         10.5 练习题 180
         10.6 参考资料 180
         第11天 Caffe前向传播计算 181
         11.1 前向传播的特点 181
         11.2 前向传播的实现 182
         11.2.1 DAG构造过程 182
         11.2.2 Net Forward实现 190
         11.3 练习题 192
         第12天 Caffe反向传播计算 193
         12.1 反向传播的特点 193
         12.2 损失函数 193
         12.2.1 算法描述 194
         12.2.2 参数描述 195
         12.2.3 源码分析 195
         12.3 反向传播的实现 203
         12.4 练习题 205
         第13天 Caffe最优化求解过程 207
         13.1 求解器是什么 207
         13.2 求解器是如何实现的 208
         13.2.1 算法描述 208
         13.2.2 数据结构描述 210
         13.2.3 CNN训练过程 218
         13.2.4 CNN预测过程 225
         13.2.5 Solver的快照和恢复功能 227
         13.3 练习题 230
         第14天 Caffe实用工具 231
         14.1 训练和预测 231
         14.2 特征提取 241
         14.3 转换图像格式 247
         14.4 计算图像均值 254
         14.5 自己编写工具 257
         14.6 练习题 257
         篇尾语 258
         下篇 升华
         第15天 Caffe计算加速 260
         15.1 Caffe计时功能 260
         15.2 Caffe GPU加速模式 262
         15.2.1 GPU是什么 262
         15.2.2 CUDA是什么 263
         15.2.3 GPU、CUDA和深度学习 263
         15.2.4 Caffe GPU环境准备 264
         15.2.5 切换到Caffe GPU加速模式 268
         15.3 Caffe cuDNN加速模式 269
         15.3.1 获取cuDNN 270
         15.3.2 切换到Caffe cuDNN加速模式 270
         15.3.3 Caffe不同硬件配置性能 272
         15.4 练习题 273
         15.5 参考资料 273
         第16天 Caffe可视化方法 275
         16.1 数据可视化 275
         16.1.1 MNIST数据可视化 275
         16.1.2 CIFAR10数据可视化 277
         16.1.3 ImageNet数据可视化 278
         16.2 模型可视化 279
         16.2.1 网络结构可视化 279
         16.2.2 网络权值可视化 281
         16.3 特征图可视化 288
         16.4 学习曲线 295
         16.5 小结 298
         16.6 练习题 298
         16.7 参考资料 299
         第17天 Caffe迁移和部署 300
         17.1 从开发测试到生产部署 300
         17.2 使用Docker 302
         17.2.1 Docker基本概念 302
         17.2.2 Docker安装 303
         17.2.3 Docker入门 305
         17.2.4 Docker使用进阶 312
         17.3 练习题 317
         17.4 参考资料 317
         第18天 关于ILSVRC不得不说的一些事儿 318
         18.1 ImageNet数据集 318
         18.2 ILSVRC比赛项目 319
         18.2.1 图像分类(CLS) 320
         18.2.2 目标定位(LOC) 320
         18.2.3 目标检测(DET) 321
         18.2.4 视频目标检测(VID) 322
         18.2.5 场景分类 322
         18.3 Caffe ILSVRC实践 323
         18.4 练习题 326
         18.5 参考资料 326
         第19天 放之四海而皆准 327
         19.1 图像分类 327
         19.1.1 问题描述 327
         19.1.2 应用案例--商品分类 330
         19.2 图像中的字符识别 332
         19.2.1 问题描述 332
         19.2.2 应用案例--身份证实名认证 333
         19.3 目标检测 337
         19.3.1 问题描述 337
         19.3.2 最佳实践--运行R-CNN例程 337
         19.4 人脸识别 340
         19.4.1 问题描述 340
         19.4.2 最佳实践--使用Face++ SDK实现人脸检测 342
         19.5 自然语言处理 343
         19.5.1 问题描述 343
         19.5.2 最佳实践--NLP-Caffe 344
         19.6 艺术风格 350
         19.6.1 问题描述 350
         19.6.2 最佳实践--style-transfer 352
         19.7 小结 354
         19.8 练习题 354
         19.9 参考资料 355
         第20天 继往开来的领路人 356
         20.1 Caffe Traps and Pitfalls 356
         20.1.1 不支持任意数据类型 356
         20.1.2 不够灵活的高级接口 357
         20.1.3 繁杂的依赖包 357
         20.1.4 堪忧的卷积层实现 357
         20.1.5 架构之殇 358
         20.1.6 应用场景局限性 358
         20.2 最佳实践--Caffe2 359
         20.3 练习题 361
         20.4 参考资料 362
         第21天 新生 363
         21.1 三人行,必有我师 363
         21.2 路漫漫其修远兮,吾将上下而求索 364
         篇尾语 366
         结束语 367
         附录A 其他深度学习工具
      · · · · · ·     (
收起)