APP下载

如何加速驱动数据飞轮?10年AI实作经验的资料科学家,分享6大加速资料处理与AI建模方法

消息来源:baojiabao.com 作者: 发布时间:2024-05-15

报价宝综合消息如何加速驱动数据飞轮?10年AI实作经验的资料科学家,分享6大加速资料处理与AI建模方法

Offerup主任资料科学家陈彦呈,根据自己从事资料科学相关工作的10年经验,在一场活动中分享如何加速资料处理与AI建模,来快速驱动数据飞轮的作法。

图片来源: 

摄影/翁芊儒

美国估值高达14亿台币的行动(Mobile-First)二手电商Offerup,其主任资料科学家陈彦呈,过去也曾是台湾AI新创创意引晴研发副总、美国AI新创Clobotics总经理,近期在一场活动中分享,如何透过加速数据处理与模型训练的流程,驱动数据循环来形成“数据飞轮”的效应,就像Amazon的“流量飞轮”的概念,尽管刚开始施力不见得有成效,但当飞轮开始转动,就能产生极大的惯性加速向前。

陈彦呈口中的数据飞轮循环,是透过数据驱动AI模型做出分析,再依据这些分析结果来辅助商业决策,接着,将受决策影响产生的新数据,回馈给AI模型迭代并产生新的分析结果,借此循环来产生商业价值。

比如Google、脸书就是靠搜集使用者大量、多面向的资料,来进行数位广告投放,再透过不断更新的用户行为数据优化AI模型,创造出数据飞轮的效益。到2017年,数位广告投放的大饼已经被Google及脸书寡占。

陈彦呈认为,尽管先进者已经推动数据飞轮多年,但对于后进者来说,也并非完全没有后发先至的机会,还是要看数据飞轮的推动速度。比如先进者可能每两周更新一次AI引擎,若后进者能做到一周一次,就有机会用一半的时间来追上先进者的成效;又或是说,随着民众使用社群媒体的习惯,从脸书转为Instagram,又开始走向Discord,若能快速掌握趋势,后进者也有机会快速累积资料来创造优势。

不过,数据获取速度及标注速度有先天性的差异,不同AI应用场景中,能驱动的数据飞轮循环速度也不同。陈彦呈举例,如脸书、IG的人脸辨识功能,能在一张照片上传后自动辨识人脸身份,一旦标示错误,用户能立即修正结果给AI模型重新学习,驱动数据飞轮快速循环;但若是美颜App的脸部彩妆AI应用,尽管也可能有辨识不够精准的问题,但App使用者大多无法直接修正结果,仍要靠开发者定期测试来调整模型,数据飞轮的速度也就较慢。

除了AI应用本身驱动的数据飞轮速度不同,他也提醒,不同类型的数据价值也不同。其中,与营收获利相关的数据、越即时产生的数据、越能驱动数据飞轮的数据,以及越能形成竞争壁垒的数据,就是更有价值的数据。相反的,稀缺、特定应用限定的数据,并非价值的保证。

根据自身10年经验归纳出6大建议,来加速资料处理与AI建模流程

陈彦呈也根据自身在资料科学领域的10年经验,分享如何透过加速数据处理与模型训练的流程,来加快驱动数据飞轮。

首先,在数据搜集的环节,陈彦呈建议,选择采用能自动调节资源、按需计价的云端托管服务,可以更快速的架起数据架构、加速建立起数据仓储,市面上常见的服务包括SnowFlake、AWS Redshift、Azure Synapse Analytics、Google BigQuery等。他也提醒,因不同平台的数据库查询(Query)语法差异大,在选定了一套服务后,就不要轻易搬动到其他服务上,也建议到模型上线之前的流程,都维持在一个平台中执行较佳。

第二,数据搜集后,会进行标注的环节。在数据标注平台的选择上,陈彦呈提供5个参考指标,一是要考量标注工具的完整性与易用度,二是能轻易的从云端平台导入、导出数据,三是能进行采样与标注结果管理,四是能轻易整合外包标注平台,五则是提供任务分配与标注者管理的功能。

