展开全部

主编推荐语

本书主要是针对深度学习初学者。

内容简介

本书主要介绍Caffe的技术原理和一些高级使用技巧,首先介绍深度学习的趋势和业内动态。然后是关于Caffe的基础知识,介绍如何安装和武器库。在理解Caffe算法基础上,介绍Caffe的技术原理和特点,包括数学知识和设计知识。之后是Caffe各层使用的进阶,介绍每一层是什么,作用和实现及其使用的一般性原则和原理。最后是Caffe深度学习多任务网络,介绍多任务网络的现状,基本的网络配置,高级网络配置和网络解决方案的进阶。本书实践内容和现有系统进行无缝对接,并提供了各种调参技巧的黑魔法。

目录

  • 版权信息
  • 前言
  • 第1章 深度学习简介
  • 1.1 深度学习的历史
  • 1.2 深度学习工具简介
  • 1.3 深度学习的未来趋势
  • 第2章 搭建你的Caffe武器库
  • 2.1 硬件选型
  • 2.2 Caffe在Windows下的安装
  • 2.3 Caffe在Linux下的安装
  • 2.3.1 Linux安装
  • 2.3.2 Nvidia CUDA Toolkit的安装(*.deb方法)
  • 2.3.3 Caffe的安装和测试
  • 2.4 OpenCV的安装和编译
  • 2.4.1 OpenCV的下载
  • 2.4.2 配置环境变量
  • 2.5 Boost库的安装和编译
  • 2.6 Python相关库的安装
  • 2.7 MATLAB接口的配置
  • 2.8 其他库的安装
  • 2.8.1 LMDB的编译与安装
  • 2.8.2 LevelDB的编译与安装
  • 2.8.3 glog的编译与安装
  • 2.8.4 安装gflags
  • 第3章 Caffe的简单训练
  • 3.1 Caffe转化数据工具的使用介绍
  • 3.1.1 命令参数介绍
  • 3.1.2 生成文件列表
  • 3.1.3 使用的Linux命令简介
  • 3.1.4 生成文件结果
  • 3.1.5 图片参数组详解
  • 3.2 Caffe提取特征的工具使用说明
  • 3.3 Caffe训练需要的几个部件
  • 3.3.1 网络proto文件的编写
  • 3.3.2 Solver配置
  • 3.3.3 训练脚本的编写
  • 3.3.4 训练log解析
  • 3.4 Caffe简单训练分类任务
  • 3.5 测试训练结果
  • 3.6 使用训练好的模型进行预测
  • 第4章 认识深度学习网络中的层
  • 4.1 卷积层的作用与类别
  • 4.1.1 卷积层的作用
  • 4.1.2 卷积分类
  • 4.2 激活层的作用与类别
  • 4.2.1 激活函数的定义及相关概念
  • 4.2.2 激活函数的类别
  • 4.3 池化层的作用与类别
  • 4.3.1 池化层的历史
  • 4.3.2 池化层的作用
  • 4.3.3 池化层分类
  • 4.4 全连接层的作用与类别
  • 4.5 dropout层的作用
  • 4.6 损失函数层
  • 第5章 Caffe的框架设计
  • 5.1 Caffe中CPU和GPU结构的融合
  • 5.1.1 SyncedMemory函数及其功能
  • 5.1.2 SyncedMemory类的作用
  • 5.2 Caffe训练时层的各个成员函数的调用顺序
  • 5.3 Caffe网络构建函数的解析
  • 5.4 Caffe层如何使用proto文件实现反射机制
  • 5.4.1 工厂模式
  • 5.4.2 层的创建
  • 5.5 Caffe的调用流程图及函数顺序导视
  • 5.6 Caffe框架使用的编码思想
  • 5.6.1 Caffe的总体结构
  • 5.6.2 Caffe数据存储设计
  • 第6章 基础数学知识
  • 6.1 卷积层的数学公式及求导
  • 6.2 激活层的数学公式图像及求导
  • 6.3 三种池化层的数学公式及反向计算
  • 6.4 全连接层的数学公式及求导
  • 6.4.1 全连接层的前向计算及公式推导
  • 6.4.2 全连接层的反向传播及公式推导
  • 6.5 反卷积层的数学公式及求导
  • 第7章 卷积层和池化层的使用
  • 7.1 卷积层参数初始化介绍
  • 7.2 池化层的物理意义
  • 7.3 卷积层和池化层输出计算及参数说明
  • 7.4 实践:在Caffe框架下用Prototxt定义卷积层和池化层
  • 7.4.1 卷积层参数的编写
  • 7.4.2 必须设置的参数
  • 7.4.3 其他可选的设置参数
  • 7.4.4 卷积参数编写具体示例
  • 7.4.5 卷积参数编写小建议
  • 第8章 激活函数的介绍
  • 8.1 用ReLU解决sigmoid的缺陷
  • 8.2 ReLU及其变种的对比
  • 8.3 实践:在Caffe框架下用Prototxt定义激活函数
  • 8.3.1 ReLU
  • 8.3.2 PReLU
  • 8.3.3 Sigmoid
  • 第9章 损失函数
  • 9.1 contrastive_loss函数和对应层的介绍和使用场景
  • 9.2 multinomial_logistic_loss函数和对应层的介绍和使用说明
  • 9.3 sigmoid_cross_entropy函数和对应层的介绍和使用说明
  • 9.4 softmax_loss函数和对应层的介绍和使用说明
  • 9.5 euclidean_loss函数和对应层的介绍和使用说明
  • 9.6 hinge_loss函数和对应层的介绍和使用说明
  • 9.7 infogain_loss函数和对应层的介绍和使用说明
  • 9.8 TripletLoss的添加及其使用
  • 9.8.1 TripletLoss的思想
  • 9.8.2 TripletLoss梯度推导
  • 9.8.3 新增加TripletLossLayer
  • 9.9 Coupled Cluster Loss的添加及其使用
  • 9.9.1 增加loss层
  • 9.9.2 实现具体示例
  • 第10章 Batch Normalize层的使用
  • 10.1 batch_normalize层的原理和作用
  • 10.2 batch_normalize层的优势
  • 10.3 常见网络结构batch_normalize层的位置
  • 10.4 proto的具体写法
  • 10.5 其他归一化层的介绍
  • 第11章 回归网络的构建
  • 11.1 如何生成回归网络训练数据
  • 11.2 回归任务和分类任务的异同点
  • 11.3 回归网络收敛性的判断
  • 11.4 回归任务与级联模型
  • 第12章 多任务网络的构建
  • 12.1 多任务历史
  • 12.2 多任务网络的数据生成
  • 12.3 如何简单建立多任务
  • 12.4 近年的多任务深度学习网络
  • 12.5 多任务中通用指导性调参和网络构建结论
  • 12.5.1 如何避免出现多任务后性能下降的情况
  • 12.5.2 怎样构建性能提升的多任务网络
  • 第13章 图像检索和人脸识别系统实践
  • 13.1 深度学习如何构建成自动化服务,在内存中做测试
  • 13.2 Poco库构建服务器指南
  • 13.3 深度学习服务和传统服务的区别
  • 13.4 深度学习服务如何与传统后台服务进行交互
  • 13.5 人脸识别的数据准备和所使用的相关技术
  • 13.6 图像检索任务的介绍
  • 13.7 在Caffe中添加数据输入层
  • 13.7.1 具体示例
  • 13.7.2 ImageDataParameter参数含义简介
  • 13.7.3 新增加参数的含义简介
  • 13.7.4 将新增加的参数加入LayerParameter
  • 13.7.5 代码的编写之必写函数
  • 13.7.6 用户自定义函数的编写
  • 13.7.7 用户自定义数据的读取
  • 13.7.8 代码的实现
  • 第14章 深度学习的调参技巧总结
  • 14.1 不变数据的调参的基本原则
  • 14.2 Caffe fine-tuning调参的原则和方法
  • 14.3 综合数据调参的指导性建议
  • 14.4 2012年以后的经典网络结构概述
  • 14.4.1 Google的Inception结构
  • 14.4.2 微软的Residual Network结构
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

机械工业出版社有限公司

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。