写点什么

DeepMind 背后的人工智能:深度学习原理初探

  • 2014-10-11
  • 本文字数:2159 字

    阅读完需:约 7 分钟

去年 11 月,一篇名为《 Playing Atari with Deep Reinforcement Learning 》的文章被初创人工智能公司 DeepMind 的员工上传到了 arXiv 网站。两个月之后,谷歌花了 500 万欧元买下了 DeepMind 公司,而人们对这个公司的了解仅限于这篇文章。近日,Tartu 大学计算机科学系计算神经学小组的学者在 robohub 网站发表文章,阐述了他们对 DeepMind 人工智能算法的复现。

在 arXiv 发表的原始论文中,描述了一个单个的网络,它能够自我学习从而自动的玩一些老的电视游戏。它仅仅通过屏幕上面的图像和游戏中的分数是否上升下降,从而做出选择性的动作。

在训练的一开始,这个程序对游戏一点都不了解。它并不知道这个游戏的目标,是保持生存、杀死谁或者是走出一个迷宫。它对这个游戏的影响也不清楚,并不知道它的动作会对这个游戏产生什么影响,甚至不知道这个游戏中会有哪些目标物品。通过在这个游戏中尝试并且一遍一遍失败,这个系统会逐渐学会如何表现来获得比较好的分数。同时需要注意的是,这个系统对所有不同的游戏使用了同样的系统结构,程序员没有对不同程序给予这个程序任何特殊的提示,比如上、下或者开火等等。

最终结果显示,这个系统能够掌握一些游戏,并且比一些人类玩家还要玩得好。这个结果可以看作对 AGI(Artificial General Intelligence)迈近的一小步,非常吸引人。文章给出了如下的细节,从任务、机器学习基础、深度学习模型和学习过程四部分阐述了他们的工作。

一、任务

这个系统获得了某个游戏屏幕的某幅图像,如下图是从一个最简单的游戏 Breakout 中获取的一幅图片。在简单的分析之后,它已经选择了如何做出下一步。这个动作已经被执行了,并且这个系统被告知了分数是否增加了、减少了或者没有变。基于这个信息,以及已经进行了的大量的游戏,这个系统会学习如何玩从而提高游戏的分数。

二、机器学习和人工神经网络

在深入深度学习的实现过程之前,文章先介绍了机器学习和人工神经网络的概念。

机器学习的一个非常通常的任务是这样的:给出了一个目标的信息,从而能够知道它属于哪个种类。在深度学习的过程中,程序想要决定在目前游戏状态下如何进行下一步动作。机器学习算法从例子中进行学习:给出了许多的目标例子和它们的种类,学习算法从中找出了那些能够鉴定某个种类的目标特征。学习算法会产生一个模型,能够在训练集中最小化错误分类率。这个模型之后会被用来预测那个未知目标的种类。

人工神经网络 ANN(Artificial Neural Networks)是机器学习的一个算法。它是由人类的大脑结构产生的灵感。这个网络由许多节点组成,如同大脑由神经元组成,并且互相之间联系在一起,如同神经元之间通过神经突触和神经树联系在一起。对于每个神经元,都会对其应该传递的信号的情况做特殊规定。通过改变这些连接的强弱,可以使得这些网络计算更加快速。现在神经网络的结构通常由如下部分组成:

  • 神经的输入层(获得目标的描述)
  • 隐藏层(主要部分,在这些层中学习)
  • 输出层(对于每个种类都一个神经节点,分数最高的一个节点就是预测的种类)

在学习过程结束之后,新的物体就能够送入这个网络,并且能够在输出层看到每个种类的分数。

三、深度学习

在这个系统中,一个神经网络被用来期望在当前游戏状态下每种可能的动作所得到的反馈。下图给出了文章中所提到的神经网络。这个网络能够回答一个问题,比如“如果这么做会变得怎么样?”。网络的输入部分由最新的四幅游戏屏幕图像组成,这样这个网络不仅仅能够看到最后的部分,而且能够看到一些这个游戏是如何变化的。输入被经过三个后继的隐藏层,最终到输出层。

输出层对每个可能的动作都有一个节点,并且这些节点包含了所有动作可能得到的反馈。在其中,会得到最高期望分数的反馈会被用来执行下一步动作。

四、学习过程

系统通过学习过程来计算最高期望分数。确切地说,在定义了网络的结构之后,剩下唯一会变化的就只有一件事:连接之间的强弱程度。学习过程就是调整这些方式地权重,从而使得通过这个网络的训练样例获得好的反馈。

文章将这个问题当作一个优化问题,目标是获取最好的反馈。可以通过将梯度下降与激励学习方法结合起来解决。这个网络不仅仅需要最大化当前的反馈,还需要考虑到将来的动作。这一点可以通过预测估计下一步的屏幕并且分析解决。用另一种方式讲,可以使用(当前反馈减去预测反馈)作为梯度下降的误差,同时会考虑下一幅图像的预测反馈。

关于代码的更多细节,可以参考他们报告中的代码架构图:

五、总结

