人工智能这两年的火爆大家有目共睹,取得的一些技术进步大家想必也有所耳闻。这里就来谈谈人工智能的三要素:数据、算力和算法。
首先,这三要素缺一不可,都是人工智能取得如此成就的必备条件。如果非要给这三者排个序的话,我认为应该是数据、算力和算法。
第一是数据。因为人工智能的根基是训练,就如同人类如果要获取一定的技能,那必须经过不断地训练才能获得,而且有熟能生巧之说。AI也是如此,只有经过大量的训练,神经网络才能总结出规律,应用到新的样本上。如果现实中出现了训练集中从未有过的场景,则网络会基本处于瞎猜状态,正确率可想而知。比如需要识别勺子,但训练集中勺子总和碗一起出现,网络很可能学到的是碗的特征,如果新的图片只有碗,没有勺子,依然很可能被分类为勺子。因此,对于AI而言,大量的数据太重要了,而且需要覆盖各种可能的场景,这样才能得到一个表现良好的模型,看起来更智能。
第二是算力。有了数据之后,需要进行训练,不断地训练。AI中有一个术语叫epoch,意思是把训练集翻过来、调过去训练多少轮。只把训练集从头到尾训练一遍网络是学不好的,就像和小孩说一个道理,一遍肯定学不会,过目不忘那就是神童了,不过我至今还没见到过。当然,除了训练(train),AI实际需要运行在硬件上,也需要推理(inference),这些都需要算力的支撑。
第三是算法。其实大家现在算法谈得很多,也显得很高端,但其实某种程度上来说算法是获取成本最低的。现在有很多不错的paper,开源的网络代码,各种AutoML自动化手段,使得算法的门槛越来越低。另外提一点,算法这块其实是创业公司比较容易的切入点,数据很多人会觉得low,会认为就是打打标签而已,所以愿意做的不多;算力需要芯片支撑,是大公司争夺的主要阵地,留下的只有算法了。
不过,如果想做一个非常成功的AI应用,这三者都需要具备,所谓天时地利人和。