IBM苏中:怎样利用深度学习、增强学习等方法提高信息处理效率

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 本文是由IBM研究院研究总监、大数据及计算研究方向首席数据科学家苏中带来的题为《从深蓝到AlphaGo,从大数据到认知商业》的分享。 伴随着认知计算时代的到来,如何将我们计算机的信息处理能力与人类的认知能力相结合,从而提高我们的信息处理效率,是我们在目前所要思考的问题。

以下是讲座视频实录,后附文字版内容:

225dff5b16390b5e389f3111996abe2772002edf

文字版干货整理如下

07a82586e7c9bbc3fee67041b174f95422083fb9
IBM研究院研究总监苏中

苏中:美国的达特茅斯于61年前提出人工智能一词,而人工智能的历史可以向前追溯很长的时间,甚至中国人发明算盘的时候就在思考将计算的机器演化成智能。这一演化进程与人类认识客观规律的过程相类似。通过符号推理,人类体现出早期的智能行为,并认识到世界的规则。以三段论为例,我们在认识世界时,先设定一个大前提或者一个更大的公理,而每件事情都有一个特例,根据这个公理和特例就可以推出一个结论。在很多人工智能的演化中,这方面已取得了非常大的进步,如定理证明。

07f96849ebe79c28e450a6f40857b4e8cfc143e5

这方面的技术同样应用在产业界,以专家系统为例。在医疗行业中我们需要考虑一个好医生所具备的特点,到底是他诊断的病人比较多还是他遇到的疑难杂症比较多?一般而言,一个疾病、一个好医生大概可以总结为几个类别。我们进行数据分析通常把一个大问题划分到一个小的问题空间,然后在小的问题空间领域求解。

专家系统采用同样的角度,如医疗专家对一个病种的病人进行分类,符合分类的病人具有怎样的表征,通过什么样的检验方法得以确诊,这类病人一般有几种治疗方式,其中每种治疗方式对应各自的优缺点,需考虑在什么情况下用什么方式治疗。一般来讲一个好医生把一个病种稍微的梳理一下可能会累积几十条规则,那么几个医生或几十个该行业的专家医生就能梳理出一个完整的知识体系,如《临床医疗指南》。按照《临床医疗指南》的整个流程,我们能够很容易地确定病人该做什么样的检查,通过检查能得到什么结论,得到结论以后有什么治疗手法,以及在整个病程中该做一些什么样的观察。

这样的专家系统是非常有效的,在医疗行业也有很好的应用。但专家系统同样面临着一大挑战,即固化的知识体系不能应对实际繁杂的问题。这种基于数据普适性的挑战使得人工智能的发展进入了一个瓶颈期。

人工智能的迅速发展得益于大数据的爆发,在这场爆发中,机器学习可以自动地从数据里寻找规律、,规则同时随数据的改变而自动发生变化。由此,人工智能迅速在互联网方面得以应用,包括搜索、推荐、语音识别等等。

8c9b1644b5d7b96ebaf260d34e405064e30772e0

下棋是一个较容易验证计算机是否具有智能的方式,因为可能只有人类会下棋,另外下棋有很多推理过程,如对于棋局的判断等。随着伴随计算机习得经验的增多,它的智能水准就得以提高。下棋本身是相对比较容易理解的问题,因为棋的规则是开放的,不管是国际象棋、中国象棋、跳棋还是围棋,规则是非常清晰的,在一个清晰的规则系统下,输赢很容易判断。

f7dac5d67264a5fac81fd33f34f0f44f2279f6ae

由于双方的棋力都能在棋盘上显示出来,再加上清晰的评价函数、规则系统和数据,我们能比较容易地设定人工智能的系统。以IBM的深蓝系统为例,当把一个棋面变成数值时,我们就可以让机器去做搜索算法,而每一个棋子在不同方向都有被选择的可能,就构建出搜索素树算法,再通过α-β剪枝的方法就可以迅速得到结论。当时深蓝就是通过这种方式对国际象棋做出很好的评估函数,由于这些评估函数大多来自国际象棋大师,并且计算机算法搜索很深入,我们就可以让计算机打败像卡斯帕罗夫这样的大师。

