gpu|干货3个重要因素,带你看透AI技术架构方案的可行性( 二 )


从业务必要性上来说,也并不是所有业务场景都需要AI架构。算法模型是对事物的精确模拟和抽象,复杂度也是比较高的。但可能有时我们业务上并不需要如此精细的控制。比如有时一个简单的if...else...就解决了问题;复杂点的可能会设计几种“策略”,然后由业务专家针对每种情况进行配置;再复杂的可能还会考虑BI的方案:收集数据,然后展开多维度的分析,最后由分析师连同业务专家得到某种规律性的结论,再内置到系统里,效果可能也不错。
再举个酒店分销调价的例子,在将酒店分销给代理售卖前,一般会在底价基础上对产品卖价进行干预,调整一定的点数(百分比),保证销量的同时,最大化收益。
一开始,可能仅仅是一个固定的比率(比如加价6%)。随着业务发展,设计了一系列策略,比如针对“是否独家”、“是否热门”2维度将酒店划分到4个象限里,对“独家-热门”酒店实施一个较高的调价比率,而对“非独家-冷门”酒店实施一个较低的比率。结果收益提高了一大截,效果不错。
而后,业务人员希望施行更加精细的控制,于是对酒店的星级、地区、商圈、独家、房型等维度进行了更为精细的划分,并结合历史数据进行统计分析,对各种结果施以不同的调价比率。产量和收益又进一步提升了。
这时如果各业务方都比较满意、成本也不高,系统复杂度也不高,那就没必有再考虑更为精细、智能的AI架构了。引入AI,本质上,还是要带来效率、体验或准确性的提升,同时平衡成本和收益,控制系统复杂度。如果不能带来这些,那就要重新审视我们的方案了。
当然,有时我们也会考虑架构的扩展性和业务的发展,预留一些设计上的“开闭”空间。“策略模式”这时也许是个不错的选择。对于系统的默认策略,采用基于人工的、配置的方案,同时保留策略扩展接口,随着将来业务要求的增高,再引入“基于AI的策略”。这样即控制了当前的成本,又平衡了系统的扩展性。
数据
数据决定了机器学习的上限,而算法和模型只是逼近这个上限而已。
数据的采集和获取通常需要很长时间,建立充分、全面的数据仓库,更需要长时间的积累和打磨,因此,数据在任何一个公司都是宝贵的资产,不肯轻易送出。而一个算法模型的成功与否,关键看数据和特征。因此,一套AI架构的解决方案,最终能否取得好的效果,关键看是否已经采集到了足够、充分的数据。
这些数据来源一般包括:自有系统采集、互联网公开数据收集(或爬取)、外购等。
自有系统采集是最常见的方案,业务系统自身产生的数据,一般也更适合业务场景的应用。可这样的数据珍贵且稀少,所以往往需要公司的决策者提前布局,早早的开始收集、整理业务数据,建设数据平台、充实数据仓库,这样经过几个月甚至几年以后,在真正用到AI架构时,弹药库里已经储备了充足的“弹药”了。
互联网公开的数据爬取也是一个快速且免费的方法,但在茫茫大海中找到适合自己的数据并不容易,且因为你能拿到、别人也能拿到,因此很难拉开和其他竞对公司的差异。
外购一般要花费巨额费用,且质量参差不齐,一般是互联网公司最后不得已的方案。



gpu|干货3个重要因素,带你看透AI技术架构方案的可行性
文章插图

在数据获取成本高、难度大、积攒时间久这样的前提下,而场景又适合使用AI架构,面对数据匮乏,是不是就没有办法了呢?也不尽然,我们还是有些替代方案的。
1、浅层模型通常比深层模型需要更少的数据量,因此,在数据量不足的时候,通常可以使用浅层模型替代深层模型来减少对数据量的需求。当然,模型的表达能力也会随之下降,但应对不是特别复杂的业务场景,浅层模型也一样能取得很好的效果。当然,随之而来的是对特征挖掘更高的要求和对模型选择的挑剔。拿分类任务来说,SVM、逻辑回归、随机森林、朴素贝叶斯...每种模型都有其特点和适用性,要充分考虑和权衡,才能利用好每一条数据。所谓数据不够、模型来凑,也是不得已的办法。