陈彦呈也指出,在数据标注任务的设计上,要以一秒就完成一个标注任务为目标,因为不论标得多细心,一定会有标错的样本,标注任务应该设计的越简单越好,但同一个样本要能被多次标记。

第三,标注完数据,需要更新到数据集中。陈彦呈提醒,一定要建立起数据自动验证并更新到数据集的机制,因数据可能标注错误,需要透过验证机制来自动挑出应复审的样本,且数据集也需进行版本管理,来自动加入新标注的数据,常用的版本控制工具包括Git-LFS、DVC、Pachyderm等。

第四,则会进入模型训练的环节。要加速模型训练的流程,陈彦呈建议开发者,不要为了省钱而自行购买GPU来开发及训练模型。这是因为,若是要用来开发模型,线下GPU再怎么便宜,也比不上公有云特定的免费服务;若为训练之用,线下GPU的资源在一人独占的情况下,利用率大多比预期的低,但在多人共用的情况下,又会发生资源利用的冲突,就算有排程机制,在资源有限时,训练周期会拉的更长。

而且,AI模型要能支援多GPU、TPU来进行训练。陈彦呈认为,一个AI模型,如果没有经过百组以上的超参数调校(Hyperparameter tuning),每一组超参数若没有经过多次反复验证,其效能或稳定性都不足为信。为了在短时间内快速反复验证与调校超参数,训练架构的设计,应该以在24小时内完成数百次训练为目标,为此,AI模型一定要能支援多GPU、TPU的训练,系统也要能手动、自动增加运算资源。

第五,在建立起模型后,会进入验证的环节,陈彦呈指出,要能加速AI模型验证,团队需培养良好习惯,比如在模型训练时,不只要记录模型每一组超参数以及验证集(Validation Set)最好的一次准确率分数,也应该将训练多次的分数分布记录下来,算出平均与标准差,“要先知道分布区间,才能了解新模型的分数是否具有显著性差异(Statistical significance)。”同时,也应建立“移动标靶”的衡量机制,也就是透过不断改变的测试集来验证模型,实际上线后才能适应各种场景来进行决策。

再者,模型验证环节也要进行阶段测试,先将模型部署在与实际上线时相同的环境,自动记录一两周的分数,若分数超过一定标准,则自动上线,若上线后收到超过一定比例的负面反馈,也需要透过模型版本回溯的机制,自动恢复之前的版本。

最后,则是在模型实际上线的阶段,要能加快模型上线与迭代的速度,陈彦呈建议,同样可以透过云端托管服务自动调节运算资源,来减少DevOps的成本;且在模型上线后,一定要以模型实际推论结果与新数据,来判断模型实际应用的表现,必要时需进行重新训练。

新创企业得跟时间赛跑!开发AI应用要一步到位

“不要为了省钱而浪费时间,因为最珍贵的,就是时间。”陈彦呈提醒创业者,企业的寿命比人还短,尤其台湾企业创业的平均寿命只有4年,就算是美国极为成功、被选入标准普尔500指数(S&P 500 Index)的上市企业,平均寿命也只有18年,显见时间的重要性。

因此,陈彦呈建议,要提供AI服务的企业在创业过程中,不要抱持着找几个年轻人试一试,做几年不成功再修正的心态,因为一试不成,就落后竞争对手很远了;也不要闭门造车,花一年半载自建机房、设计架构,从数据搜集、模型训练到系统上线全部自己写,“这些表面绩效最容易骗自己、骗主管,让人误以为有在做事,但其实对达成目标一点帮助都没有。”

最后,也不要因小失大,花小钱用比较便宜的云平台,可能会因托管服务不完备,而不断产生预期外的错误,即便有强大的团队可以填补平台上的缺失,但这些时间终究浪费了,原本可以投入更重要的事情上。陈彦呈指出:“企业应该从第一天就比别人更快推动数据飞轮,去想,我要怎么推得跟别人一样快、甚至更快,”来提升自身企业的竞争力。

2020-12-09 16:52:00

相关文章