深度学习处理结构化数据实战
作者: (加) 马克·瑞安(Mark Ryan) 史跃东 译
出版社:清华大学出版社 2022-01-01
简介:告诉你一个不太光彩的秘密:在大多数数据科学项目中,有一半的时间都花在清理和准备数据上了。但还有更好的方法:针对表格数据和关系数据库进行优化的 深度学习技术,无需密集的特性工程,就能提供洞察和分析。学习使用少量的数据过滤、验证和清洗,就能解锁深度学习性能的技能。《深度学习处理结构化数据实战》传授面向表格数据和关系数据库的强大数据分析技术。本书从多伦多公交系统的数据集出发,带你领略用深度学习处理表格化数据的简易性和便捷性,并教你解决在生产环境中部署模型和监控模型性能等关键问题。主要内容●何时何地使用深度学习技术●Keras深度学习模型的架构●训练、部署以及维护模型●量化评估性能【目录】第1 章 为何要使用结构化数据进行深度学习 11.1 深度学习概述 ·21.2 深度学习的优缺点 71.3 深度学习软件栈概述 101.4 结构化数据与非结构化数据 121.5 反对使用结构化数据进行深度学习的相关意见 151.6 为何要研究基于结构化数据的深度学习问题? 161.7 本书附带的代码概述 181.8 你应该知道的内容 191.9 本章小结 20第2 章 示例问题和Pandas数据帧简介 232.1 深度学习开发环境选项 242.2 探索Pandas 的代码 272.3 Python 中的Pandas数据帧 282.4 将CSV 文件提取到Pandas 数据帧中 312.5 使用Pandas 来完成SQL 操作 322.6 主示例:预测有轨电车的延误情况 352.7 为何真实世界的数据集对于掌握深度学习至关重要 382.8 输入数据集的格式和范围 392.9 目的地:端到端的解决方案 412.10 有关解决方案代码的更多细节 442.11 开发环境:普通环境与深度学习专用环境 472.12 深入研究反对深度学习的意见 482.13 深度学习是如何变得更易于使用的 522.14 训练深度学习模型初试 532.15 本章小结 56第3 章 准备数据1:探索及清理数据 573.1 探索及清理数据的代码 583.2 在Python 中使用配置文件 583.3 将XLS 文件提取到Pandas 数据帧中 613.4 使用pickle 将Pandas数据帧从一个会话保存到另一个会话中 673.5 探索数据 693.6 将数据分为连续型、分类型以及文本型 743.7 清理数据集中存在的问题:数据丢失、错误以及猜测 763.8 确定深度学习需要多少数据 823.9 本章小结 83第4 章 准备数据2:转换数据 ·854.1 准备及转换数据的代码 864.2 处理不正确的数值:路线 864.3 为何只能用单个替代值来换掉所有错误的值? 894.4 处理不正确的值:车辆 904.5 处理不一致的值:位置 924.6 去向远方:位置 944.7 处理类型不匹配问题 984.8 处理依然包含错误数据的行 994.9 创建派生列 ·1004.10 准备非数值型数据来训练深度学习模型 1014.11 端到端解决方案概述 1054.12 本章小结 108第5 章 准备并构建模型 1115.1 数据泄露和数据特征是训练模型的公平博弈 1125.2 使用领域专业知识和小得分测试来防止数据泄露 1135.3 防止有轨电车延误预测中的数据泄露问题 1145.4 探索Keras 和建立模型的代码 ·1175.5 推导用于训练模型的数据帧 1185.6 将数据帧转换为Keras 模型期望的格式 1225.7 Keras 和TensorFlow简史 1235.8 从TensorFlow 1.x 迁移到TensorFlow 2 1255.9 TensorFlow 与PyTorch 1265.10 Keras 中的深度学习模型架构 1275.11 数据结构是如何定义Keras 模型的 1325.12 嵌入的力量 1355.13 基于数据结构自动构建Keras 模型的代码 1385.14 探索模型 1415.15 模型参数 1485.16 本章小结 149第6 章 模型训练与实验 1516.1 训练深度学习模型的代码 1526.2 审核训练深度学习模型的过程 ·1526.3 回顾有轨电车延误预测模型的总体目标 1566.4 选择训练、验证以及测试数据集 ·1596.5 初始训练 1606.6 评估模型的性能 1636.7 Keras 回调:从训练中获得收益 1676.8 从多次训练中获得相同的结果 ·1756.9 评估捷径 1766.10 显式保存已训练的模型 1786.11 运行一系列训练实验 1796.12 本章小结 186第7 章 对已训练的模型进行更多实验 1877.1 使用模型进行更多实验的代码 ·1887.2 验证删除不良值是否可改善模型 ·1887.3 验证嵌入列是否可提升模型的性能 1907.4 深度学习模型与XGBoost ·1917.5 改进深度学习模型可能的后继步骤 1987.6 本章小结 199第8 章 模型部署 2018.1 模型部署概述 2028.2 既然部署工作很重要,那为何又如此艰难? 2048.3 回顾一次性评分 2048.4 Web 部署的用户体验 2068.5 通过Web 部署来部署模型的步骤 2078.6 Web 部署的幕后知识 2118.7 使用Facebook Messenger 部署的用户体验 2148.8 使用FacebookMessenger 部署的幕后知识 2178.9 关于Rasa 的更多背景知识 2188.10 使用Rasa 在Facebook Messenger 中部署模型的步骤 2218.11 pipeline 简介 2258.12 在模型训练阶段定义pipeline 2298.13 在评分阶段应用pipeline ·2328.14 部署后维护模型 2348.15 本章小结 237第9 章 建议的后继步骤 2399.1 回顾本书目前已述内容 2409.2 有轨电车延误预测项目的后继工作 2419.3 将详细的位置信息添加到有轨电车延迟预测项目中 2429.4 使用天气数据来训练深度学习模型 2469.5 在有轨电车延误预测项目中增加季节或者一天中的时间数据 2529.6 归因:删除包含不良值的记录的替代方法 2539.7 发布有轨电车延误预测模型的Web部署 2549.8 使有轨电车延误预测模型适用于新的数据集 2569.9 准备数据集并训练模型 2599.10 通过Web 部署来部署模型 2619.11 使用FacebookMessenger 部署模型 2639.12 使本书中的方法适用于不同的数据集 ·2669.13 其他的学习资源 2729.14 本章小结 274附录 使用Google 协作实验室(GoogleColaboratory) ·275A.1 Colab 简介 ·275A.2 使Google 云硬盘适用于Colab会话 277A.3 在Colab 中使用repo并运行notebook 279A.4 Colab 和Paperspace的优劣 282