教你五岁的孩子入门 AI:人工智能究竟是个啥?

点击上方“蓝字”关注咱们算法


做者 | 罗 奕康,秦凤啸
编辑 | 张婵

前言编程




小伙伴们你们好, 我是来自北京事业群的奕康。今天想跟你们聊聊如何带本身的五岁小孩入门人工智能这个行业(笑)。

提起人工智能, 你们可能对它的印象有多是西部世界的德妹大杀四方,也有多是黑客帝国里面那两颗蓝色药丸和红色药丸,更有多是屡屡不听话的小爱童鞋, siri, 天猫精灵等。。。

来自一个四川人的怨念:
嘿 Siri,帮我定一个明天早上 10 点的闹钟。
好的,已为您定好明天早上 4 点的闹钟。
微信

无论这些是人工智能仍是人工智障, 它们属于人工智能的范畴。优源汇, 知乎以及各类各样的公众号都有一些零零散散的碎片化的知识, 可是彷佛没有一个综述同样的集合, 比较简单的给你们捋一下人工智能的发展路线以及将来前景等等。所以, 我想斗胆开这么一个坑, 以最精炼的语言, 最符合直觉的例子, 来说一讲人工智能的发展以及如今你们口口相谈的东西都是一个什么基本原理。网络


我但愿整个系列中不会出现太多数学推导, 而是用比较口语化的语言来解释出现这个东西的缘由是什么, 这个东西是用什么思想来设计的, 这个东西能够达成什么样的效果。同时, 我会尽可能在每一章后面贴上一些连接(好比李弘毅老师的课程)以及知乎笔记, 开源 GitHub工程代码, 以便想要进一步了解背后数学算法以及工程师能够自行深刻研究。app


最后,我但愿你们能够看成闲时阅读同样的来阅读本系列(不须要太动脑子的那种(笑)), 且阅读完成后能够知道, 哦, 原来这我的们常说的这个东西是这样的。而下一次当有人来忽悠你说咱们的人工智能是什么什么的时候, 你能够帅气的告诉他:dom


没有人比我更懂人工智能!机器学习

学习路线图 - Roadmap学习




咱们将会以如下路线图了解到整我的工智能的发展:

  • 人工智能的诞生:1950 年代基于规则的“人工智能”大数据

  • 从制定规则到机器学习 Machine Learningflex

  • 什么是机器学习

  • 使用年龄预测身高 -> 回归 Regression

  •  线性回归 Regression
  1. 线性回归的参数爆炸了? 正则优化的 Lasso Regression 与 Ridge Regression

  2. 如何完美的画出三八线:支持向量机SVM

  • 非线性回归与分类 Non-Linear Classification & Classification

  • 从回归到分类:逻辑斯蒂 Logistic Regression

  • SVM 由线性转为非线性

  • 三人成虎:简单易懂 KNN

  • 决策树

  • 进一步机器学习,人多力量大的集成模型 Ensemble Model

  • 众生之下“模模”平等, 你们一块儿来投票:Bagging

  1. 决策树超进化 -> Random Forest

  • 失败是成功之母:Boosting

  1. Adaboost

  2. Gradient Boosting

  3. 无脑吹的XGboost, lightgbm 与catboost究竟是什么?

  • Stacking

  • 深度学习到底有多深

  • 逻辑回归进化 -> 神经网络

  • 神经网络进化 -> 深度神经网络

  • 神经网络的花式结构

  • 你还说我不够细节? 卷积神经网络CNN

  1. 图像识别

  • 序列数据的处理:循环神经网络RNN

  1. 语音识别, 文本分析, 对话生成

  • 谷歌的变形金刚:Transformer

  • 神经网络太大了怎么办:预训练

  • Bert

  • 工业界暴力堆机器的美学, 让咱们回到GPT-3

  • 将来的人工智能? 


因为人工智能是一个飞速发展的行业, 咱们颇有可能在填完这个坑以前出现崭新的技术, 那我也会尝试将新技术的科普加入其中。最后再多嘴一句, 不要被这些英文吓到, 咱们的目标是:

让你的五岁孩子也能懂人工智能!

人工智能的诞生:1950年代基于规则的“人工智能”




人工智能的发展大体上能够分红这样几个阶段:
  • 1950 - 1980 早期的人工智能开始发展,好比自动象棋机等

  • 1980 - 2010 机器学习开始火热,常见的应用项目有垃圾邮件分类等

  • 2010 - 2020 深度学习煊赫一时,人脸识别,语音辨识,等等等。。。。


从上世纪 50 年代开始,人们开始陆陆续续探索如何使用计算机帮人类作事情。在那个时候, 人工智能还停留在“规则匹配”的阶段, 即人们用一堆一堆的IF设定规则, 而后让机器根据if返回人们想要的结果。小明是一个只有 5 岁可是有点秃顶的 Python 工程师, 他按照规则创造了一个对话机器人, 这个对话机器人很简单, 当小明输入的词语里面有“关掉”这两个词的时候, 这个机器人就会帮小明关掉电脑的音乐。这个 chat-bot 核心代码差很少长这样:


  1. def chat(input_command):

  2. if "关掉"ininput_command:

  3. turn_off_music()

  4. else:

  5. pass


