深度学习是将机器人性化的重要途径。研究人员可以使用PyTorch Lightning构建自己的深度学习模型,而无须书写冗长的样板代码。本书将帮助读者最大限度地提高深度学习项目的生产率,同时确保从模型制定到具体实施的充分灵活性。
本书提供了实现PyTorch Lightning模型及其相关思想的实践方法,这些方法将允许读者在较短时间内启动、运行及部署模型。读者将学习如何在云平台上配置PyTorch Lightning,了解其体系结构组件,并探索如何对这些体系结构组件进行配置以构建各种行业的解决方案。然后,将从头开始构建一个网络,并部署一个应用程序,同时讨论如何根据特定的需求对其进行扩展,从而突破框架所能提供的功能。
库纳尔·萨瓦卡是一位首席数据科学家和人工智能思想的先驱人物。他目前领导全球合作伙伴生态系统,旨在开发创新性的人工智能产品。他是咨询委员会成员和天使投资人。他拥有哈佛大学的硕士学位,主修应用统计学。他一直致力于应用机器学习特别是深度学习来解决行业中以前悬而未决的问题。他在该领域拥有20多项专利,并撰写了大量的相关论文。他是人工智能产品研发实验室的主要负责人。
在深入研究数据之余,他还一直热哀于天文学和野生动植物的研究和探索,另外他还擅长攀岩,并学习过飞行技术。
第一部分 开始使用PyTorch Lightning
第1章 PyTorch Lightning体验之旅
1.1 PyTorch Lightning的独特之处
1.1.1 第一个深度学习模型
1.1.2 数量众多的框架
1.1.3 PyTorch与TensorFlow的比较
1.1.4 最佳平衡:PyTorch Lightning
1.2
:PyTorch Lightning 体验之旅
1.3 了解PyTorch Lightning的关键组件
1.3.1 深度学习管道
1.3.2 PyTorch Lightning 抽象层
1.4 使用PyTorch Lightning创建人工智能应用程序
1.5 进一步阅读的资料
1.6 本章小结
第2章 深入研究第一个深度学习模型
2.1 技术需求
2.2 神经网络入门
2.2.1 为什么使用神经网络
2.2.2 关于XOR运算符
2.2.3 多层感知器体系结构
2.3 Hello World 多层感知器模型
2.3.1 准备数据
2.3.2 构建模型
2.3.3 训练模型
2.3.4 加载模型
2.3.5 预测分析
2.4 构建第一个深度学习模型
2.4.1 究竟什么构成了“深度”
2.4.2 卷积神经网络体系结构
2.5 用于图像识别的卷积神经网络模型
2.5.1 加载数据
2.5.2 构建模型
2.5.3 训练模型
2.5.4 计算模型的准确率
2.5.5 模型改进练习
2.6 本章小结
第3章 使用预训练的模型进行迁移学习
3.1 技术需求
3.2 迁移学习入门
3.3 使用预训练VGG-16体系结构的图像分类器
3.3.1 加载数据
3.3.2 构建模型
3.3.3 训练模型
3.3.4 计算模型的准确率
3.4 基于BERT transformer的文本分类
3.4.1 初始化模型
3.4.2 自定义输入层
3.4.3 准备数据
3.4.4 设置数据加载器实例
3.4.5 设置模型训练
3.4.6 设置模型测试
3.4.7 训练模型
3.4.8 测量准确率
3.5 本章小结
第4章 Bolts中的现成模型
4.1 技术需求
4.2 使用Bolts的逻辑回归
4.2.1 加载数据集
4.2.2 构建逻辑回归模型
4.2.3 训练模型
4.2.4 测试模型
4.3 使用Bolts的生成式对抗网络
4.3.1 加载数据集
4.3.2 配置生成式对抗网络模型
4.3.3 训练模型
4.3.4 加载模型
4.3.5 生成伪造图像
4.4 使用Bolts的自动编码器
4.4.1 加载数据集
4.4.2 配置自动编码器模型
4.4.3 训练模型
4.4.4 获得训练结果
4.5 本章小结
第二部分 使用PyTorch Lightning解决问题
第5章 时间序列模型
5.1 技术需求
5.2 时间序列概述
5.3 时间序列模型入门
5.4 基于循环神经网络的每日天气预报时间序列模型
5.4.1 加载数据
5.4.2 特征工程
5.4.3 创建自定义数据集
5.4.4 使用PyTorch Lightning配置循环神经网络模型
5.4.5 训练模型
5.4.6 度量训练损失
5.4.7 加载模型
5.4.8 对测试数据集进行预测
5.5 基于长短期记忆网络的时间序列模型
5.5.1 数据集分析
5.5.2 特征工程
5.5.3 创建自定义数据集
5.5.4 使用PyTorch Lightning配置长短期记忆网络模型
5.5.5 训练模型
5.5.6 度量训练损失
5.5.7 加载模型
5.5.8 对测试数据集进行预测
5.6 本章小结
第6章 深度生成式模碧
6.1 技术需求
6.2 生成式对抗网络模型门
6.3 使用生成式对抗网络创建新的鸟类物种
6.3.1 加载数据集
6.3.2 特征工程实用函数
6.3.3 配置鉴别器模型
6.3.4 配置生成器模型
6.3.5 配置生成式对抗网络模型
6.3.6 训练生成式对抗网络模型
6.3.7 获取虚假鸟类图像的输出
6.4 本章小结
第7章 半监督学习
7.1 技术需求
7.2 半监督学习入门
7.3 CNN—RNN体系结构概览
7.4 为图像生成说明文字
7.4.1 下载数据集
7.4.2 组装数据
7.4.3 训练模型
7.4.4 生成说明文字
7.4.5 进一步改进的方向
7.5 本章小结
第8章 自监督学习
8.1 技术需求
8.2 自监督学习入门
8.3 什么是对比学习
8.4 SimCLR体系结构
8.5 用于图像识别的SimCLR对比学习模型
8.5.1 收集数据集
8.5.2 设置数据增强
8.5.3 加载数据集
8.5.4 配置训练
8.5.5 模型训练
8.5.6 评估模型的性能
8.6 进一步改进的方向
8.7 本章小结
第三部分 高级主题
第9章 部署和评分模型
9.1 技术需求
9.2 在本地部署和评分深度学习模型
9.2.1 pickle(.PKL)模型文件格式
9.2.2 部署深度学习模型
9.2.3 保存和加载模型检查
9.2.4 使用Flask部署和评分模型
9.3 部署和评分可以移植的模型
9.3.1 ONNX的格式及