【kieranliu(刘晓江)】AI入门从用机器学习解决某个实际工作问题开始

kieranliu(刘晓江),2016年9月加入TEG AI Lab,之前在微软亚洲研究院从事自然语言研究,拥有10年的自然语言研究和开发经验。“自然语言处理高手”、“问题的回答360度无死角”、“深入浅出的讲解太赞了”、“亲和力十足”、2小时的交流下来,伙伴们迅速给予了这样的评价。

01 - AI领域的入门学习?

kieranliu:

以我们做AI的经验,NLP是有门槛的,需要你去理解语言的特性,因为它需要去设计各种各样的特征(feature),比如要识别“人名”,需要知道前后有什么词,这个词的第一个字是不是百家姓中的一个,要识别一个公司的名,要知道常见的公司名的后缀,需要写很多特征,再去训练模型去做分类。

现在深度神经网络发展得非常好,是因为它让机器学习的门槛变得没有那么高了。对深度学习来说最主要有数据,有目标函数。这些数据都标好,比如有同事说识别垃圾邮件,以前我们需要,“发信人”,“公司名字”,是不是来自于一个特定的company,或者是一个Email的后缀,里面是不是还有“coupon”、“免费”这种词。而用深度学习的好处是,只要给我很多Email,告诉我这种Email是不是垃圾邮件,我可能用RNN、CNN模型去训练模型,就能得到一个比较好的结果。同时现在网上有很多开源的代码,比如谷歌的TensorFlow,Facebook也有,拿来试试,它可以自动帮你找到这些特征。

建议大家可以把现实工作中遇到一些问题尝试用机器学习来解决,可以自学,网上有很多讲述DNN的模型的教程,有开源的系统。用一些例子去试一下效果怎么样,比较一下,可能会发现机器学习有时候把事情干得非常快。另外可以关注一下咱们内部组织的一些分享,像AI Lab一定会将最新的技术做一些分享。

02 - 很多人会质疑,像闲聊机器人到底有什么用?

kieranliu:

聊天机器人按照现在的用途可以细分为三种:

第一种是闲聊,它的目的是说我要一直跟你聊下去,是一种无限的游戏。能跟人聊十分钟的机器人比五分钟的要智能。它体现的是情商,沟通能力。从机器学习上说闲聊机器人优化的目标是对话轮数,对话轮数越长越好。

第二种是垂类机器人,它的目的是帮你尽快的完成一个任务,比如提醒,订餐,定会议室等。它想让你尽快的离开它,能在三轮对话帮你做好,一定不能四轮、五轮。他体现的是完成事情的能力。垂类机器人优化的目标是尽快的完成任务。

客服机器人你可以把它当成另一种类别,它也是属于垂类机器人的一种。

苹果的Siri、微软的 Cortana属于一个机器人平台,他们都聚合了闲聊和很多垂直类的Bot。垂类机器人是能帮用户解决问题的机器人,而闲聊是一个基础能力,用户会通过闲聊来跟机器人建立信任。

03 - 聊天机器人的技术难点?

kieranliu:

聊天机器人基本是人工智能集大成的一个挑战,它涉及到AI中的感知,理解,交流,决策,是AI中非常难的一个任务。

大致来说,现在聊天机器人有几个难点:第一个是深度自然语言的理解,比如上下文的理解,基于语境的自然语言理解,多意性的理解。第二个是智能的决策,现在的人工智能缺乏常识,缺少支持决策的背景知识,缺少智能的决策。

04 - 人工智能可能超越人类最有可能的原因就是它的数据计算能力实在比人类强悍多了?

kieranliu:

确实,像16年初的deep mind就是计算能力超过了人,但要“超过”人还有很长的路要走,现在大部分的智能也就相当于几岁的孩子。“超过”的定义是在任何一个task上都完胜人,而围棋它是纯人工造出来的task,就是在一个自定义的世界里面去玩。靠计算能力超过人类,计算机很擅长,而且也会超过越来越多,这种人是搞不定的。但真的到现实世界里面,就会牵扯到很重要的问题:常识,知识和决策。现在人工智能解决很好的是人工智能不去理解它,只要知道你输入什么, 想要什么,就可以去训练一个模型,中间不需要牵扯到太多,不需要任何额外的信息都能把这个事做了。像识图,一个正常人一看就知道,他不需要太多的背景信息,一看这张图基本就知道这张图讲什么。但是现实生活当中,AI的任务需要有决策,决策就牵扯到需要用到人的智商。

举个例子,我在微软做的一个很成功的会议预订应用,大家可能觉得人做这个事情很简单。

