
作者 | Daniel Godoy
翻译 | Mika
本文为 CDA 数据分析师原创作品,转载需授权
想象一下你点了一份披萨外卖,过了一会儿美味热腾腾的披萨就送到家门口了。
你有没有想过从下单点外卖到披萨送过来当中的工作流程呢?我指的是完成的工作流程,包括从种下披萨上的西红柿到外卖骑手送单到你的楼下。其实这一系列过程与与机器学习工作流程并没有什么不同。
不妨让我们来看看。
这篇文章的灵感来自Google首席决策科学家Cassie Kozyrkov在柏林Data Natives Conference上发表的演讲。
1.播种
农民播种的种子之后会长为披萨的配料,比如西红柿等。
这相当于数据生成过程,例如用户操作、移动、触发传感器等。
2.收获
接着到了收获的时节,也就是蔬菜或水果成熟的时候。
这相当于数据收集,也就是浏览器或传感器将用户操作或触发传感器的事件转换为实际数据。
3.运输
收获后,产品会被运到目的地,作为披萨中的原料。
这相当于将数据提取到存储库中,以便之后从中获取数据库,如数据库或数据湖。
4.选择厨具和设备
每种原料都需要适合的用具来处理。如果要切片,就用刀;如果要搅拌,就用勺子。设备方面也是如此,如果要烤,就用烤箱;如果要炒,就用炉子。你还可以使微波炉等更复杂的设备。
在机器学习中,厨具是用于预处理数据的技术,而设备就相当于线性回归、随机森林等算法。你也可以使用微波炉等复杂的设备,这也就相当于深度学习。当中不同的就是超参数,在简单的设备(算法)中只有少数参数;而复杂设备(算法)中,涉及到的参数更多。但这并不意味着复杂的算法就能提供更好的性能。因此,你需要明智地选择算法。
5.选择菜谱
仅有原料和用具是不够的。你还需要菜谱,当中包括你准备这道菜的所有步骤。
这就是模型,记住模型与算法不同,模型包括所有算法需要的预处理和之后的处理过程。
6.准备配料
我敢打赌,大多数菜谱的第一条指令都是:“ 切片 ”,削皮等等。而不是洗蔬菜等,因为这是理所当然的,没人想吃没洗的蔬菜。
同样,数据也是如此,没有人想要脏数据。你必须清理数据,即处理缺失值和异常值。然后需要进行削皮和切片,也就是进行预处理,对变量进行分类(例如男性或女性)编码为数字变量(0或1)。
没有人喜欢清洗这个部分。无论是数据科学家还是厨师。
7.特别准备
有时你可以用原料来创新,以达到更好的品味或更复杂的表现。
你可以将牛排风干获得不同的风味,或者将胡萝卜削成玫瑰的形状作为装饰。
这就是特征工程。这是一个重要的步骤,如果完成得好能够显着提高模型的性能。
几乎每个数据科学家都喜欢这个环节,我猜厨师们也是如此。
8.烹饪
这是最重要的步骤,如果不开火炒菜一切都是徒劳。你将准备好的配料放入炊具中,调节油温等等。
这就模型训练的环节。你将数据提供给算法,调整其超参数并等待一段时间再重新检查。
9.尝一尝
即使你严格按照菜谱来做菜,你也不能保证一切都是完全正确的。那么,怎么知道你是否做对了?品尝它!如果不好你可以添加更多盐来调味。或者调解下火力,继续烹饪。
但有时披萨会烧糊,或者味道糟糕到难以挽救。那么只能扔进垃圾箱,吸取教训并重新开始。
坚持不懈加上一点点运气就能做出美味的披萨。
品尝就是评估过程。你需要评估模型,检查它是否运行正常。如果没有,你需要添加更多特征,还可以更改超参数。但你继续训练!
不幸的是,有时你的模型不会得出合适的解决方案,或者做出错误的预测,没有任何办法修改和挽救。那么这时你只能放弃这个模型,从中吸取教训然后重新开始。
坚持不懈和一点点运气将会产生一个高性能的模型。
10.送餐
在厨师看来,他的工作已经完成了,做好了一道美味的披萨。
但是,如果披萨没有及时送到顾客的手中也是不成功的。
披萨做好后必须立即包装,保持温度,及时送给顾客。如果外卖骑手没有到达目的地,或在途中丢失了披萨,或者把披萨颠簸得面目全非,之前所有的功夫都将是徒劳的。
送餐就相当于部署。不是部署披萨,而是预测。预测必须好好包装,不是用餐盒,而是包装成数据产品,因此才能送到用户手里。如果这个流程出了问题,中间崩溃了或者预测发生了变动,那么前面花费力气所做的模型训练和验证工作也就没有价值了。
结语
就是这样。机器学习就像点外卖一样,当中需要许多人参与,合作付出努力,但最终结果都很美味!
总结几个要点:
* 如果原料有问题,菜品也会有问题。没有任何菜谱或炊具能解决这个问题。
* 如果你是厨师,那不要忘了,如果没有送餐这一步,烹饪就没有意义,因为没有人会品尝到美味的食物 ;
* 如果你是餐馆老板,不要强迫你的厨师使用某种炊具或设备,有时微波炉并不是最好的选择。如果让厨师花大量的时间在清洗和切食材上,这也会让厨师很不开心。
好了不说了,去点披萨吃了。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
SQL Server 中 CONVERT 函数的日期转换:从基础用法到实战优化 在 SQL Server 的数据处理中,日期格式转换是高频需求 —— 无论 ...
2025-09-18MySQL 大表拆分与关联查询效率:打破 “拆分必慢” 的认知误区 在 MySQL 数据库管理中,“大表” 始终是性能优化绕不开的话题。 ...
2025-09-18CDA 数据分析师:表结构数据 “获取 - 加工 - 使用” 全流程的赋能者 表结构数据(如数据库表、Excel 表、CSV 文件)是企业数字 ...
2025-09-18DSGE 模型中的 Et:理性预期算子的内涵、作用与应用解析 动态随机一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明确:TIF 中的地名有哪两种存在形式? 在开始提取前,需先判断 TIF 文件的类型 —— ...
2025-09-17CDA 数据分析师:解锁表结构数据特征价值的专业核心 表结构数据(以 “行 - 列” 规范存储的结构化数据,如数据库表、Excel 表、 ...
2025-09-17Excel 导入数据含缺失值?详解 dropna 函数的功能与实战应用 在用 Python(如 pandas 库)处理 Excel 数据时,“缺失值” 是高频 ...
2025-09-16深入解析卡方检验与 t 检验:差异、适用场景与实践应用 在数据分析与统计学领域,假设检验是验证研究假设、判断数据差异是否 “ ...
2025-09-16CDA 数据分析师:掌控表格结构数据全功能周期的专业操盘手 表格结构数据(以 “行 - 列” 存储的结构化数据,如 Excel 表、数据 ...
2025-09-16MySQL 执行计划中 rows 数量的准确性解析:原理、影响因素与优化 在 MySQL SQL 调优中,EXPLAIN执行计划是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 对象的 text 与 content:区别、场景与实践指南 在 Python 进行 HTTP 网络请求开发时(如使用requests ...
2025-09-15CDA 数据分析师:激活表格结构数据价值的核心操盘手 表格结构数据(如 Excel 表格、数据库表)是企业最基础、最核心的数据形态 ...
2025-09-15Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12CDA 数据分析师:业务数据分析步骤的落地者与价值优化者 业务数据分析是企业解决日常运营问题、提升执行效率的核心手段,其价值 ...
2025-09-12用 SQL 验证业务逻辑:从规则拆解到数据把关的实战指南 在业务系统落地过程中,“业务逻辑” 是连接 “需求设计” 与 “用户体验 ...
2025-09-11塔吉特百货孕妇营销案例:数据驱动下的精准零售革命与启示 在零售行业 “流量红利见顶” 的当下,精准营销成为企业突围的核心方 ...
2025-09-11CDA 数据分析师与战略 / 业务数据分析:概念辨析与协同价值 在数据驱动决策的体系中,“战略数据分析”“业务数据分析” 是企业 ...
2025-09-11Excel 数据聚类分析:从操作实践到业务价值挖掘 在数据分析场景中,聚类分析作为 “无监督分组” 的核心工具,能从杂乱数据中挖 ...
2025-09-10统计模型的核心目的:从数据解读到决策支撑的价值导向 统计模型作为数据分析的核心工具,并非简单的 “公式堆砌”,而是围绕特定 ...
2025-09-10