机器学习在市场营销中实践的思考

07 Apr 2019

AI盛行的年代,在各行各业似乎都能看到AI的影子,本文将围绕两个问题展开对机器学习在市场营销领域实践落地过程中的思考:1)在这个领域我们(当前)是否真的需要使用机器学习建立模型;2)如果有需要,该如何将机器学习落地,以对业务带来有效的价值提升。

背景

市场营销包含非常广的业务范围,本文所描述的市场营销,是指在电商平台背景下的以用户运营为重点的营销策略。举个栗子,最近一段时间在国内很火的某咖啡,推广期间非常火爆,新用户注册送一杯咖啡,老用户成功邀请一个新用户注册,新老用户各送一杯咖啡,这就是一种用户运营的营销策略,新客是运营的目标用户,目的是促新客转化,手段是免费送咖啡(利益点),传播的媒介是广告以及社交传播。概况起来,用户运营的营销策略是企业为了达到运营指标,在一定的成本范围内,对特定群体进行营销的一种活动

营销真的需要机器学习?

通过上面的例子,似乎并没有发现机器学习的身影,整个过程通过业务运营的同学,借助一些运营工具就可以完成。而事实上也是如此,公司在开始做营销策略时,一定是先招一批有这方面业务运营经验的同学,而不是招一批机器学习算法工程师。因为制定这样一个营销策略,涉及目标分析,计划定制,沟通协调等大量需要依靠人工经验以及操作的环节,并不是某个高级的算法就可以轻松搞定的,一定是业务先行的

用户运营方法论

对用户运营,最重要的是要有一套方法论,在这套方法论的支撑下,再围绕公司的用户运营目标制定运营策略。而这套方法论应该由这方面的业务专家,结合公司的特点建立而成。业务专家并不是脑袋一拍就能想出一套方法论,而是依靠数据分析,结合业务特点总结而来的,例如其中非常重要的用户生命周期价值CLV(customer lifecycle value)模型,它本身是一套业务模型,将用户按生命周期划分为多个类别,进而围绕多个生命周期分别制定运营策略。模型的实现可以是根据业务规则抽象定义的一套计算规则,也可以是通过例如聚类算法等算出的不同用户生命周期价值的分类模型,不论哪种具体实现方式,这个模型必须是对业务容易理解,可解释的,至于是业务自定义规则好还是使用模型定义好,个人觉得在这里并非重要。

用户运营策略

有了方法论,就可以指导用户运营策略的制定,在有限的资源(成本)条件下,采取哪种运营方式,可以有效的达到运营目标。这里涉及到大量的数据分析工作:假设以前做过类似的运营策略,可以分析出对应的运营效果(转化率,ROI等),以此为参考,结合人工运营经验制定或优化当前的运营策略。在这个策略制定过程中,可以看到涉及多个待定数据,包括目标用户群,具体的运营方式,利益点,触达/传播渠道,内容等,每一项都和最终的运营目标相关。策略的制定过程可以依靠人工的经验以及数据分析进行设定;也可以依靠机器学习,对其中的部分环节建立模型,通过模型搭配人工的方式进行设定,从而完成整个策略的制定。

个人认为,在策略制定的这个环节,机器学习的优势可以发挥出来了,因为策略的制定是以策略目标效果的最大化进行的,而机器学习模型,也是以某目标最大化(误差最小化)而建立的,所以如果能结合业务目标恰当地建立数学模型,便能实现业务目标的效果最大化,当然这其中涉及到非常多的困难,例如真实环境下的噪音干扰,数据本身的未知性所带来的偏差等。

机器学习在营销场景下如何落地?

从前面的分析结论可以看出,营销并不是强依赖机器学习,通过有经验的业务人员结合一些系统工具也能完成,所以机器学习要在营销场景落地,必须要明确价值体现在哪里?我认为有两点:1. 运营效果提升,相对人工运营,借助机器学习的能力,可以带来相对人工运营效果的进一步提升;2. 运营效率提升,即降本增效,若模型和人工在运营效果上相差不多,借助模型,可以节省大量的人工工作,原来依靠人工经验的环节,现在可以使用模型完成,和工具打通,可大幅提高人工运营效率,所以落地的方向将围绕运营效果提升降本增效进行。

运营效果提升

从业务需求点出发,贴近业务运营