在用象棋的这种方法来解决围棋问题时却遇到很大的挑战:一是围棋的棋盘是19乘19,有361个空间可能性,其搜索空间达2.08X10 107 ,那,那么搜索素树就会相当复杂;二是围棋的每个子是一样的,无法通过棋面盘面子粒的多少判断它的状态;三是围棋比赛中会出现一步臭棋,全盘皆输的情况,即围棋的评价函数值不连续,在某一点一个子粒的变化可以让整个棋面的评估变得很复杂。蒙特卡罗搜索树为解决这些问题提供了思路:虽然我们没有办法判断当前盘面的情况,但可以让系统随机下棋,拿胜率作为评估标准盘。随机数可以从某种意义上描述评估值,从而解决怎样评估一个棋子的问题。

当计算机算到足够的深度时,这样的方法会有较好的效果。但是它的速度空间还是太大,那有没有什么办法可以降低呢?通过深度学习的网络来评估棋局就是一种好方法。我们用深度学习算法可以将评估变成一个深度学习的任务,以当前的对局作为输入,输出在某一点上的值,也可以提高预测精度。

那把蒙特卡罗搜索树和CNN结合能产生什么样的化学效应呢?如果用神经原网络可以预测专业棋手在对局中下一步棋的位置,我们就可以让搜索空间变小了。

AlphaGo把这个事情推到了极致,他们不光让棋的搜索宽度变窄,更做了策略网络,来判断当前棋局黑白双方获胜的概率有多大,但遇到的挑战是这个数据比对局的数据要少,对局的每一步都可以作为训练数据,但输赢一盘只有一次,训练数据有点稀疏。所以他们在这个工作上使用了增强学习的方法,即让一个战斗力不错的系统,或者两个系统互相对战产生对局,然后用最后的输赢结果作为机器的样本学习。结果就是这个系统战胜了李世石,非常了不起。

AlphaGo zero又是一个非常重要的突破,一是 AlphaGo zero完全从零开始,二是 AlphaGo zero没有用任何的方式评估,只用了对局本身的棋盘信息。它的输入只有围棋的规则,之后机器就自己跟自己下棋,以此确认模型。在深度学习里面它把原来13层的网络变成40层,而且把原来CNN的网络变得更为复杂,同时把所有的人类知识都抛掉了。但在这一过程当中,它的训练非常快,第三天这个系统跟李世石的系统对决可以完胜,过了21天它就打败了战胜柯洁的那个系统。从某种意义来讲,像下棋这样在规则明确、状态空间有限、容易评估、所有信息透明的情况下,用增强学习的方法是可解的,而且它的解法可以比人做的还要好。

53c17e0d0595442f0c0f24fe2df88d4813623a4e

那这样的方法能不能解决其他问题呢?现实当中,很多问题可能没法解。增强学习是大量数据的模拟,通过模拟的结果来调整参数。举一个医疗上的例子,我们能拿一个病人去模拟吗?给他吃不同的药看他会发生什么问题?很难。另外,数据的来源信息不是单元的,各方面的因素都会影响到病人,如基因、饮食、生活习惯、家人、天气等,这些因素不可能在一个简单的环境里被算出来,每多一个维度的参数都需要更多的数据来训练。

用多模型聚合的方法是不是可以放在行业里呢?举个例子,比如水管的优化问题预测。历史上有一些数学模型来预测管道哪个地方容易发生锈蚀,我们该在哪个地方打开了去看,但用几个模型、用不同的参数去优化,可以取得很好的效果,而且产生了很大的经济效益。

4cc95737d68dd584bc7ff175ff875353eb387b4b

