在人工智能时代,要培养自己的AIQ,其中的关键还是区分事实、观点和推理,在平时的工作生活中关注AI的发展,了解AI的优缺点,尝试用AI的优势让自己工作和生活的更好。

如果说IQ是用来测量一个人的智商,EQ用来评价一个人的情商,那么AIQ就是评价一个人对人工智能的认知。《AIQ》的两位作者都是数字工程师,他们认为要适应未来“人+机器”的工作场景,每个人都需要培养AIQ,提升对AI的认知,以便更容易适应科技快速迭代改变的未来。此外,人类还需要有能力去监督AI,在“人+机器”的协作中,成为关键的一环,要做到这一点的前提也必须对AI和数据科学有基本的认知。

培养AIQ首先要建立对当下AI发展的认知。很多人把AI看得神秘莫测,的确现在AI可以做很多神奇的事情,比如说图像识别、语音识别、辅助驾驶、自动翻译等等,在一些情况下做的比大多数人还要好。但目前的AI仍然并不具备人类的那种聪明,它只听得懂一种语言——数字。

AI可以处理各种信息,只要输入的是数字就行。所以AI系统要能起作用,需要将各类不同输入都变成可以处理的数字语言,数据工程师把这种过程称为“特征工程学”,比如说把图像和语言的数字特征提取出来,变成机器听得懂的语言。

以自然语言识别为例。以前处理语言的思路是自上而下的编程思路,希望灌输给机器所有的语言规则,同时穷尽任何特例。结果几十年语言识别都没有大进步,因为语言其实太随意、太复杂了。AI的自然语言识别,完全走了另外一条路,让机器做最擅长的事情,找到文字与文字之间的相关性。机器回答的是一个最基本的问题,能不能让有相同意思的词,对应的数字也类似?当机器可以给每个单词和词组一个描述性的数字后,就可以用数字的加减乘除来帮助算法做出正确的判断。比如说,如果问机器一个问题:英国的伦敦,对应的词应该是意大利的什么?机器就可以这么计算:伦敦-英国+意大利=罗马,因此得出罗马这个正确答案。

现在的AI,无论是亚马逊的Alexa,或者苹果的Siri,都并不懂得语言的含义,但是却能准确判断文字之间的相关性。不究原因,只强调结果,AI能带来高效率,而我们暂时远不用担心它能和我们有一样的智慧。

这也是培养AIQ的第二个要点,不用过早担心AI是否会取代人类,因为现在的AI发展距离通用机器智能(AGI),距离赶上人类的智能还很远。数字工程师现在要花90%的时间用于处理数据,把非标的数据变成机器可以读懂的结构化数据,只有10%的时间用在推进AI的发展上。因为AI只听得懂数字,无论是图像还是文字的识别,都是找出它们的数字属性,然后让AI做最擅长的事:快速地计算和找到准确的关联。

培养AIQ的第三点,需要理解人与现在的AI之间到底有哪些优势和劣势。

十几年前,当时担任美国国防部长的拉姆斯菲尔德曾经特别就美军在伊拉克面临的风险做过一个四个象限图的分析,分别是美军知道美军自己知道的风险(已知的已知);美军知道美军还没有掌握的风险(已知的未知);美军并不知道自己已经掌握的风险(未知的已知),以及美军根本不知道自己还不知道的风险(未知的未知)。

如果以美国掌握的全球恐怖主义信息为例,第一种风险是美国知道本拉登建立了基地组织;第二种风险是美国知道自己并不知道本拉登基地组织的目标到底是什么;第三种风险是CIA已经知道与本拉登相关的人曾经在美国学习飞行,并且再次入境美国,但是并没有就这一重要信息做出分析,因此美国的决策者并不知情;第四种风险则是美国根本无法预测2001年纽约的911事件会发生。

同样,套用这四个象限分析,也可以清晰地分辨人与机器之间的差别。

应用场域最广的领域是“已知的已知”领域,即有着大量数据,而我们也很清楚知道如何做出好的预测的领域,比如说防欺诈、医疗诊断等等。这些领域AI已经大规模取代人,因为机器从大数据中找出相关性的速度比人要快得多。

如果反思一下2008年金融危机,首要问题是为什么评级机构当年没有看到次级债(CDO)的风险。答案并不是因为评级机构当时没有充足的数据。症结在于他们设计的风险模型中并没有考虑到不同市场价格变动的相关性,比如纽约和芝加哥房价同时下跌给CDO带来的风险。有了AI就不再会出现这种问题,因为可以从更多维度对数据做出分析。“已知的未知”领域,将仍然是人的领地。这个领域并没有大量数据,无法帮助AI做出好的预测。相反,人却能利用小数据来举一反三。当然这也恰恰是机器学习发展非常快的领域,如果机器能够学会如何像人一样学习,智慧会进一大步。

