传统机器学习算法在实际业务中的使用场景


传统机器学习算法在实际业务中的使用场景

文章插图
前言
如果嫌麻烦,你可以直接跳到正题观看~
最近无论是在工作中的交谈,还是在日常刷屏的新闻,铺天盖地的都是大模型 。我横竖是看不明白,费了大劲终于从字缝里看到了两个字,玄学 。仿佛回到了我的学生时代 。
【传统机器学习算法在实际业务中的使用场景】还记得6年前刚进入研究生实验室时,师兄兴奋的对我说:小伙子,欢迎来到我们的修仙世界!——当时学校跟英伟达合作,刚刚从英伟达那里弄了500块Tesla显卡,供各个实验室申请使用 。这,是我们崭新的炼丹炉 。经过3年的研究生生涯,我对深度学习的理解,仅仅到能够使用深度学习模型的程度 。期间也有一些小成绩,包括一篇CCF B类会议论文和一篇KBS期刊(影响因子8.038) ,文章内容主要是使用LSTM对用户兴趣偏好和用户兴趣迁移建模,以此来搭建一个推荐算法模型 。
我们通过对各种神经网络模型的堆叠以及反复的对比实验,确实发现LSTM模型的能够在准确率、召回率等指标上有比较突出的效果 。但是有一个很大的问题拦在我面前:我如何去解释它?确实,我们没法从直观定性的角度去解释,也没有数学逻辑能解释 。索性我们当时就套用了大家统一的口径,解释说LSTM具有长短时记忆能力,因此能够归纳随着时间轴变化的数据规律 。还好当时的审稿人并没有对我们的解释提出质疑,也可能不只是我一个,而是大家的论文都没有很好的解释它 。
无论是简单的FC、CNN、RNN、LSTM这些模型,还是当下最火的所谓的大模型依赖的Transformer模型,都是基于梯度下降和反向传播进行训练,至于为什么通过这样的训练就能让模型中参数自动自洽,到如今也没有人能够证明 。我们只是知道通过这样去构造模型确实行之有效 。
相反,很多传统的机器学习算法,要么有严格的数学证明,要么是直观就能观察到算法的过程 。相比于深度学习模型,我认为能够提出这些传统机器学习算法的前辈们更加值得敬佩 。因此,本文主要是简单的分享一个所谓「传统机器学习算法」在实际业务中的使用场景 。当然,我再次声明我对深度学习的理解尚浅,如有表述不当之处,可以互相交流 。
传统机器学习算法在实际业务中的使用场景

文章插图
正题
在计划域中,有很多很有意思的问题需要解决,包括如何制定中长期采购计划?如何制定短期补货计划?仓库库存偏仓怎么办,如何配平,是否需要调拨?我能预测一下未来一段时间某个货能卖多少吗?解决每一个问题,都能给供应链的效率和损益带来巨大价值 。
那我们以调拨计划为例,看看这些算法是怎么优雅地解决这个问题的——这里说到的算法,都是传统的机器学习算法 。
?模型定义:如何用数学模型定义一个调拨业务,并将业务目标变成模型目标函数
为了降低问题的复杂度,便于大家理解,这里我们的对问题的定义进行了一定的简化,比如不考虑未来销售可能存在的波动、偏仓造成的销售机会损失、货物在运输途中存在损毁概率等等 。并且,下面的案例只给了一个调出仓、一个调入仓 。实际业务中问题更复杂,定义约束也更多,求解的模型可能会不一样 。算法大佬们轻喷~
  • 前置知识
偏仓:在仓库存在全国各个仓分布不均衡,是否均衡的判断标准是该仓覆盖范围内潜在的购买量和仓库已有库存量是否匹配
调拨:将货物从A仓集中搬运到B仓
发货:从仓库出库+运输+末端派送至消费者
跨区发货:消费者所在区域的仓缺货需要换仓从其他大区的仓发货给消费者
  • 业务分析
  1. 当在仓库存偏仓的时候,会造成跨区发货,跨区发货的快递成本比非跨区发货高
  2. 如果能提前通过集中调拨的方式将货物配平(即批量的将货物先配送到用户所在的地区的仓),且满足:单件集中调拨成本+单件发货成本 < 单件跨区发货成本
  3. 仓库的出库能力、收货能力、干线运输能力有上限限制
  4. 调出仓需要优先满足本仓覆盖范围内的潜在消费者
  • 建模

传统机器学习算法在实际业务中的使用场景

文章插图
业务目标:我们要最小化货物从仓库到消费者手中的物流成本
成本函数:发货成本
  1. 假设有N个货品货品
  2. 调出仓A


    推荐阅读