又例如,在电商平台上怎么提高电商的经济效益呢?在电商网站上买东西要经过搜索、对比、加购物车、看评论,这些步骤就是一个决策链,每个链条之间都有转化率,我们怎么提高电商的销售额呢?最好的推荐算法是什么呢?在这个领域里面,采用协同过滤算法是最有效的。

协同过滤有一个方法是矩阵分解,我们可以把用户作为一类,商品作为一类,比方说有6亿用户,1亿商品,就是一个6亿乘1亿的矩阵。我们可以把这个矩阵分解成M乘K的矩阵,当然这两个矩阵之间不会完全一致,可能有一些像压缩的损失。但是矩阵分解可以减小计算量,也可以根据用户跟用户之间的相似度、商品和商品之间的相似度做智能推荐。也就是说在这里面用一个多元K,用好多阶层的K来做优化,以达到最好的效果。

bacea38ddd0f97811c0baea14f28b67017226ba5

在新的时代里,由于多了数据维度,我们可以解决很多新的问题。例如皮肤癌的识别,每个医生能看到的案例都是有限的,一个好的大夫一天可能看5个案例就已经很了不起了。但机器可以学了几十万个案例以后做出判断,这个场景就是拿自己手机拍了照片以后发到系统,系统做出风险评估,以判断患有皮肤癌或者黑色素瘤的概率有多大。

回到今天的主题,我们从下棋里面看到一些计算机的成长,包括它能用更多的数据,也包括计算能力的增强,新的算法的体现。如果面对的问题是可以解决的,那这些能力就可以应用到现实当中的行业里。但是现实当中的问题往往比我们像下棋这样的问题要复杂得多,所以我们讲这种算法还有很长的路要走。

0fd4854538acc7660ace2bb563c6e3e549c64ecc

我们很多人都在担心机器人要替代人类的工作,但是其实机器人走路时还在以各种各样的方式摔倒。实际上这些都是世界上最好的机器人在比赛。三年前有一个比赛,场景是以福岛核电站的辐射场景作为蓝图,机器人可以开车,到达一个地方可以上楼梯,进去以后找到阀门,关上指定的阀门。它可能会使用一些器械,包括使用电钻等,这些都不复杂。当年的冠军是韩国一个大学,他们做的系统相对来说更容易,就是四点着地,相当于跪着,前面膝盖的地方有一个像履带的东西,所以它走路的时候像坦克车一样行走,不容易摔倒。从某种意义上来讲也验证了一个经典,用最合适的方法去解决一个问题,也许成熟的技术或者是一些简单的技术在现实当中更有效。

人工智能确实会有很大的发展,因为大数据的变化改变着很多产业,对从金融行业到医疗行业、教育行业都有很大的帮助。人们经常讲的“人工智能威胁论”事实上有很多的局限性,无论是从应用方法本身,还是问题本身。实际的问题很复杂,参数很多,而现在的方法都是简化的方法。当我们回到真正的应用当中会发现,还有很多最基本的东西需要攻克。

我们用计算机在图象识别领域里面做得很好,但它仍然是有限的数据集,比方说我可以用100万张的图片训练出一个机器人识别猫,识别狗,它能做的比人还要准,但是如果把数据集换成漫画,机器就识别不出来,但是孩子可以识别出来。孩子真正理解这是个苹果,这是个小猫,那是真正的理解,而大数据的智能在某种意义上不是真正的理解。另外,智能的本身是真正了解人,人最复杂的不光是表象,还有很多情感,这对智能来说是不小的障碍。

7d3efd10eac171cd362218e971c039f75f31aea5

迄今为止,我们看到智能化的门已经打开,真正能够改变多少,可能需要不断的尝试。因为并不是所有的问题都可以用大数据解决。

原文发布时间为:2017-12-4

