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




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

【 gpu|干货3个重要因素,带你看透AI技术架构方案的可行性】人工智能这几年发展的如火如荼,不仅在计算机视觉和自然语言处理领域发生了翻天覆地的变革,在其他领域也掀起了技术革新的浪潮。无论是在新业务上的尝试,还是对旧有业务对改造升级,AI这个奔涌了60多年的“后浪”,正潜移默化的影响着我们传统的技术架构观念。
AI架构(尤其是以机器学习和深度学习为代表的架构方案)已经成为我们技术架构选型中的一个新的选项。
你是否需要AI架构的解决方案?AI架构选型的主要依据是什么?这是我们今天主要讨论的问题。
我们先来看一个典型的AI架构:



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

1、首先需要采集训练模型所需要的数据,这些数据有可能来自业务系统本身,如CTR预估任务中的用户点击数据、用户下单数据等;也有可能来系统外部,公开购买或自主爬取,如图片分类任务中的图片、NLP任务中的语料等。
2、这些数据被收集起来后,经过清洗、加工,被存储起来,因为毕竟不是只用一次。一般是存储在分布式存储设备(如HDFS)或云端,多数公司还会建立自己的数据平台,保存在数据仓库中,长期积累下来。
3、需要使用的时候,先进行数据筛选,选择合适的特征数据,然后经过数据预处理,送入到算法模型中。模型的搭建可选的技术框架很多,可以是基于sparkmllib,也可以是sklearn、tensorflow、pytorch等。然后经过训练、评估和调参,完成模型的构建工作。
4、最后模型要应用到线上的具体业务中,完成分类、回归某一具体任务。在部署过程中,有可能是将模型打包,将预测模型直接部署到业务系统(客户端)中;也有可能是直接提供一个在线RESTful接口,方便跨语言调用。
总结一下,经过数据采集、加工处理、特征选择、数据预处理、模型训练、模型评估、模型应用几个环节,数据跨过业务系统、数据平台、算法模型三个系统,形成一个闭环,最终又应用到业务系统中,这就构成了整个AI架构的核心。
是否需要AI架构,如何衡量这套技术架构方案的可行性?我认为,主要是看以下三个要素。
场景
我们讨论架构的可行性,是否适合业务及业务发展是第一衡量准则,AI架构也不例外。
回顾那些经典的、已经广泛应用的机器学习场景,比如推荐、搜索、广告等,这些场景都具有这样的特点:场景相对封闭、目标单一、可控。
究其原因,无论算法模型多么复杂,其最终都要落实到损失函数上的,而后者一般都是单目标、单优化任务。或追求极值(损失最小化)、或达到某种对抗上的平衡(比如GAN)。在这种情况下,无论业务如何建模,还是要落地到算法模型和损失函数的,最终也就限制了场景和目标上的单一。
因此,看一个业务是否适合AI架构,就要先看这个业务场景目标是否单一、可控。或经过业务建模和架构拆解后,每个环节的场景是否单一。
举个例子,同程艺龙酒店系统为酒店商家提供了上传酒店图片的功能,在这个场景下,除了要审查图片的合法性,还要给图片打上分类标签,如“大堂”、“前台”、“客房”、“周边”等。为了能正常使用AI架构,就必须对场景内的各目标进行拆分,训练不同的分类器。具体流程如下:



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

其中,第2、3、4步涉及到多个图片分类器,每个分类器的目标不同,所需要的训练数据也不同。对于输入的同一个样本图片,每个分类器完成自己的职能,目标单一可控。对于一些不通过的样本,可能还涉及到人工干预。最后合法的图片存入系统。