美文网首页
40年前就已经发明的人工智能算法,为什么要到30年后才开始爆发,

40年前就已经发明的人工智能算法,为什么要到30年后才开始爆发,

作者: AI耳东 | 来源:发表于2020-05-17 14:30 被阅读0次

    2012年,人工智能算法开始爆发;2015年,人工智能算法在图片分类上超越人类;2017年,AlphaGo以3:0的总比分战胜世界围棋冠军柯洁。这给我们的感觉是,人工智能算法是在10年前才提出,此后就不断进步,不断超越人类。

    而事实上,今天使用的人工智能算法,在40年前就已经被发明出来了。

    直到30年后,人工智能算法才开始爆发,其中一个重要原因是:此前数据量实在是太少了。

    这就和把美国红杉树种在了沙漠里一样,虽然美国红杉具有长到100多米的潜力,但是没有土壤,没有水分,即使多年过去,也依旧只是一颗种子而已。

    不断积累的科研数据

    幸运的是,人工智能算法不但有巨大的潜力,而且有大量的科研人员不断地给它提供土壤和水分——即数据,让它可以发芽、并最终成长为参天大树。

    1. MINIST数据集

    在19世纪90年代,美国标准技术局整理并标注出了MNIST数据集。该数据集有10个类别,这10个类别分别是0-9这10个数字的电子扫描图。其中训练集有6万张图片,测试集有1万张图片。


    利用这个数据集训练的人工智能算法,可以很好地识别手写数字。美国邮局系统采用该算法,大幅度地降低了邮编识别的工作量。

    人工智能顶级专家Geoffrey Hinton称,MNIST是人工智能界的“果蝇”。它让人工智能专家可以像生物科学家一样,可以在受控的环境下做各种对比实验。

    2. CIFAR-10

    在2000年代,加拿大的Alex Krizhevsky、Geoffrey Hinton等人组织标注了CIFAR-10数据集。该数据集同样有10个类别,包括飞机、小轿车、鸟、猫、鹿、狗、青蛙、马、船、卡车。其中训练集有5万张图片,测试集有1万张图片。

    该数据集虽然个数比MINIST还少,但是由于数据是自然拍摄的图片,因此可以提供更多的信息给人工智能算法。


    值得一提的是,Alex Krizhevsky, Geoffrey Hinton这两个人,在2012年的ImageNet挑战赛上,一举将分类top-5错误率从26.2%降低到了15.4%,从而震惊了整个计算机视觉领域,开启了这一次的人工智能浪潮。

    3. ImageNet

    真正让人工智能算法出现飞跃的数据集,是由李菲菲发起并组织标注的ImageNet数据集。这个数据集总共有2万个类别,1400万张图片,相比于之前的CIFAR-10数据集,数据量直接提高了280倍,类别提升了2000倍。,这是数量级的提升。


    人工智能-数据-imagenet-101.jpg

    正是由于这种量变导致了质变。可以说ImageNet数据集,是人工智能算法出现爆发的原点。

    现在绝大多数计算机视觉领域的人工智能算法,都会先利用ImageNet开放出来的1000个类别,120万的数据进行预训练,然后在自己的小规模数据集上进行微调,从而实现高质量的人工智能算法。

    比如我训练的剪刀手识别程序,就是这么干的。

    不断累积的用户数据

    更幸运的是随着互联网技术、尤其是移动互联网的发展,越来越多的人开始将自己的文字、图片、视频等数据发布到互联网上。于是可以很容易的从网络上获取到越来越多的数据,来进行人工智能算法的开发。

    1. Youtube

    截止2018年,Youtube用户每分钟上传的视频总时长已经高达300小时。

    谷歌在需要训练视频分类算法的时候,可以很容易地从Youtube获取到大量的视频数据。

    比如谷歌DeepMind发布的Kinetics人类动作数据集,就是从Youtube平台搜集的.

    这个数据集包括65万个视频片段,700个类别,每个视频片段时长10秒,这就相当于总共有1.6亿张图片。这种量级的数据在上个世纪的八九十年代是不可能获取到的。

    2.抖音、快手、微信

    在国内,每天都有大量的短视频上传到抖音、快手、微信。

    这些数据都可以成为训练人工智能算法的数据,从而不断提升人工智能算法的识别准确率。

    比如国内有一个短视频分类挑战赛叫AI-Challenger,其中有一项挑战是训练短视频分类算法,而对应的数据集就是各大短视频平台提供的。

    原理

    那为什么训练人工智能算法需要大量的数据呢?

    做个对比就知道了。
    在数学上,一条直线方程只有两个参数,要想确定这两个参数,只需要提供两个点就够了;

    而一个平面方程有三个参数,要想确定这三个参数,则需要提供三个不在同一条直线上的点。

    也就是说,当计算一个函数参数的时候,这个函数的参数越多,那么就需要提供越多的数据。

    算法篇,我们知道人工智能算法动辄几千万个参数,要想确定这么多参数的值,就需要提供海量的数据给人工智能算法去学习。

    结论

    我们在训练人工智能算法的时候,有个经验法则。
    当每个类别的数据量有5000个左右的时候,训练出来的人工智能算法的准确率就基本可以接受了。
    当数据集的数据量超过100万的时候,训练出来的人工智能算法的准确率就可以达到甚至超过人类的水平。

    因此,在未来,得数据者得天下。
    加入践行群官方情报站,了解更多关于 BOX 践行群的信息 链接:https://ri.cms.firesbox.com

    相关文章

      网友评论

          本文标题:40年前就已经发明的人工智能算法,为什么要到30年后才开始爆发,

          本文链接:https://www.haomeiwen.com/subject/gjlrohtx.html