本文来自云栖社区合作伙伴“ 大数据文摘”,了解相关信息可以关注“ 大数据文摘”微信公众号

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
16天前
|
机器学习/深度学习 数据采集 人工智能
AI赋能教育:深度学习在个性化学习系统中的应用
【10月更文挑战第26天】随着人工智能的发展,深度学习技术正逐步应用于教育领域,特别是个性化学习系统中。通过分析学生的学习数据,深度学习模型能够精准预测学生的学习表现,并为其推荐合适的学习资源和规划学习路径,从而提供更加高效、有趣和个性化的学习体验。
71 9
|
1月前
|
机器学习/深度学习 传感器 人工智能
深度学习之自主学习和任务规划
基于深度学习的自主学习和任务规划,是指通过深度学习算法使人工智能(AI)系统能够自主地从环境中学习,并根据特定的目标和任务,规划出有效的解决方案。
46 3
|
24天前
|
机器学习/深度学习 调度 计算机视觉
深度学习中的学习率调度:循环学习率、SGDR、1cycle 等方法介绍及实践策略研究
本文探讨了多种学习率调度策略在神经网络训练中的应用,强调了选择合适学习率的重要性。文章介绍了阶梯式衰减、余弦退火、循环学习率等策略,并分析了它们在不同实验设置下的表现。研究表明,循环学习率和SGDR等策略在提高模型性能和加快训练速度方面表现出色,而REX调度则在不同预算条件下表现稳定。这些策略为深度学习实践者提供了实用的指导。
33 2
深度学习中的学习率调度:循环学习率、SGDR、1cycle 等方法介绍及实践策略研究
|
26天前
|
机器学习/深度学习 存储 自然语言处理
深度学习之少样本学习
少样本学习(Few-Shot Learning, FSL)是深度学习中的一个重要研究领域,其目标是在只有少量标注样本的情况下,训练出能够很好地泛化到新类别或新任务的模型。
24 2
|
1月前
|
机器学习/深度学习 自然语言处理 计算机视觉
深度学习中的迁移学习技术
【10月更文挑战第11天】 本文探讨了深度学习中的迁移学习技术,并深入分析了其原理、应用场景及实现方法。通过实例解析,展示了迁移学习如何有效提升模型性能和开发效率。同时,文章也讨论了迁移学习面临的挑战及其未来发展方向。
|
1月前
|
机器学习/深度学习 监控 数据可视化
深度学习中实验、观察与思考的方法与技巧
在深度学习中,实验、观察与思考是理解和改进模型性能的关键环节。
39 5
|
16天前
|
安全 搜索推荐 机器学习/深度学习
AI赋能教育:深度学习在个性化学习系统中的应用
【10月更文挑战第26天】在人工智能的推动下,个性化学习系统逐渐成为教育领域的重要趋势。深度学习作为AI的核心技术,在构建个性化学习系统中发挥关键作用。本文探讨了深度学习在个性化推荐系统、智能辅导系统和学习行为分析中的应用,并提供了代码示例,展示了如何使用Keras构建模型预测学生对课程的兴趣。尽管面临数据隐私和模型可解释性等挑战,深度学习仍有望为教育带来更个性化和高效的学习体验。
43 0
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习之复杂推理与逻辑学习
基于深度学习的复杂推理与逻辑学习是当前人工智能领域中的一个前沿研究方向,旨在结合深度学习与传统逻辑推理的优势,使机器能够在处理复杂任务时具备更强的推理能力。
32 2
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习之生物启发的学习系统
基于深度学习的生物启发学习系统(Biologically Inspired Learning Systems)旨在借鉴生物大脑的结构和学习机制,设计出更高效、更灵活的人工智能系统。
18 0
|
2月前
|
机器学习/深度学习 算法 自动驾驶
深度学习之分布式智能体学习
基于深度学习的分布式智能体学习是一种针对多智能体系统的机器学习方法,旨在通过多个智能体协作、分布式决策和学习来解决复杂任务。这种方法特别适用于具有大规模数据、分散计算资源、或需要智能体彼此交互的应用场景。
140 4