1.哈佛大学统计学博士,香港大学博士生导师刘中华倾情作序,业内大咖孙明俊、李毅成、陈宇、周鹏飞、秦予平联袂力荐。 2.本书系统地介绍了MLOps的方方面面,聚焦于可落地的MLOps实践,为企业推机器学习生产化提供了有价值的参考。 3.本书不仅可以作为企业智能数字化转型的实践参考,也可以作为ML领域从业者的经验手册。 4.本书适合数据科学家、软件工程师、ML工程师及希望学习如何更好地组织ML实验的研究人员阅读。
售 价:¥
纸质售价:¥78.90购买纸书
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
前折页
内容简介
推荐序
前 言
第1章 MLOps概述
1.1 ML涉及的概念
1.1.1 监督学习
1.1.2 无监督学习
1.1.3 半监督学习
1.1.4 强化学习
1.1.5 何时使用ML
1.2 ML相关符号及术语定义
1.2.1 原始数据、输入数据、特征与特征工程
1.2.2 训练样本及预留样本
1.2.3 参数与超参数
1.2.4 参数模型、非参数模型、极大似然估计
1.2.5 ML管道
1.2.6 模型选择与性能权衡
1.3 ML的工程挑战与MLOps解决方案
1.3.1 MLOps的定义
1.3.2 MLOps与其他Ops的区别
1.3.3 谁在关注MLOps
1.3.4 为什么需要MLOps
1.3.5 MLOps给企业带来的增益
1.3.6 MLOps的工作流程
1.3.7 MLOps工程师需要具备的技能
1.3.8 什么时候真正需要MLOps
1.4 MLOps框架下的工程实践
1.4.1 ML工程及生产化模块
1.4.2 ML工程模块的设计原则
1.4.3 进行ML工程的模块设计时需要注意的细节
1.4.4 编码环境与模型探索
1.4.5 特征存储
1.4.6 实验管理和模型管理
1.4.7 服务
1.4.8 模型服务规模化
1.4.9 模型监控
1.5 本章总结
第2章 在MLOps框架下开展ML项目
2.1 界定业务范围阶段
2.1.1 在项目规划时考虑生产化
2.1.2 业务需求
2.1.3 确定衡量指标和项目范围
2.1.4 设计初步解决方案
2.1.5 制定共同语言
2.1.6 数据权限及准备
2.2 研究与探索阶段
2.2.1 数据探索
2.2.2 技术有效性检查
2.3 模型开发阶段
2.3.1 模型开发的必要准备
2.3.2 模型开发
2.3.3 模型验证
2.4 模型生产化阶段
2.5 ML项目生命周期
2.6 团队建设及分工
2.6.1 企业数字化程度
2.6.2 界定ML团队的角色
2.6.3 探讨ML项目的团队建设与分工
2.6.4 项目外包还是自建ML团队
2.7 本章总结
第3章 MLOps的基础准备:模型开发
3.1 背景概要
3.2 定义ML目标
3.2.1 业务问题概述
3.2.2 业务目标
3.2.3 ML目标
3.3 数据收集
3.3.1 数据获取
3.3.2 加载数据
3.3.3 关于数据集
3.4 数据预处理
3.4.1 缺失值处理
3.4.2 离群值检测
3.5 数据探索
3.5.1 目标变量
3.5.2 服务分析
3.5.3 用户行为分析
3.6 特征工程
3.6.1 分类和数值列拆分
3.6.2 One-Hot编码
3.6.3 特征缩放处理
3.6.4 目标变量
3.6.5 样本生成
3.7 构建和评估模型
3.7.1 处理非平衡问题
3.7.2 模型构建
3.8 持久化模型
3.9 构建REST API
3.9.1 导入相关库并加载模型
3.9.2 编写预测函数
3.9.3 用户请求
3.10 模型投产
3.10.1 ML投产陷阱及挑战
3.10.2 ML模型演化:从独立模型到模型工厂
3.10.3 利用MLOps实现模型的规模化投产
3.11 本章总结
第4章 ML与Ops之间的信息存储与传递机制
4.1 ML实验跟踪
4.1.1 ML实验跟踪的定义
4.1.2 ML实验跟踪的必要性
4.1.3 随时随地管理实验
4.1.4 ML实验跟踪与模型管理的区别
4.1.5 在MLOps框架中增加ML实验跟踪功能
4.1.6 设计和实现ML实验跟踪API
4.1.7 在生产中使用ML实验跟踪API
4.2 A/B在线实验
4.2.1 创建在线实验的必要性
4.2.2 确定实验的范围与目标
4.2.3 最小样本量的确定方法
4.2.4 对ML模型进行A/B测试
4.2.5 在MLOps框架中增加A/B在线实验功能
4.2.6 用于A/B在线实验的MAB方案
4.2.7 MLOps框架中的A/B实验管理
4.3 模型注册
4.3.1 模型注册的定义
4.3.2 模型注册的必要性
4.3.3 将模型注册功能融入MLOps框架
4.3.4 模型注册中心存储的信息
4.3.5 模型注册的价值
4.3.6 先从一个简单的模型注册开始
4.3.7 设计和实现符合MLOps标准的模型注册中心
4.3.8 在生产中使用模型注册API
4.3.9 模型注册中心的权限设置
4.4 特征存储
4.4.1 特征工程及使用挑战
4.4.2 特征存储的定义
4.4.3 在MLOps框架中增加特征存储
4.4.4 离线与在线特征
4.4.5 特征存储带来的益处
4.4.6 特征存储的架构设计
4.5 本章总结
第5章 模型统一接口设计及模型打包
5.1 ML模型基础接口概述
5.1.1 软件开发的策略模式
5.1.2 Scikit-Learn对接口的处理方法
5.2 业内一些常见的解决方案
5.2.1 AWS的ML生命周期工具SageMaker
5.2.2 Meta的ML平台FBLearner Flow
5.2.3 Uber的ML平台Michelangelo
5.2.4 开源的Seldon Core
5.3 一个简单的ML模型接口示例
5.3.1 继承ModelBase基类
5.3.2 模型管理基类
5.3.3 Flask REST端点
5.4 ML项目打包
5.4.1 模型及代码打包的必要性
5.4.2 模型和代码打包的事项及示例
5.4.3 模型序列化
5.5 本章总结
第6章 在MLOps框架下规模化部署模型
6.1 定义及挑战
6.1.1 ML部署的简单定义
6.1.2 部署ML模型的常见挑战
6.2 对业务的驱动逻辑
6.2.1 模型部署的边界
6.2.2 模型部署与业务应用流程的关系
6.3 常见的设计模式
6.3.1 用于在线推理的ML模型部署的挑战
6.3.2 什么时候需要在线推理
6.3.3 什么时候使用批量推理
6.3.4 数据库批量推理模式
6.3.5 嵌入式推理模式
6.3.6 单服务推理模式
6.3.7 微服务推理模式
6.4 构建MLOps通用推理服务:模型即服务
6.4.1 模型即服务的工作流程
6.4.2 模型即服务的核心服务模块
6.5 Web服务框架及应用生态
6.5.1 Web应用程序
6.5.2 WSGI服务器
6.5.3 Web服务器
6.5.4 使用REST API为模型提供服务
6.6 基于Docker的模型应用程序部署
6.6.1 Docker的定义
6.6.2 Docker容器、Python虚拟环境和虚拟机
6.6.3 构建HTTP REST API
6.6.4 创建生产级的Docker镜像
6.6.5 构建并运行Docker容器
6.7 模型即服务的自动化
6.7.1 模型即服务的逻辑设计
6.7.2 模型即服务的通用接口定义
6.7.3 使用SQLAlchemy ORM重构MLOps的信息存储表
6.8 在MLOps框架下实现模型部署示例
6.8.1 将构建好的模型进行注册
6.8.2 模型部署和服务化
6.8.3 ML实验跟踪功能升级
6.9 基于开源项目的模型服务解决方案
6.9.1 基于Kubernetes的资源管理项目KFServing
6.9.2 机器学习部署平台Seldon Core
6.9.3 轻量级模型部署及管理平台BentoML
6.9.4 机器学习生命周期管理平台MLflow
6.9.5 ML模型服务开源方案的总结
6.9.6 关于ML模型部署和服务方案的思考
6.10 本章总结
第7章 MLOps框架下的模型发布及零停机模型更新
7.1 ML在生产中的CI/CD
7.1.1 模型在生产中持续迭代的挑战
7.1.2 在MLOps框架中添加模型的发布流程
7.1.3 CI阶段的实践
7.1.4 CD阶段的实践
7.2 模型服务的发布策略
7.2.1 传统软件工程的发布策略
7.2.2 部署即发布
7.2.3 制定ML模型服务发布策略的必要性
7.2.4 影子测试策略与渐进式推出策略
7.2.5 竞争策略
7.3 零停机更新模型服务
7.3.1 生产中Flask的局限性
7.3.2 关于GIL、线程和进程的入门知识
7.3.3 从单线程的Flask到uWSGI
7.3.4 模型更新条件检查
7.3.5 动态更新模型方案
7.3.6 基于Kubernetes的扩展方案
7.4 本章总结
第8章 MLOps框架下的模型监控与运维
8.1 ML模型监控简介
8.1.1 模型的监控场景
8.1.2 为什么监控很重要
8.1.3 ML监控与传统软件监控的区别
8.1.4 谁需要关注ML的监控结果
8.1.5 生产中导致模型衰退或出错的原因
8.2 数据科学问题的监控
8.2.1 模型漂移
8.2.2 决策边界的改变
8.2.3 模拟漂移与模型重建修正
8.2.4 数据科学问题监控的常见指标和方法
8.3 运维问题的监控
8.3.1 运维问题的监控与可观察性
8.3.2 运维问题监控的指标定义
8.4 在MLOps框架内增加监控功能
8.4.1 ML的日志信息记录
8.4.2 使用特征存储简化模型监控
8.4.3 A/B在线实验闭环
8.4.4 模型衰退检测
8.4.5 模型维护
8.4.6 模型自动持续训练
8.4.7 API缓冲
8.5 本章总结
第9章 对MLOps的一些实践经验总结
9.1 ML和MLOps平台比较
9.1.1 聚焦传统ML与聚焦深度学习
9.1.2 聚焦分析探索与聚焦产品化
9.1.3 面向平民化数据科学与面向数据科学专家
9.1.4 专业化平台与端到端平台
9.2 自研MLOps平台
9.2.1 自研MLOps平台的经验总结
9.2.2 MLOps框架或平台的搭建原则
9.2.3 MLOps的架构参考
9.3 MLOps架构的成熟度评估
9.3.1 对业务需求的定义
9.3.2 数据准备
9.3.3 模型实验
9.3.4 模型部署
9.3.5 模型监控
9.3.6 模型的持续训练
9.3.7 关于MLOps架构成熟度评估的思考
9.4 本章总结
后折页
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