在腾讯比较简单,线下把几个人拉个RTX群,确认大家几点有空,然后有一个人就去负责找个会议室。然而在微软定会议室是一个很困难的事情,微软的工作习惯大部分是用邮件去沟通,不太会用即时聊天工具把人拉到群里,因为有些人很忙。每次我们要去约会议,就把所有参会人员放在我们邮件系统里,看这些人在什么时候都有空,然后现有会议室怎么调配,再发会议邀约来告诉大家说我们来开会吧。

但其实很多时候用户不关心这个事,比如我想在周五开会,上、下午无所谓,只要大家都有空就行。楼层离我越近越好。这个时候计算机就派上用场,计算机做搜索非常擅长。我们做了一个定会议的机器人,只用告诉机器人“我明天早上要和**开会”,计算机帮你做最好的决策,帮你找最近的会议室,如果你在朗科我不会帮你订到腾大去,帮你找大家都有空的时间。

但这里面的决策很难。比如需求是“帮我订一个在张老师办公室的会议”,我知道张老师办公室是一个地方,但其实这个时候隐含着参会人员还有张老师,因为你是在他的办公室开会,另一个需求是“帮我在张老师旁边办公室找个会议室”,其实这时参会人可能不包括张老师,而前一种情况需要,如果说前一种情况不去做的话,那用户就觉得这个机器人好傻,一点都不智能。

再比如说“帮我定一个三点的会”,用户没说凌晨还是下午。但是他默认机器人知道凌晨三点应该不会上班。如果机器人给定个凌晨三点的会,这个机器人也会被骂,因为“我不会在凌晨三点开会”这个事情是一个大家习以为常的事情,但后面有很多像这种背景、常识的信息机器不知道,所以导致现在人工智能在大家眼里更像一个玩具,没什么实用,或者说还停留在想象之中。DNN把识别,知道是什么这件事情做得很好,决策这件事其实差得还很远,尤其是在现实世界当中的决策差得还很远。

05 - 自然语言处理、数据挖掘前沿的进展?

kieranliu:

DNN在自然语言上的突破没有视觉和语音那么大,但是在机器翻译上突破比较大。Google最近发布的机器翻译的流畅度会比以前好很多了,这都是深度学习带来的。

但是具体到文本领域有几个难点跟其他不同,第一,文本其实已经非常抽象,有可能文本上差1-2个字,整个句子表达的意思就不大一样,而图像和语音没有这个显著特征。图像少1-2个像素,猫还是那只猫、狗还是那只狗,语音如果有一些噪音,对识别也不会有那么大影响,所以文本突破带来很大困难。第二,文本的理解实际上需要很多外部的知识支持,没有外部的支持,做分词,做命名实体识别、去识别entity都有瓶颈。

现在研究人员都非常关注DNN在自然语言上的应用。比如,如何在DNN里面加入一些记忆,让它能够利用外部的信息,同时如果它前面读了一些东西,它是否能够把一些东西记下来,然后在读下一句话的时候用到前面的东西。

06 - 刚才提到文本理解上差几个字都不一样,像汉译英,比如说汉语的语言、语气不一样导致理解就不一样,但像英语会不会好很多?

kieranliu:

英语也很难,其实是一样的,语种上没有任何差异。我举个例子,在一个人的office旁边用英语表达会是“at one’s office”,还可以说“near one’s office”,这两个只差一个词,这两个介词大家觉得没什么意义,甚至大多数情况下觉得at和near其实差不多,区别不会那么大,但是语意上差别很多。英语特别是介词,比如说Tom catches a butterfly with spots和Tom catches a butterfly with net. 这里spots和net对整个句子的解析是有决定性作用的。Spots这句话是Tom抓到一只带斑点的蝴蝶,而net是说Tom用一个网子抓到那只蝴蝶。所以DNN在自然语言上的困难,跟不同语言没有任何关系,语言是人类智慧的一种体现,需要在语言上面下很大功夫。

07 - 那化解NLP最大的困难,是由于要告诉机器增加这些信息维度的困难还是说要增加表述其他信息的困难,还是说数据量?

kieranliu:

对DNN来说,如果你有大量的数据,比如说机器翻译,谷歌找到大量的数据,我有大量的GPU去训练,能得到一个比较好的效果,但在人看来它离人还是有差距,人不会满意,人觉得它还是机器。

所以说要解决后面很大的差距,让机器学习知识和记住知识是很重要的。