作为技术人员,在将机器学习进行应用落地时,一定要密切结合业务需求,充分理解业务的原始诉求,了解业务在没有任何模型时是如何运营的,将这些业务知识不断地沉淀。之后的模型建立过程其实是将这些业务知识通过模型的形式呈现出来,并不断丰富的过程,区别于人工的地方,在于模型能将整个过程的数据量化,同时人工能考虑的因素范围有限,而模型能轻易突破这个限制,这也是为什么模型的效果能够超过人工的原因。

看个栗子:通过派发优惠券,对流失老客的召回场景,业务的一个诉求是在优惠券成本有限的情况下,希望能找到最有派券价值的流失用户,派券后,带来的增量转化率最高。即只有给他派了券,才会购买的用户,而对于不派券也会买,或者派了券也不会购买的用户,都不是业务的诉求目标用户。因此这里模型的目标是要寻找“增量”用户,业务衡量指标是转化率的增量提升。

根据业务诉求建立模型

了解了业务的原始诉求以及运营方式后,就需要对业务问题进行建模了,这也是将机器学习落地最关键的一环,业务建模就是将业务问题转变为机器学习问题的过程,这里会遇到一些受到真实环境约束或者限制,导致建模过程会很困难。这里提供的解决思路:问题转移,化繁为简

例如上面例子中的场景,若以寻找“增量”用户为目标,建立一个增量和非增量用户的分类模型,需要有一定的“增量”和“非增量”标注数据,这个在现实场景中并不存在。既然直接寻找“增量”用户不容易建模,是否能将业务问题简化,重新梳理业务诉求,所谓“增量”,就是找到购买意愿不是特别强烈,通过券的吸引,促进购买的这群用户,那么假如对用户的转化概率(量化购买意愿)进行预测,可以得到不同概率区间的用户,再对各个概率区间的用户通过ABTest的方式,找合适概率区间的“增量”用户,于是这个问题便转变为对用户的购买概率进行预测,这样就相对容易建模了。所以有时问题并不一定全靠机器学习来解决,有时面对复杂的业务问题,可以将其拆解为若干个简单的模型,再配合人工的运营策略,最终得以解决。

模型建立了,对应就有一套对模型效果的衡量评判方法,在营销的场景里,可分为三个阶段,分别用不同的衡量方法。第一个阶段,衡量方法对应的是模型在训练和验证集测试阶段对应的衡量指标,比如分类模型的AUC,回归模型的RMSE等;第二个阶段,可以称为“离线业务验证”或者“静态验证”,在营销场景中,假如是预测类的模型,可以通过历史数据进行验证,或者和人工经验的结果进行对比;第三个阶段是“在线业务验证”,根据模型的结果,结合运营策略,放到线上看运营效果的衡量指标,同样,可以和人工经验的运营方式进行效果对比。对比验证的方法可以采用ABTest,关于如何有效合理利用ABTest,推荐阅读Stackoverflow的实战分享

打造智能化数据平台,降本增效

营销运营的过程,需要有前期的数据分析,运营思路及策略的制定,运营实施及最后的效果复盘,整个过程都需要大量的人力资源。所以,如果通过机器学习的一些模型,将其中一部分的依靠运营人员经验的环节换成机器执行,并将流程通过工具打通,可以节省不少人力成本。这个过程需要充分了解熟悉业务运营的思路,理解并抽象后,将模型工程化应用,形成智能化的数据平台,而不仅仅是一个运营工具。

举个栗子,在电商的营销沟通场景下,通过商品对用户进行沟通召回是一种常用的运营手段,根据运营的目标不同可分为货品运营以及用户运营,这两种运营思路是完全不同的,制定的运营策略也完全不同,例如用户精细化运营,业务可以根据品牌的偏好不同,划分多个人群,分别用不同品牌商品沟通,也可以根据其他特点划分人群,达到精准沟通的目的,提高用户召回。这里人货匹配可建立一套模型,基于这套模型,运营的策略也会发生变化,以前需要先思考如何划分人群,再为每个人群寻找合适的匹配商品,而现在重点直接放在怎么找到一盘好货,模型会解决剩下的人货匹配的事情,从工作量上看,简化了运营的工作。类似的,货品运营,也可以借助“货找人”的模型,帮助业务解决“找人”的过程。

总结

营销是一个重运营的场景,要落地机器学习的应用,前提是要对业务的运营想法,流程,痛点都非常清楚之后,再思考如何将机器学习应用到真实的场景中,其中的方向包括:提升运营效果,以及提高人工运营效率。而在实践过程中,常用的手段是将业务问题转移为可通过模型解决的问题,化繁为简,先落地应用,再持续优化。