小明创造完成这个机器人后, 很是开心, 得吧得吧得的就来到了小伙伴们的面前, 开始展现:


你们看见了效果, 都异常兴奋, 高兴的拍手, 以为这就是人工智能的将来。可是小明的女神小红多是心情不太好的亚子,傲然一笑,发话了:



小明面子有点挂不住了, 因而小明便说:

我能够增长个人规则, 让机器人判断“关掉”前面是否有“不要”, 来决定是否关掉音乐。

甚至小明为了展现本身手撕代码的能力, 现场开始编程:


  1. def chat_v2(input_command):

  2. if "关掉"ininput_command:

  3. if"不要"notininput_command:

  4. turn_off_music()


小红傲然一笑:



这就是最先的人工智能(也有一些如今的产品是这样的!)的情况, 人工智能的内部是一堆工程师早已定好的规则, 这些规则无穷无尽, 这种人工智能打造方式带来的问题即是, 创造的人工智能永远都没法超越规则的创造者。 



所以, 最先的人工智能其实就是一个规则的匹配机器。回到小明的困惑中, 若是咱们真想要小明的机器人变得能够彻底听懂“关闭音乐”这个指令, 咱们须要按照中文的语法规则, 给这个机器人书写不少不少的 if...

  • 若是只有一个动词且动词是"关闭":

  • 若是只有一个动词且动词是"关掉":

  • 若是动词后面的名词是"音乐":

  • ...


这无疑是一场灾难!可是在之前, 这确确实实是人工智能的主流办法, 由专家手工编写领域相关的规则集。那时候, 计算机和计算机语言都刚刚发明, 从事编程的都是精英学者。他们雄心勃勃, 认为只要经过编程就能赋予计算机智能。表明性的工做有 MIT AI 实验室的 BASEBALL, 比方说 :

BASEBALL 的词性标注模块是这样去判断 “score” 这一个单词的词性的:

若是句子中是不含其余动词, 则 score 是一个动词, 不然是名词。

为了实现这样的对话机器人, 每个对话机器人背后都有一群写秃了头的工程师以及领域专家。 

那么咱们有什么办法能够打破这种, “有多少人工, 就有多少智能” 的困境呢? 

让咱们回顾一下人类小时候是怎么学习。咱们小时候若是想要学会一件事情, 比方说学会认识到一个动物究竟是猫是狗的话, 爸爸妈妈会给咱们指着图片说, 这是猫, 这是狗, 而后咱们会从图片中进行概括总结;而不是爸爸妈妈告诉咱们, 有耳朵有眼睛有鼻子有毛看起来一副主子模样拉屎还贼臭的是猫, 这样的话咱们可能会指着本身开心的说妈妈妈妈原来我就是一只猫呀。


配图:猫己不分

对比一下这二者的区别, 咱们发现核心的区别就在于咱们人类能够经过一个一个的样例,学习到”概括总结“的能力。那么咱们怎么让机器来作到这一点呢? 欢迎和小明一块儿进入, 机器学习的时代。

从制定规则到机器学习 Machine Learning




机器学习究竟是什么呢? 机器学习其实就是一个你写好的程序, 这个程序接受一个输入, 而后能产生一个输出。人们就像教小孩同样去教这个机器,好比咱们想要机器帮咱们辨识一张图片里是猫仍是狗的话, 咱们给机器看了不少猫的图片, 而且告诉机器这是猫。


image-20200919193111067

同时咱们给机器看不少狗的图片, 告诉机器这是狗。 


image-20200919193158018

而后, 机器经过一些计算机算法会主动分析猫和狗的区别, 这样当咱们给出机器以前没见过的猫狗图片时, 机器能够自动帮咱们识别出来:



返回到刚才小明的对话机器人那个例子, 小明若是想要从上世纪 50 年代进化到上世纪 80 年代, 那么小明须要写出一个机器人, 这个机器人会根据小明给出的各类各样的例子去学习到什么样的指令才是关闭音乐, 而不是由小明告诉他什么样的指令才是关闭音乐。

总结而言, 机器学习就是让机器去寻找“规则/程序”的过程。机器学习最终目的就是制造一个程序/方程/系统, 它接受一个输入, 而且可以根据输入获得一个输出。当咱们在语音识别任务中, 方程的输入就是一段音频的波普频率, 输出就是这段音频的实际文字。当咱们在图片识别任务中, 这个方程的输入就是一张图片, 输出就是图片里面实际的物体。当机器学习开始下围棋的时候,咱们的输入就是一张如今的棋谱如今的黑白子位置, 输出就是下一个落点的坐标。

那咱们如何让机器去寻找到这些规则呢? 这是一个漫长发展的过程, 让咱们从简单的东西开始, 试着去思考一下这个问题:

已知小明 5 岁, 身高 120cm;小红 4 岁, 身高 110cm;小刚 6 岁, 身高 130cm。
明天会新来一个小伙伴, 小伙伴 7 岁, 那么咱们能猜出小伙伴有多高吗?

咱们下期再见。


 


猜你喜欢  

通用机器学习平台设计和在金融领域的应用
新金融业态下的大数据智能技术体系建设
Python 语言中 asterisk 符号用法小结
大数据,小故事

以为不错,点个在看

本文分享自微信公众号 - 金科优源汇(jkyyh2020)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索