第三个领域,也就是“未知的未知”领域,人和机器都束手无策。黑天鹅就是一种未知的未知,人和机器都很难预测。原因很简单,AI从本质上仍然是利用历史数据预测未来。如果某个新物种,从来就没有人见过,又何从预测呢?比如说,共享音乐Nap-ster给CD行业带来的毁灭性打击就很难预测。

最后一个领域,就是“已知的未知”领域,AI和人一样容易犯错,而应用AI会带来更大的风险,因为AI可能飞快地将错误放大千百倍,让人措手不及。所谓已知的未知,意思是我们已经能做出了预测(不管是人还是AI),但是却并不知道背后真正的原因,甚至有时候以为自己知道原因,其实却是错的。

国际象棋大师卡斯帕罗夫在《深度思考》中就提到一个早期研究国际象棋的AI犯错的例子。AI在看到大量棋谱之后,发现很多象棋大势在牺牲王后之后,往往很快就能有致赢的后手,所以这种AI会开局就选择放弃王后。这就是在“已知的未知”领域内犯错的例子,因为它把相关性错认为是因果性,把现象——好的棋手有的时候会丢弃王后——当做了制胜的原因。

有了这四个象限的分析,人与机器的差别也就非常清楚。简单重复的劳动,甚至一些中等的职位,比如起草标准合同的律师工作,都会被机器所取代,因为有着大量数据可以培养出强大的AI,但是在探索未知领域,人类仍然有巨大的潜力。

人人都要培养AIQ的更多相关文章

  1. 人人都是 DBA(XII)查询信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  2. 人人都是 DBA(XV)锁信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  3. 人人都是 DBA(XIV)存储过程信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  4. 人人都是 DBA(XIII)索引信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  5. 人人都是 DBA(XI)I/O 信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  6. 人人都是 DBA(X)资源信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  7. 人人都是 DBA(IX)服务器信息收集脚本汇编

    什么?有个 SQL 执行了 8 秒! 哪里出了问题?臣妾不知道啊,得找 DBA 啊. DBA 人呢?离职了!!擦!!! 程序员在无处寻求帮助时,就得想办法自救,努力让自己变成 "伪 DBA& ...

  8. 人人都是 DBA(VIII)SQL Server 页存储结构

    当在 SQL Server 数据库中创建一张表时,会在多张系统基础表中插入所创建表的信息,用于管理该表.通过目录视图 sys.tables, sys.columns, sys.indexes 可以查看 ...

  9. 人人都是 DBA(VI)SQL Server 事务日志

    SQL Server 的数据库引擎通过事务服务(Transaction Services)提供事务的 ACID 属性支持.ACID 属性包括: 原子性(Atomicity) 一致性(Consisten ...

随机推荐

  1. Calendar时间获取天,周,月,季度,年度时间段

    Date类 Date类的大多数构造函数和方法都已经抛弃,只留下和毫秒有关的操作,目前常用的构造函数 常用方法 设置毫秒数 读取毫秒数 toString()打印结果 //创建日期对象,把当前的毫秒值转成 ...

  2. 总结网站Mysql优化

    Mysql存储引擎 选择合适的存储引擎Innodb  myisam myisam: 写入数据非常快,适合使用场合dedecms/phpcms/discuz/微博系统等写入.读取操作多的系统. inno ...

  3. poj-3461-kmp模板题。。。

    Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 46290   Accepted: 18452 Descript ...

  4. HDU5521-最短路-建图

    Meeting Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total ...

  5. RabbitMQ其他(八)

    1 RabbitMQ消息队列的小伙伴: ProtoBuf(Google Protocol Buffer) 什么是ProtoBuf? 一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序 ...

  6. 【Html 学习笔记】第四节——框架

    我们经常使用的网页可能不是一个单独的网页,而是多个嵌套的,那么就需要用到下面的技术. 垂直框架:<frameset cols=""> 这里需要注意的是:四个网页需要同时 ...

  7. eureka-3-常用注解

    @EnableDiscoveryClient @EnableEurekaClient 上面两个注解都是用在应用的启动类上面,声明这是一个Eureka Client ,现在说明两个注解的区别. spri ...

  8. MySQL学习(二): 数据类型记录

    整形: 浮点型: 日期时间:(使用较少,可能存在跨区域问题) 字符型: CHAR(M):定长,会将位数补充到M位 VARCHAR(M):非定长,最多到达M位 ENUM('v1','v2',...):从 ...

  9. shell脚本实例三

    练习一:获得连通主机的ip和hostname1.脚本编写 vim  checkhost.sh #!/bin/bashAuto_conn(){/usr/bin/expect << EOFse ...

  10. jsp中把js变量赋给java变量,或者将java变量赋给js变量怎么做?

    在jsp中经常会遇到把js变量赋给java变量,或者将java变量赋给js变量的情况,在此将通用的处理方法小结如下: java变量传给js好办,var a=”<%=javaParam%>“ ...