第一世界上有很多“隐藏”的知识,例如常识,你找不到任何一个地方去整理这些常识,比如说“我要去吃饭”,那可能意味着“我会去一个餐厅”这件事,你在互联网上找不到这样的人去明确写“我要去吃饭”代表着“我中午十二点很有可能要吃饭”,所以人很难去整理这样的知识。

第二是研究人员还没有想好到底知识怎么表达,比如说刚开始,我去教一个1岁多的小孩,如果被蚊子咬就用花露水,过两天他发现自己被咬了一个很大的包,他也去用花露水,那我会告诉他,如果包很大的情况下你就不要用花露水,可以尝试用风油精类似的。所以你会发现我写了一条规则,我可能会发现我过两天就要更新这个知识,一是因为这些知识在有些情况下会成立,在有些情况下不成立,另外就是它有各种各样的限定条件,比方说我们去维基百科那里搜,我们发现所有的皇帝都是男的,但这其实不是真的。在中国可能有两个例外要加上,武则天和另一个人,而在另外一个国家可能所有的皇帝都是女的,要完整的表达知识是非常困难的。

第三是知识在不停的更新,大家会有新的词汇,会有新的网红。人类不停创造知识,比如说我们以前做知识图谱,我们从所有的新闻里面去更新知识,但结果可能会发现刘德华天天都死了甚至离婚了,因为很多人可能在传递这些信息,就是很多都是八卦信息,知识就没法更新,不知道到底谁说的是真的,这也是很大一个问题。但是没有知识,你的语意理解就做不上去,做不到真人的那个水平。

08 - 在个人专业成长方面,有什么建议、经验分享给大家?

kieranliu:

因为AI这个领域发展非常快,以前发论文大概一年发个一两篇论文都可以,因为大家每年都有固定的会议,现在可能每天都会一个新的成果,需要不停的去学习新知识,不管是互联网还是AI,发展太快了,自己保持持续学习的态度是最关键的。然后做一些自己感兴趣的、真的有用的。

现场剪影

原文发布于微信公众号 - TEG云端专业号(TEGYunduan)

原文发表时间:2017-02-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技评论

Human-like learning在对话机器人中的魔性运用 | 牛人讲堂

对话机器人很多,像Siri,小冰,度秘,Allo都能在你有空的时候跟你贫贫嘴,不过随着厂家和用户意识到凭空做出一个高度通用的对话机器人是非常不现实的,对话机器人...

2695
来自专栏机器学习算法与Python学习

一份MIT博士的学习心得,送你入坑机器学习?(可下载PDF)

1176
来自专栏量子位

Google大脑科学家吐槽深度学习:瓶颈就是太不重视工程!

Google Brain团队成员Denny Britz在博客上发表了一篇文章,对深度学习研究界进行了一番吐槽,转到twitter后收获了数百转发,可见共鸣之广。...

1899
来自专栏ATYUN订阅号

【方法】搜索引擎如何使用机器学习:我们需要知道的9种方式

? 当我们在2010年初初次听到机器学习的时候,可能会感觉它很可怕。 但当我们意识到技术已经被用来为我们提供解决方案时,我们就开始着手解决实际问题: —搜索引...

3409
来自专栏java一日一条

调查:Java程序员最伤心,C++程序员最年老

说起我们对编程世界现有的刻板印象,你一定听说过类似于没有人喜欢用Java编码或者使用C ++都是老人家,等等这样的话。为了分析这些刻板印象背后的真相,Trest...

321
来自专栏BestSDK

谷歌又玩黑科技,DeepMind可以模仿人类说话

Google的DeepMind研究实验室昨天公布了其在计算机语音合成领域的最新成果——WaveNet。该语音合成系统能够模仿人类的声音,生成的原始音频质量优于目...

2648
来自专栏目标检测和深度学习

想要入坑机器学习?这是MIT在读博士的AI心得

821
来自专栏人工智能头条

机器学习开发者的现代化路径:不需要从统计学微积分开始

1463
来自专栏新智元

双刃剑 | 机器学习的潜力与陷阱

最近这段时间,机器学习吸引了媒体和从业者大量的关注。的确,机器学习是一种变革性的技术。但是,尽管众人对这个话题喋喋不休,尽管风投为机器学习提供了许多资金,尽管谷...

2564
来自专栏PPV课数据科学社区

【深入浅出】推荐系统那点事

推荐系统的误区 回想起来,我也算是国内接触推荐系统较早的人之一了,最近和人聊天,觉得不少人对推荐系统有所误解,以为需要多么高大上的算法才能搭建起来的,我只想说我...

3215

扫描关注云+社区