Datawhale干货
作者:知乎King James,伦敦国王大学
知乎 | https://www.zhihu.com/people/xu-xiu-jian-33
在学习算法的过程里,难免有疑问:k近邻、贝叶斯、决策树、svm、逻辑斯蒂回归和最大熵模型、隐马尔科夫、条件随机场、adaboost、em 这些算法在一般工作中分别用到的几率多大?一般用途是什么?需要注意什么?
首先简要回答一下:以上这些算法,如果是指书本或者大学课堂里面教的,那么在目前国内机器学习应用最多的一些工业界场景中,它们的使用频率接近0,没啥实际用途。如果楼主是想为未来工作做积累,或者是面试做准备,你还得对以下算法多做研究,这些才是目前工业界主流应用的算法。
(决策树模型这部分专门说一下:大部分课程里面教的决策树模型比如CART、ID3等,这类模型工业界几乎不用,树模型用的最多的是GBDT、XGBoost和LightGBM。GBDT金融科技领域用的多,LightGBM目前销量预测领域用的多。)
我们先从工业界对于机器学习的需求开始说起,明白用户需求才知道什么算法用的多。首先大家可以看一下IDC MarketScape发布的2019中国机器学习开发平台市场的报告,里面国内做机器学习头部公司是:第四范式、百度、阿里云,这是头部三家企业。
然后我们看一下上图中某头部公司的客户都来自于哪个领域:
图片来自于官网截图
我们可以很清晰地看出主要来自于这些领域:金融、媒体、零售;为什么?原因如下:
第一个是因为数据:做To C生意的客户积累的用户多,数据也多,满足机器学习建模对数据量的要求。金融、媒体、零售积累了大量C端用户的数据;
第二个是因为场景:这些领域的客户有些大量可以使用机器学习建模的场景,也是国内工业界最早尝试将机器学习引入到实际的建模场景中的。
具体哪些场景下面会细述。
说清楚主要应用领域和场景以后,分析算法就很清楚了。
金融领域使用机器学习建模最多的场景就是风控。当然风控也要进行细分,主要应用机器学习建模的细分场景如下:
是的没错,目前在金融领域涉及到风控的几乎都是GBDT+LR,目前市场上还没有哪一家金融科技公司做反欺诈、反洗钱场景使用的不是GBDT+LR,这是目前市场上做该场景效果最好的算法。
同时金融行业存在高监管的属性,乙方AI厂商给银行做项目时,最终项目交付时都需要模型可解释,LR模型存在一个优点就是特征可以解释,特征工程很清晰,每个特征的贡献度也可以统计出来。如果用深度学习模型等,可能效果差不多,但是完全不可解释,这种在金融这种强监管的场景下,不可解释的模型是不符合监管要求的。金融行业的属性导致的,目前深度学习在金融风控领域应用非常有限。
此外确实也有用XGBT算法在上述这些场景,XGBT在GBDT算法进行了一些优化。具体大家可以参考这里:https://www.zhihu.com/question/41354392。但实际目前用GBDT的还是多。
这部分主要用的都是推荐的算法,主要都是基于协同过滤CF算法+简单的策略;营销场景做推荐,一般分为三个部分:召回+排序+业务规则。召回层面会利用协同过滤CF算法、FM算法,构建排序模型还是LR模型居多,金融领域目前使用深度学习相对较少,但是在互联网和其他领域使用深度学习做排序模型已经很广泛了。
在媒体领域最典型的就是今日头条了,包括像很多其他的媒体端如小红书、抖音等;这里面最常应用机器学习的就是推荐场景。大家经常发现的一点就是今日头条、小红书经常会根据你之前看过的一些内容来给你推相关内容。比如你经常看大长腿,小红书就一直给你推,别问我怎么知道的。
在零售领域,使用机器学习建模最多的场景也是推荐场景和搜索场景中的排序。APP上购物车页面提交订单时为用户推荐相似商品、推荐可能感兴趣的商品,以及针对什么样的用户推荐什么样的优惠券等等。
除去推荐,零售领域还有一个使用机器学习建模比较多的场景,就是对某类商品进行销量预测,根据预测量来调整商品的供给。
这里附上之前Kaggle里面关于销量预测的case,排名第一的将自己的源码share出来的,感兴趣的可以自行下载研究。https://www.kaggle.com/c/favorita-grocery-sales-forecasting/discussion/47582
零售领域还有一个应用非常多的场景,就是做供应链优化,物流调度,给外卖骑手配单等。但这部分不能算作机器学习,更多是运筹学的知识。目前国内做的比较好的是杉数科技。
所以如果你是一个学生或者想转行到机器学习领域,课堂上教的那些算法只是简单入门完全不够用,只是让你了解基本的思想。如果你想进入工业界的机器学习领域尤其是当前比较热门的推荐&金融科技领域,你需要对:GBDT、LR、推荐算法等很了解,如果能再对XGBoost和LightGBM了解就更好了,而所谓的KNN、Kmeans、贝叶斯、最大熵模型等等,这些只是基础算法,了解这些基础算法完全无法解决你校招找工作时面试的问题。
同时给大家分享几个当下比较火的机器学习热门研究方向:
目前工业界最火的机器学习研究方向就是AutoML,自动机器学习技术,不需要机器学习专家参与建模,机器全自动完成建模。之前华为开出200多万年薪的那位博士生就是研究AutoML的。
AutoML技术这两年发展的很迅速,工作上自己了解我司的AutoML实际场景落地时,在一些场景上AutoML构建的模型效果表现已经和经验丰富的数据科学家人工构建的模型效果没有任何差异了,但是AutoML大幅降低了人力成本和时间成本。但AutoML在实际工业界落地时,遇到的最大问题就是对于数据治理,科学家们很多时候80%建模的工作在做数据整合和数据清洗等。
关于AutoML技术的出现会不会导致大量ML从业人员失业了?希望进一步了解的可以阅读下面回答:https://www.zhihu.com/question/387574523/answer/1796066073
另一个热门研究领域就是强化学习,随着阿法狗战胜柯洁和王者荣耀AI绝悟的火爆,将强化学习这一细分领域带入到广大从业人员的事业里。强化学习在工业界的热度也在逐步攀升,工作上越来越多的甲方来咨询强化学习,希望用强化学习来尝试一些场景的应用,之前强化学习更多还是在学术界研究。目前强化学习在游戏行业应用已经十分成熟了,现在有向其他行业扩展的趋势,比如零售领域的供应链干线优化、互联网领域的推荐场景、军工领域的仿真等。对于强化学习不了解的读者可以阅读下面文章:通俗易懂讲解强化学习。
AI发展的三大核心要素:算法、算力和数据。而当前AI发展面临的一个问题就是如何在面临监管对于用户数据隐私安全越来越严,如何合理合法地采集和应用用户信息,甚至在保证用户数据不离开本地的情况下实现模型训练和更新。各大AI公司和互联网厂商都要寻求这方面的解决方案,联邦学习的出现就是为了解决这一问题。
联邦学习的解释如下:
在保护各方数据隐私安全的情况下,实现各方联合建模,最终得到比联邦中任意一方单独建模效果更优的模型。目前世界上B端企业间的纵向联邦学习的研究是由香港科技大学计算机科学与工程学系主任,第一位华人国际人工智能协会(AAAI)院士&AAAI执行委员会委员-杨强教授牵头发起的,纵向联邦学习已经在金融&广告领域大规模应用。因为联邦学习是一个新兴的领域,专业性人才很稀缺,企业对于这方面的人才也是求贤若渴。希望对联邦学习做进一步了解的可以点击阅读通俗易懂讲解联邦学习。