文章最后给出了 DeepMind 深度学习的整个流程:

  1. 构建一个网络并且随机初始化所有连接的权重
  2. 将大量的游戏情况输出到这个网络中
  3. 网络处理这些动作并且进行学习
  4. 如果这个动作是好的,奖励这个系统,否则惩罚这个系统
  5. 系统通过如上过程调整权重
  6. 在成千上万次的学习之后,超过人类的表现。

这个结果可以看做是在 AGI 方向的从传统机器学习迈出的一小步。尽管这一步可能非常小,这个系统可能都不知道或者理解它做的事情,但是这个深度学习系统的学习能力远远超过之前的系统。并且,在没有程序员做任何提示的情况下,它的解决问题的能力也更加宽广。他们的代码可以在 GitHub 主页上找到。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-10-11 02:0617083
用户头像

发布了 268 篇内容, 共 123.2 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

IoTDB 小白“踩坑”心得:入门安装部署篇

Apache IoTDB

Dragonfly 发布 v2.1.0 版本!

SOFAStack

AI 算法 后端 基础设施 分发

TypeChat全面指南:从核心概念到使用

星辰编程理财

AIGC AI编程 typechat

百度、NVIDIA、Intel……各大厂商集结,共话文心与飞桨共享生态下的大模型训推部署创新实践计划

飞桨PaddlePaddle

人工智能 百度飞桨 硬件生态 WAVE SUMMIT

PP-ChatOCR:基于文心大模型的通用图像关键信息抽取利器,开发提效 50%!

飞桨PaddlePaddle

人工智能 百度飞桨

openGauss数据库在CentOS上的安装实践

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 8 月 PK 榜

【墨菲安全实验室】Apache Traffic Server Range 标头验证不当(CVE-2023-33934)

墨菲安全

Apache 网络安全 安全

〔支付接入〕微信的 h5 支付和 jsapi 支付

极客飞兔

微信支付 支付 经验分享 H5支付 jsapi支付

聊聊低代码的本质,是应用开发的未来吗?

高端章鱼哥

低代码 应用开发 JNPF

【墨菲安全实验室】Microsoft Teams 远程代码执行漏洞 (CVE-2023-29330)

墨菲安全

安全 漏洞 网络安全、 Microsoft Teams

巧用Maya轴心操作小技巧,工作事半功倍!

3DCAT实时渲染

maya制作技巧 3D软件教程

电动汽车安全概述

DevOps和数字孪生

电动汽车 汽车安全

KeyShot 2023.2 Pro for mac(3D渲染和动画制作软件) v12.1.1.12激活版

mac

苹果mac Windows软件 KeyShot Pro 动画软件

大型集团公司如何打破“信息孤岛”问题?

优秀

打破信息孤岛 消除信息孤岛 信息孤岛

【华秋干货铺】电源PCB设计汇总

华秋电子

ISO 21434解析:汽车软件开发者的合规实践与指南

龙智—DevSecOps解决方案

汽车电子

【墨菲安全实验室】WPS Office 存在代码执行漏洞

墨菲安全

网络安全 安全 漏洞 WPS Office

嵌入式软件开发为什么需要DevOps?

DevOps和数字孪生

DevOps 嵌入式软件

【低代码预研】通过低代码平台开发应用程序

互联网工科生

软件开发 低代码 应用开发 JNPF

龙智Atlassian认证专家、Perforce技术专家将于ACT汽车电子与软件技术周带来主题演讲,分享嵌入式开发中的最佳实践与工具链构建

龙智—DevSecOps解决方案

汽车电子 ACT汽车电子与软件技术周

【墨菲安全实验室】Microsoft Exchange Server 远程代码执行漏洞(CVE-2023-38182)

墨菲安全

网络安全 安全 漏洞 Microsoft Exchange

【墨菲安全实验室】Zoom Desktop Client for Windows <5.14.5 权限升级漏洞(CVE-2023-36541)

墨菲安全

网络安全 安全 Zoom 漏洞 墨菲安全

值得收藏!堪称神器的30个插件

Finovy Cloud

插件 渲染 建模 maya 3d建模

14个前端开发者应该知道的实用网站

高端章鱼哥

前端 提高效率 前端开发工具

甭提ChatGPT了,这个新的AI助手将永远改变人们的工作方式

互联网工科生

人工智能 AI 机器人

如何在Confluence上设置到期日提醒?Confluence到期日提醒插件重要更新发布,优化表格提醒,增加屏蔽提醒功能

龙智—DevSecOps解决方案

confluence插件

强劲实力闪耀榜单,智领云连续四年入选“中国大数据50强”

智领云科技

云原生大数据平台 智领云 云原生K8s大数据平台 大数据产业生态大会

确保数据一致性:单一可信数据源(SSOT)的概念与5个应用示例

龙智—DevSecOps解决方案

ssot single source

【墨菲安全实验室】Microsoft Office Visio 远程执行代码漏洞(CVE-2023-36865)

墨菲安全

网络安全 安全 漏洞 Microsoft Office Visio

DeepMind背后的人工智能:深度学习原理初探_语言 & 开发_张天雷_InfoQ精选文章