猎云注:戴文渊,第四范式创始人兼CEO。他提到,一家商业公司构建AI的能力,需要有5个核心的要素,分别是Big data(大数据)、Response(持续的反馈)、Algorithm(算法)、Infrastructure(计算能力)和Needs(明确的需求),合在一起就叫做Brain。文章转自:华兴资本(ID:iChinaRenaissance)。
精华观点一睹为快:
○ 在一个垂直领域,如果能用机器基于数据写出超过1000万条业务规则,那么一个资深的业务专家,基本上没有办法比机器强。
○ 对于一家商业公司来说,构建AI的能力有5个核心的要素,分别是Big data(大数据)、Response(持续的反馈)、Algorithm(算法)、Infrastructure(计算能力)和Needs(明确的需求),合在一起就叫做Brain。
○ 有意义的大数据叫过程数据,一个优秀的AI模型需要约1000万以上过程数据的样本。模型越大,需要的数据量越大。
○ 反馈最关键要做到两点:第一点:数字化反馈,即反馈是可被度量的。第二点:持续不断的反馈。
以下是演讲实录:
用VC维理论构建AI方法论
我们在学术领域研究机器智能,是基于统计学来构筑AI整个方法论。统计学里最重要的理论叫VC维理论,为什么叫VC维?是因为这两个科学家提的,一个姓V一个姓C,各取一个首字母,叫VC维。
VC维反映的是什么?结论就是,如果一个机器模型,他的VC维越高,这个机器的模型会越强。VC维不只能刻画机器的智能,还能刻画生物的智能。人脑的VC维也能算出来,大概是多少、约等于大脑脑细胞个数,前面可能只差一个常数项。
未来无论人的智能还是机器智能,都可以套在VC维理论的框架下解决。企业构建AI能力,就是要不断把VC维做大。
机器和人谁更强?1000万条规则是个门槛
以牛顿三大定律为例,牛顿是物理学专家,他看了很多物理的自然现象,最后总结出三条规则。如果机器做牛顿的事,他会把整个自然现象按照速度分成3000万个区间,然后在每个区间里总结出三条定律。
目前的人工智能的应用,都是由机器来总结规律,由于机器不知疲倦,所以能够做得更细、达到更好的效果。现在我们也在思考如何把这样的技术应用到各行各业,用机器替代原来的业务专家,基于数据去写业务规则。比如在内容分发的领域,当机器把规则写到1000万、几十亿甚至几千亿的时候,可以显著地实现原来传统业务专家达不到的效果。
我们有一个经验,在一个垂直领域,如果能用机器基于数据写出超过1000万条业务规则,那么一个资深的业务专家,基本上没有办法比机器强。
但是其实也不是所有领域都能写出1000万条业务规则,因为你能写出业务规则的数量,或者模型VC维的数量和数据量几乎成正比,而在一些垂直细分领域样本数是不够的。比如医疗领域,一些罕见病只能找到100个病人,这时候用机器只能写出100条业务规则。在这个场景下,机器就远不如人。
商业公司构建AI能力的五大核心要素
人工智能在不同领域所面临的环境是不一样的。对于一个商业公司来说,构建AI的能力有5个核心的要素,分别是Big data(大数据)、Response(持续的反馈)、Algorithm(算法)、Infrastructure(计算能力)和Needs(明确的需求),合在一起就叫做Brain。如果这5个核心要素是齐备的,机器就非常有可能超过人。但是如果暂时还有局限,我们就要思考如何弥补目前的局限,来达到比较高水平的人工智能,未来各行各业都需要走这样一条路。
数据
人工智能需要收集有意义的过程数据
前几年我们对大数据的误解体现在只去比较数据量的大小,其实大数据还分有意义的大数据和没有意义的大数据,有意义的大数据叫做过程数据。
以围棋为例,什么叫有意义的数据?棋谱、下棋的过程。什么是没有意义的数据?比如那些棋手或者等级、排名。好比说两个人下棋,我在旁边看,看着看着我自己也会下棋了。但我每天听新闻说柯洁又输给AlphaGo了等等,听得再多也不会下棋。所以一定要喂给机器他能学会的那些数据。
回到商业上看过程数据的收集,以一个抽象的Model为例,用户会对公司有一个请求,公司会提供一个服务,完成后会收集到用户正向或负向的反馈。具体到一些场景,比如在线广告,用户通过搜索看到一个广告,会选择点或者不点,点击就是正反馈,没有点击就是负反馈。又比如对于个性化推荐来说,我访问了你这个APP,你给我推荐了很多内容,如果我接受了这个推荐,就是正反馈,没有接受就是负反馈。
我们经验来说,一个优秀的AI模型需要约1000万以上过程数据的样本。VC维理论也是一样,我们把VC维做到1000万以上,人就做不过机器了。
如何支撑1000万的VC维?其实需要1000万以上的样本,这里面实际有一个统计学的原理来支撑。这个公式稍微有点复杂,但只要记着这个科学家就行了,他叫Valiant,是2011年的图灵奖的获得者。他得奖的这条公式,简单说就是规则数或者模型的维度要和数据量相匹配,所以我们要收集大量的过程数据,就是为了支撑我们做出更大的模型。
反馈
两个关键:一是要数据化,二是要持续反馈
反馈(Response),就是说我提供服务以后,要能得到一个正向或者负向的结果,告诉我提供的服务到底好还是不好。比如在广告里的点击和非点击,比如在推荐里的接受和拒绝。反馈一定得是能数字化的,因为计算机只听得懂0和1,比如点击是1,没点击是0。现实情况是,我们经常会告诉机器你要推荐一个好的结果,或者你要推荐一个相关的结果,但好和相关是计算机听不懂的语言。
过去我们认为推荐系统要推荐相关的内容,很强调相关性,但机器根本不知道相关是什么意思,机器只知道,叫0还是1,所以过去的推荐其实很不合理。
最近几年的推荐系统和过去相比提升了很多,现在今日头条、快手都有各种个性化的内容分发,他们采用了先进的推荐系统,改变了过去强调相关性思路,转而优化一些可被度量的指标,比如推荐的内容用户有没有点击,点击后看了多久,或有没有转发、收藏、投诉。
虽然这些指标并不都能反映所谓的相关性,但它们可被度量,进而可被优化,最后达到一个比过去优化相关性更好的效果。
反馈最关键要做到两点:第一点:数字化反馈。第二点:持续不断的反馈。
任何一个机器都会犯错,犯错不怕,怕得是永远犯同样的错误。比如最早AlphaGo的模型只有30万盘棋,就是通过自己和自己下,赢了得到一个正反馈,输了得到一个负反馈,持续不断又下了8000万盘棋,达到一个可以打败棋手的效果。
算法
改变算法受众,降低AI能力构建的门槛
算法(Algorithm)是现在被比较关注的。一家公司构建AI能力的瓶颈是很难招到科学家,因为科学家永远是相对小众的一群人,最后发现空有一堆数据却用不起来。
我们的受众人群实是开发者,互联网、移动互联网都是开发者在做应用。而现在AI处在一个不太正常的状态,所有的应用基本上都是科学家做的。
第四范式希望改变这个状态,我们把科学家的能力封装到一个平台里,让业务人员能够完成AI科学家团队做的事情。第四范式正在致力于研究一些新的算法,比如两个独特的算法:第一个:线性分形算法。第二个:He-Treenet算法,是一个树和网络结合的模型。这些事情能够让过去一些门槛高的事情变简化。比方说过去为什么使用算法的门槛高?因为要做大量的数据清洗、特征变换、归一化、特征组合、离散化这样的一些事情。学习这些需要很长的时间,当我们把这些东西全都由机器自动完成,这样才能让机器完成学习的过程,就是数据进来,跑一个算法,出来一个模型就可以用。如果只是这么简单,其实绝大多数人都是可以使用的。
计算能力
大数据下没有简单的架构问题
第四个叫计算能力(Infrastructure),机器学习没有简单的问题, 其实管理机器和管理人是一样的,当你管理20团队的时候,会出现一些问题,超过100人的时候又会出现一些问题,可能每天都会有员工请假等等。同样的道理,超过100台机器去跑一个任务,每次跑任务都会有机器宕机。超过1000台机器的时候,会出现各种分配任务的不均衡,有的机器可能在跑,做了很多的事,有的机器闲着没事干,这都是很复杂的。当数据量大的时候就有架构问题,这甚至是不亚于算法的难题。
所以我们也在设计一些门槛很高的架构,比如支持万亿级机器学习的架构。举个例子,做机器学习和原来做分布式计算有什么区别?大家都知道,像Hadoop、Spark这样的架构其实已经相对成熟了。他们做这样一件事情:我有一本书,我要让10个人抄这本书,能做得比一个人抄得更快。而机器学习,是让10个人学一本书,学得比一个人更快。
抄书只要撕成10份,抄完之后订起来就行。机器学就不行,各自学完之后,可能还要交流,还要互通有无。所以整个设计理念会不一样,我们和Spark做过这样的对比。随着数据量的增加,我们速度会比Spark有平方级速度的差别。比如在5万太(Terabyte, 1T=1024G)数据的时候,提升并没有那么多,只有28%。如果再有600多万的话,提升了86倍,在3000多万,提升了400多倍。更大的情况下,Spark已经没法跑了,就没有数据了。
所以需要把这些门槛很高的技术,都屏蔽并封装到这样一个平台上,让大家感觉不到这叫分布式,只是一个简单的学习。
需求
边界清晰的问题定义
最后,机器学习还需要一个清晰的问题定义,也就是所谓的需求(Needs)。目前机器学习没有通用之门,只能解决一个单一的目标,存在边界问题。其实所谓通用的人工智能,都是一大堆单一目标的人工智能的组合。能到当我们解决的问题极大的时候,才会产生通用的人工智能。
像AlphaGo是一个清晰目标的问题,就是赢和输。当然大家会说,单一目标可能不能解决业务问题,比如推荐就单一目标来说是不能解决的。所以我们可以将多个模型和目标做组合优化,就可以达到多目标优化的结果。