科技
类型
可以朗读
语音朗读
235千字
字数
2021-11-01
发行日期
展开全部
主编推荐语
用TensorFlow轻松实现自动化机器学习。
内容简介
本书介绍如何构建完整的机器学习流水线,从而在生产环境中准备数据以及训练、验证、部署和管理机器学习模型。你将了解机器学习流水线的每个环节,以及如何利用TensorFlow Extended(TFX)构建机器学习流水线。模型的生命周期是一个闭环,其中包括数据读取、数据校验、数据预处理、模型训练、模型分析、模型验证、模型部署、模型反馈等环节。
目录
- 版权信息
- 版权声明
- O'Reilly Media, Inc. 介绍
- 业界评论
- 本书赞誉
- 序
- 前言
- 第1章 入门
- 1.1 为什么要用机器学习流水线
- 1.2 什么时候考虑使用机器学习流水线
- 1.3 机器学习流水线步骤概述
- 1.3.1 数据读取和版本控制
- 1.3.2 数据校验
- 1.3.3 数据预处理
- 1.3.4 模型训练和模型调优
- 1.3.5 模型分析
- 1.3.6 模型版本控制
- 1.3.7 模型部署
- 1.3.8 反馈循环
- 1.3.9 数据隐私
- 1.4 流水线编排
- 1.4.1 为什么使用流水线编排工具
- 1.4.2 有向无环图
- 1.5 示例项目
- 1.5.1 项目结构
- 1.5.2 机器学习模型
- 1.5.3 示例项目的目标
- 1.6 小结
- 第2章 TensorFlow Extended入门
- 2.1 什么是TFX
- 2.2 安装TFX
- 2.3 TFX组件概述
- 2.4 什么是机器学习元数据
- 2.5 交互式流水线
- 2.6 TFX的替代品
- 2.7 Apache Beam简介
- 2.7.1 安装
- 2.7.2 基本数据流水线
- 2.7.3 执行流水线
- 2.8 小结
- 第3章 数据读取
- 3.1 数据读取的概念
- 3.1.1 读取本地数据文件
- 3.1.2 读取远程数据文件
- 3.1.3 直接从数据库中读取数据
- 3.2 数据准备
- 3.2.1 拆分数据集
- 3.2.2 跨越数据集
- 3.2.3 对数据集进行版本控制
- 3.3 数据读取策略
- 3.3.1 结构化数据
- 3.3.2 自然语言处理中的文本数据
- 3.3.3 用于计算机视觉问题的图像数据
- 3.4 小结
- 第4章 数据校验
- 4.1 为什么要进行数据校验
- 4.2 TFDV
- 4.2.1 安装
- 4.2.2 根据数据生成统计信息
- 4.2.3 从数据生成模式
- 4.3 识别数据中的问题
- 4.3.1 比较数据集
- 4.3.2 更新模式
- 4.3.3 数据偏斜和漂移
- 4.3.4 存在偏差的数据集
- 4.3.5 在TFDV中切分数据
- 4.4 使用GCP处理大型数据集
- 4.5 将TFDV集成到机器学习流水线中
- 4.6 小结
- 第5章 数据预处理
- 5.1 为什么要进行数据预处理
- 5.1.1 在整个数据集的上下文中预处理数据
- 5.1.2 扩展预处理步骤
- 5.1.3 避免训练-服务偏斜
- 5.1.4 将预处理步骤和机器学习模型作为一个工件进行部署
- 5.1.5 检查流水线中的预处理结果
- 5.2 使用TFT做数据预处理
- 5.2.1 安装
- 5.2.2 预处理策略
- 5.2.3 最佳实践
- 5.2.4 TFT函数
- 5.2.5 TFT的独立执行
- 5.2.6 将TFT集成到机器学习流水线中
- 5.3 小结
- 第6章 模型训练
- 6.1 定义示例项目的模型
- 6.2 TFX Trainer组件
- 6.2.1 run_fn()函数
- 6.2.2 运行Trainer组件
- 6.2.3 其他关于Trainer组件的注意事项
- 6.3 在交互式流水线中使用TensorBoard
- 6.4 分布策略
- 6.5 模型调整
- 6.5.1 超参数调整的策略
- 6.5.2 TFX 流水线中的超参数调整
- 6.6 小结
- 第7章 模型分析和模型验证
- 7.1 如何分析模型
- 7.1.1 分类指标
- 7.1.2 回归指标
- 7.2 TensorFlow模型分析
- 7.2.1 用TFMA分析单个模型
- 7.2.2 用TFMA分析多个模型
- 7.3 模型公平性分析
- 7.3.1 用TFMA划分模型预测
- 7.3.2 用公平性指标检查决策阈值
- 7.3.3 详解假设分析工具
- 7.4 模型可解释性
- 7.4.1 使用WIT生成模型解释
- 7.4.2 其他模型解释方法
- 7.5 用TFX进行分析和验证
- 7.5.1 ResolverNode
- 7.5.2 Evaluator组件
- 7.5.3 用Evaluator组件进行验证
- 7.5.4 TFX Pusher组件
- 7.6 小结
- 第8章 用TensorFlow Serving部署模型
- 8.1 简单的模型服务器
- 8.2 基于Python API部署模型的缺点
- 8.2.1 缺少代码隔离
- 8.2.2 缺少模型版本控制
- 8.2.3 低效的模型推算
- 8.3 TensorFlow Serving
- 8.4 TensorFlow Serving架构概述
- 8.5 为TensorFlow Serving导出模型
- 8.6 模型签名
- 8.7 查看导出的模型
- 8.7.1 查看模型
- 8.7.2 测试模型
- 8.8 设置TensorFlow Serving
- 8.8.1 Docker安装
- 8.8.2 原生Ubuntu安装
- 8.8.3 从源码编译TensorFlow Serving
- 8.9 配置TensorFlow服务器
- 8.9.1 单一模型配置
- 8.9.2 多模型配置
- 8.10 REST与gRPC
- 8.10.1 REST
- 8.10.2 gRPC
- 8.11 用模型服务器预测
- 8.11.1 用REST获得模型预测
- 8.11.2 通过gRPC使用TensorFlow Serving
- 8.12 用TensorFlow Serving进行模型A/B测试
- 8.13 从模型服务器获取模型元数据
- 8.13.1 使用REST请求模型元数据
- 8.13.2 使用gRPC请求模型元数据
- 8.14 批量推算请求
- 8.15 配置批量预测
- 8.16 其他TensorFlow Serving优化方法
- 8.17 TensorFlow Serving的替代品
- 8.17.1 BentoML
- 8.17.2 Seldon
- 8.17.3 GraphPipe
- 8.17.4 Simple TensorFlow Serving
- 8.17.5 MLflow
- 8.17.6 Ray Serve
- 8.18 在云端部署
- 8.18.1 用例
- 8.18.2 在GCP上进行示例部署
- 8.19 使用TFX流水线进行模型部署
- 8.20 小结
- 第9章 使用TensorFlow Serving进行进阶模型部署
- 9.1 解耦部署环节
- 9.1.1 工作流概述
- 9.1.2 优化远程模型加载
- 9.2 为部署模型进行优化
- 9.2.1 量化
- 9.2.2 剪枝
- 9.2.3 蒸馏
- 9.3 在TensorFlow Serving中使用TensorRT
- 9.4 TFLite
- 9.4.1 用TFLite优化模型的步骤
- 9.4.2 使用TensorFlow Serving实例部署TFLite模型
- 9.5 监测TensorFlow Serving实例
- 9.5.1 设置Prometheus
- 9.5.2 TensorFlow Serving配置
- 9.6 使用TensorFlow Serving和Kubernetes进行简单的扩容
- 9.7 小结
- 第10章 TensorFlow Extended的高级功能
- 10.1 流水线的高级功能
- 10.1.1 同时训练多个模型
- 10.1.2 导出TFLite模型
- 10.1.3 热启动模型训练
- 10.2 人工审核
- 10.2.1 创建Slack组件
- 10.2.2 如何使用Slack组件
- 10.3 TFX自定义组件
- 10.3.1 自定义组件的应用场景
- 10.3.2 从零创建自定义组件
- 10.3.3 复用现有组件
- 10.4 小结
- 第11章 流水线第一部分:Apache Beam和Apache Airflow
- 11.1 选择哪种编排工具
- 11.1.1 Apache Beam
- 11.1.2 Apache Airflow
- 11.1.3 Kubeflow Pipelines
- 11.1.4 AI Platform上的Kubeflow Pipelines
- 11.2 将交互式TFX流水线转换为生产流水线
- 11.3 Beam和Airflow的简单交互式流水线转换
- 11.4 Apache Beam简介
- 11.5 使用Apache Beam编排TFX流水线
- 11.6 Apache Airflow简介
- 11.6.1 安装和初始设置
- 11.6.2 基本Airflow示例
- 11.7 使用Apache Airflow编排TFX流水线
- 11.7.1 流水线设置
- 11.7.2 运行流水线
- 11.8 小结
- 第12章 流水线第二部分:Kubeflow Pipelines
- 12.1 Kubeflow Pipelines概述
- 12.1.1 安装和初始设置
- 12.1.2 访问已安装的Kubeflow Pipelines
- 12.2 使用Kubeflow Pipelines编排TFX流水线
- 12.2.1 流水线设置
- 12.2.2 运行流水线
- 12.2.3 Kubeflow Pipelines的有用功能
- 12.3 基于Google Cloud AI Platform的流水线
- 12.3.1 流水线设置
- 12.3.2 TFX流水线设置
- 12.3.3 运行流水线
- 12.4 小结
- 第13章 反馈循环
- 13.1 显式反馈和隐式反馈
- 13.1.1 数据飞轮
- 13.1.2 现实世界中的反馈循环
- 13.2 收集反馈的设计模式
- 13.2.1 用户根据预测采取了某些措施
- 13.2.2 用户对预测的质量进行评分
- 13.2.3 用户纠正预测
- 13.2.4 众包打标
- 13.2.5 专家打标
- 13.2.6 自动产生反馈
- 13.3 如何跟踪反馈循环
- 13.3.1 跟踪显式反馈
- 13.3.2 跟踪隐式反馈
- 13.4 小结
- 第14章 机器学习的数据隐私
- 14.1 数据隐私问题
- 14.1.1 为什么关心数据隐私
- 14.1.2 最简单的加强隐私保护的方法
- 14.1.3 哪些数据需要保密
- 14.2 差分隐私
- 14.2.1 局部差分隐私和全局差分隐私
- 14.2.2 epsilon、delta和隐私预算
- 14.2.3 机器学习的差分隐私
- 14.3 TensorFlow Privacy
- 14.3.1 使用差分隐私优化器进行训练
- 14.3.2 计算epsilon
- 14.4 联邦学习
- 14.5 加密机器学习
- 14.5.1 加密模型训练
- 14.5.2 将训练好的模型转换为加密的预测服务
- 14.6 其他数据保密方法
- 14.7 小结
- 第15章 流水线的未来和下一步
- 15.1 模型实验跟踪
- 15.2 关于模型发布管理的思考
- 15.3 未来的流水线能力
- 15.4 TFX与其他机器学习框架
- 15.5 测试机器学习模型
- 15.6 用于机器学习的CI/CD系统
- 15.7 机器学习工程社区
- 15.8 小结
- 附录A 机器学习基础架构简介
- A.1 什么是容器
- A.2 Docker简介
- A.2.1 Docker镜像简介
- A.2.2 构建第一个Docker镜像
- A.2.3 深入研究Docker CLI
- A.3 Kubernetes简介
- A.3.1 Kubernetes的一些概念定义
- A.3.2 Minikube和kubectl入门
- A.3.3 使用Kubernetes CLI进行交互
- A.3.4 定义Kubernetes资源
- A.4 将应用部署到Kubernetes
- 附录B 在Google Cloud上设置Kubernetes集群
- B.1 开始之前
- B.2 Google Cloud上的Kubernetes
- B.2.1 选择Google Cloud项目
- B.2.2 设置Google Cloud项目
- B.2.3 创建Kubernetes集群
- B.2.4 使用kubectl访问Kubernetes集群
- B.2.5 在Kubectl中使用Kubernetes集群
- B.3 Kubeflow Pipelines的持久卷设置
- 附录C 操作Kubeflow Pipelines的技巧
- C.1 自定义TFX镜像
- C.2 通过持久卷交换数据
- C.3 TFX命令行界面
- C.3.1 TFX及其依赖项
- C.3.2 TFX模板
- C.3.3 使用TFX CLI发布流水线
- 关于作者
- 关于封面
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。