京公网安备 11010802034615号
经营许可证编号:京B2-20210330
在国富如荷这些年的教学过程中,很多同学问到了一个问题:
在现实的商业世界中如何应用机器学习?
也就是说,虽然现在我们一直被各种算法文章和教程轰炸,但是关于企业中一个机器学习项目的“上下文”却总是缺失的。
今天CDA数据分析师教研副总监徐杨老师将给同学们介绍我们最近采集到的三个真实的企业机器学习项目,以让同学们更好地理解机器学习和数据科学在实践中是如何工作的。
这个项目来源于我们美国部门的反馈。这是一家娱乐行业的企业,由于保密协议的原因老师无法给出企业的名称。他们有一个专门的分析团队,在购物网站(如eBay)上搜索带有客户品牌的被盗或假冒商品。
在eBay上数以百万计的商品清单列表中,只有很小一部分是企业感兴趣的。于是分析团队上线了爬虫算法,抓取包含相关关键字的网页,并将网页图片存储在特定的文件夹中。每天,该团队都会登录到相关的门户网站,爬取并查看这些图片,以确定它们是否侵犯了企业的版权。这是一个非常昂贵却无聊的过程,昂贵在负责查看图片的人工成本,无聊在于这个查看工作本身没有太多技术含量却非常消耗工时。但是这个问题可以通过一点机器学习得到很大改善。
尴尬的是,现在很多很多讨论计算机视觉的文章都在关注一些"不务正业"的问题,例如 猫 vs 狗、汽车 vs 摩托车、手绘数字等等。但在这个项目中,我们必须在图像中寻找侵犯版权的东西。
决定使用哪种机器学习算法来解决问题通常很复杂,这个项目也不例外。一方面,我们有大量被标记为侵权或非侵权的数据,在这种情况下,很容易能看出这是一个有监督的分类问题。那么,我们考虑试一下神经网络算法?
另一方面,由于门户网站的设计,检索负面信息非常耗时(它不存储图像,只是一个链接),因此我们只有一个有限的数据集。此外,企业的徽标经常与其他企业的徽标一起出现在图像中(侵犯版权通常是很微妙的),并且足够深的神经网络很有可能会识别出类似商标的存在而不是单独某个公司的标志(就像神经网络通常会识别所有犬种而不仅仅是德国牧羊犬一样)。在这种情况下,关键是训练一个更浅的卷积神经网络来进行目标检测而不是分类。这阻止了网络学习 logo-general 特征并迫使它学习 logo-specific 特征。(这两个单词显然用英文来表述会更加准确,因此我们不给出翻译)
CNN(卷积神经网络)的算法本身是成熟的,那么这个项目的关键就在于生成训练集以供训练目标检测。它需要由来自原始训练集的大量不同角度和排列的图像组成,具有各种倾斜和对齐方式,每个图像都有一个包围框围绕着我们想要检测的对象(徽标)。在花费了相当大的精力完成训练集的工作后,这个项目的后续工作也顺利完成。
这个项目来源于与我们合作的一家企业,这是一家跨国零售连锁企业(同样是基于保密协议,这里不能给出企业名称)。由于这家企业的分支店铺遍布全球,包括一些不太安全的地区。因此需要构建一个算法,根据入室盗窃的历史实例生成入室盗窃的风险评分。
由于业务的性质,企业认为盗窃的风险随着周边地区的犯罪而增加,而不是由于商店的任何特定特征(易碎的窗户等)而增加。
该算法工具的目的不是直接防止盗窃,而是评估如何对整个商店组合分配固定预算,以减少盗窃损失。因此,算法输出的必须是更新每个安全设施的好处,或者说是推荐更新哪些安全设施,有点像推荐引擎。
与我们上一个示例类似,找出解决问题的关键是最大的挑战之一。分析团队首先尝试了生存分析,定制了 Cox Proportional Hazards 模型以接受多个事件。虽然它在洞察各种安全设施的防护性方面做得很好,但它对于地理因素的识别效果非常差,而地理区域因素正是客户想要识别的一个重要因素。
最后,分析团队决定为客户想要识别的每个因素构建单独的分类器(使用XGBoost),为每个时期设置固定的训练集日期范围,以解决较长时期的预测更有可能高估长期风险的问题。接下来,将这些因素导入回归模型来计算每个零售商店的预估损失,并使用该度量(结合地理度量)来生成具体的推荐。
Infinite Scroll,一般称为无限滚动模式,对于有很多相似条目需要展示的页面,可以用无限下拉的方式来避免用户通过点击下一页来获取更多内容。比如今日头条网站,打开后,可以一直向下滚动,当滚动到页面底部后,就会加载更多新闻条目。
之前,一个和我们美国部门有长期合作的网站转向了无限滚动模式,但对拉到底后接下来要显示哪篇文章发了愁。一开始,他们的分析团队提出的方法与强化学习非常相似——从10篇最受欢迎的文章中选择一篇或随机选择。
不幸的是,这个想法并没有给他们带来他们所希望的转化率,而无限滚动条也大大降低了他们的广告点击量(尽管这对用户来说是一种更好的体验)。
后来,分析团队使用词嵌入和用户嵌入,构建了一个协同过滤推荐引擎,为用户提供符合他们兴趣的文章,而不仅仅是最流行的。
这个项目最大的挑战不是选择哪个算法的问题,而是海量数据的处理问题:必须确保系统非常快速地返回推荐——这是无限滚动体验的本质。
另一个挑战是数据埋点和备份,因为用户的每个行为都有非常多个特征可以提取,因此需要找到一种方法来存储这些信息,且存储成本不会呈指数级增长。
分析团队决定按站点、类别和用户信息拆分模型,以减少嵌入矩阵的大小。同时还部署了各种降维技术以使其更易于管理,并密切监视系统以确定备份的理想截止日期。
总结
通过上述三个项目同学们可以发现,很多时候,算法选择和参数调参并不是企业中一个机器学习项目最重要的阶段。而客户需求、数据类型、计算速度、预测用法,甚至数据库优化都会影响到一个项目的成功。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在MySQL数据库运维与开发实践中,经常出现一种典型现象:数据库实际存储的数据量很小,数据表条数少、文件体积低,但服务器整体 ...
2026-09-11 很多数据分析师能熟练计算均值、标准差,但当被问到“总体和样本有什么区别”“参数和统计量有什么关系”“数据级别的高低如 ...
2026-09-11CDA数据分析师 出品 作者:李诗怡 定义: 将同一时间段内因具备相同属性或共同经历的用户划分为群体,分析其留存与生命周期价值 ...
2026-09-11在零售、商超、餐饮、线下门店等实体商业运营中,客流与销售额是衡量门店经营状态的两大核心指标。销售额是门店经营的最终结果, ...
2026-09-10在数据可视化体系中,柱形图是最基础、应用最广泛的图表类型,其中**累计柱形图(堆积柱状图)**是兼顾整体总量与内部结构的核心 ...
2026-09-10 许多数据分析师精通Excel函数和SQL查询,但当面对一张上万行的销售明细表,要快速回答“哪个地区销量最高”“哪款产品增长最 ...
2026-09-10在Python Pandas数据分析中,DataFrame是承载结构化数据的核心载体,数据清洗、数据修正、条件赋值、字段更新等实操场景,都离不 ...
2026-09-09 很多数据分析师掌握了Excel函数、会写SQL查询,但当被问到“数据从哪里来”“数据加工有哪些步骤”“如何使用分析工具连接数 ...
2026-09-09卡方检验(Chi-Square Test)是统计学中针对分类数据的经典显著性检验方法,核心用于判断两个离散分类变量是否相互独立、数据实 ...
2026-09-09CDA数据分析师 出品 作者:李诗怡 1. 销售漏斗阶段判断 题目:销售漏斗模型中,通过广告、社交媒体等方式触达品牌信息(如浏览品 ...
2026-09-07在Python数据分析中,Pandas库的DataFrame是最核心、最常用的结构化数据表对象,类似于Excel的二维表格,具备规整的行列结构、字 ...
2026-09-07在数据分析、经营复盘、业绩预测与经济统计工作中,平均增速(平均增长率)是衡量数据长期变化趋势、业务发展快慢的核心指标。不 ...
2026-09-07 很多数据分析师精通Excel单元格操作,但当被问到“表结构数据的基本处理单位是什么”“字段和记录的本质区别”“为什么表结 ...
2026-09-07随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02