在这篇文章中,作者将描述 17 年在机器学习领域中发生了什么有趣的重大发展, 主要是深度学习领域。在 17 年中发生了很多事情,在作者停下来进行回顾的时候,他发现了这些发展的成就是非常壮观的,下面让我们来在作者的带领下认识一下 17 年在深度学习中发展的领域的状况,这篇文章很可能会影响我们在数据科学领域未来的发展。
3.10 CycleGAN
为了应用 Pix2Pix,你需要一个包含来自不同领域的相应图片的数据集。例如在使用卡片的情况下,组装这样的数据集不是问题。但是,如果你想做一些更复杂的事情,如“变形”对象或样式化,那么原则上是找不到成对的对象。
因此,Pix2Pix 的作者决定发展他们的想法并提出了 CycleGAN,用于在不同的图像区域之间进行传输 –“不配对的图像到图像翻译”。
这个想法是教两对发生器鉴别器将图像从一个域转移到另一个域并返回,而我们需要一个循环一致性 – 在对生成器进行连续应用之后,我们应该得到一个类似于原始 L1 损失相似的图像。需要循环损失以确保生成器不仅仅只是一开始将一个域的图片转移到另一个域的图片上,并且还要防止与原始图像完全无关。
这种方法可以让你将马匹的映射成为 – > 斑马。
但是这种转换是不稳定的,通常会产生不成功的结果:
您可以在此处找到源代码。
3.11 肿瘤学中分子的发展
机器学习现在正在进入医学领域。除了识别超声波,核磁共振(MRI)和诊断疾病外,它还可用来寻找新的抗癌药物。
简而言之,在对抗性自动编码器(AAE)的帮助下,你可以学习分子的潜在表示,然后使用它来搜索新的分子。结果发现了 69 个分子,其中一半用于对抗癌症,其他的分子则具有很大的潜力。
3.12 对抗性攻击
积极探索与对抗性攻击的主题。什么是对抗攻击?例如,在 ImageNet 上训练的标准网络在向分类图像添加特殊噪声时是完全不稳定。在下面的例子中,我们看到人眼的噪声图像实际上没有变化,但模型会变得非常疯狂并且预测了一个完全不同的类。
例如,通过快速梯度符号方法(FGSM)实现稳定性:可以访问模型的参数,你可以朝着所需要的类进行一个或多个梯度步骤并更改原始图像。
[](https://link.zhihu.com/?targe…:鼓励参与者创建通用的攻击 / 防御方法,这些攻击 / 防御方法最终都是相互对抗以确定什么最佳的攻击 / 防御方法。
我们为什么要调查这些攻击?首先,如果我们想要保护我们的产品,我们可以在验证码中添加噪音,以防止垃圾邮件发送者自动识别它。其次,算法越来越多地涉及我们的生活比如:人脸识别系统和自动驾驶汽车。在这种情况下,攻击者可以使用算法的缺点。
下面是一个例子,说明特殊眼镜何时会让你欺骗面部识别系统,并“将自己当作另一个人。”因此,我们需要在训练模型时考虑到可能会存在的攻击。
这种带符号的标识也不正确的识别它们。
• 比赛组织者的一篇文章。•已经编写了用于攻击的库:cleverhans 和 foolbox.
4. 强化学习
强化学习(RL)或强化的学习也是机器学习中最有趣和积极发展的方法之一。
该方法的本质是在一个通过在获得回报的环境中进行学习的成功行为 – 就像人们在整个人生中的学习一样。
RL 主要用于游戏,机器人和系统管理(例如流量)中得到了积极的应用。
当然,每个人都听说过 AlphaGo 在围棋这种人类的游戏中胜过最优秀的专业人士。而研究人员正是使用 RL 进行训练:机器人通过自我对抗进行改进自我策略。
4.1 加化训练与不受控制的辅助任务
在过去几年中,DeepMind 已经学会了使用 DQN 来玩街机游戏并且比人类玩的更好。目前,人们正在教算法来玩像 Doom 毁灭战士这样的更复杂的游戏。
大部分注意力都集中在学习加速上,因为代理与环境交互的经验需要在现代的 GPU 上进行数小时的训练。
Deepmind 在他的博客中报到,引入了额外的损失(辅助任务),例如预测帧变化(像素控制),以便代理更好地理解动作的后果,大大加快了学习速度。
学习成果:
4.2 学习机器人
在 OpenAI 中,他们一直在积极研究人类在虚拟环境中对代理人的训练,这种实验比在现实生活更安全。
在其中一项研究中,团队表明一次性学习是可能的:一个人在 VR 中展示如何执行某项任务,这一次演示足以让算法学习它然后在真实条件下重现它。
如果和人相处这么容易就好了。:)
4.3 关于人类偏好的学习
以下是 OpenAI 和 DeepMind 在同一主题上进行工作。最重要的是,一个代理有一个任务,该算法为人提供两种可能的解决方案,并指出哪一种更好。这个过程是迭代重复的,并且从学习如何解决问题的人那里得到 900 位反馈(二进制标记)的算法
像往常一样,人类必须小心并仔细思考他正在教机器做什么。例如,评估器决定算法想要获取的对象,但事实上,他只是模拟了这个动作。
4.4 复杂环境中的运动
DeepMind 还有另一项研究。要教会机器人复杂的行为(唱、跳、…、打篮球等),甚至是与人类相似的行为,你必须在损失函数的选择上投入大量的精力,这将鼓励所期望的行为。然而,更可取的是,算法通过简单的奖励来学习复杂的行为本身。
研究人员设法实现了这一目标:他们教导代理人(身体模拟者)通过构建具有障碍的复杂环境以及对运动进展的简单奖励来执行复杂的行动。
你可以看一下这个有点搞笑的视频结果,当然打开声音的效果可能有点吓人。
最后,我将给出从 OpenAI 学习 RL 的最近才发布的算法的链接。现在你可以使用比标准 DQN 更高级的解决方案了。
5. 其他
5.1 冷却数据中心
2017 年 7 月,Google 报告称利用 DeepMind 在机器学习方面的发展,降低了数据中心的能源成本。
基于数据中心数千个传感器的信息,Google 开发人员培训了一个神经网络集合来预测 PUE(电源使用效率)和更高效的数据中心管理。这是 ML 实际应用的一个令人印象深刻的重要例子。
5.2 所有任务的同一个模型
如你所知,训练有素的模型很难从一个任务转移到另一个任务,因为每个任务都必须针对特定模型进行训练。Google Brain 在他的文章“One Model To Learn All”中向模型的普遍性迈出了一小步。
研究人员已经训练了一个模型,该模型可以执行来自不同领域(文本,语音和图像)的八个任务。例如,来自不同语言的翻译,文本解析以及图像和声音识别。
为了实现这一目标,他们构建了一个复杂的网络架构,其中包含各种模块以处理不同的输入数据并生成结果。编码器 / 解码器的模块分为三种类型:卷积,注意事项和专家门控系统(MoE)。
学习的主要成果:
- 获得了几乎完美的模型(作者没有对超参数进行微调)。
- 在不同领域之间存在知识的转移,也就是在具有大量数据的任务上,性能几乎相同。并且它更适合处理小数据(例如,数据解析)。
- 不同任务所需要的模块之间不会相互干扰,甚至有时还可以互相帮助,例如,MoE – 用于 Imagenet 任务。
5.3 在一小时内在 Imagenet 上学习
Facebook 工作人员在他们的帖子中告诉我们,他们的工程师如何能够在一小时内在 Imagenet 上实现 Resnet-50 模型。说实话,这需要一个 256 GPU 的集群(Tesla P100)。
他们使用 Gloo 和 Caffe2 进行分布式学习。为了使过程有效,需要采用大量(8192 个元素)的学习策略:梯度平均,预热阶段,特殊学习率等。
因此,当从 8 GPU 扩展到 256 GPU 时,可以实现 90%的效率。现在,Facebook 的研究人员可以更快地进行实验,而不像没有这种集群的普通人。
6. 新闻
6.1 自动驾驶汽车
自动驾驶汽车领域正在紧锣密鼓的深入发展,汽车正在积极的进行测试。但是从最近的事件中,我们可以注意到收购英特尔 MobilEye,Uber 和谷歌技术呗前雇员窃取的丑闻,以及自动驾驶汽车撞死人的新闻等等。
我要指出一件事:谷歌 Waymo 正在推出一个测试计划。谷歌是这一领域的先驱,人们认为他们的技术非常出色,因为他们的无人驾驶汽车行驶超过了 300 万英里。
至于最近发生的事件,自动驾驶汽车已被允许在美国各州行驶。
6.2 医疗保健
正如我所说,现代 ML 正开始被引入医学。例如,Google 与医疗中心合作以帮助诊断。
Deepmind 甚至建立了一个单独的部门。
2017 年,在数据科学碗(Data Science Bowl)的计划中,要举办了一场基于详细图像预测肺癌的比赛,奖金为 100W 美元。
6.3 投资
目前,与之前的 BigData 一样,ML 的投资也很大。
中国在人工智能方面投入了超过 1500 亿美元,成为该行业的全球领导者。
相比之下,百度研究公司雇佣了 1300 名员工,并且在同一个公平竞争的对手(Facebook)中雇佣了 80 人。在最近的 KDD,阿里巴巴员工谈论他们的参数服务器 KungPeng,它运行着 1000 亿个带有万亿个参数的样本,这似乎变成了一个很普通的任务。
从上面这些中,你应该可以得出自己的结论,学习机器学习永远不会太晚。在某种程度上,随着时间的推移,所有开发人员都会以这样或那样的方式使用机器学习,这将成为一种常见的技能。就像现在需要的使用数据库的能力一样。
更多精彩内容,可移步:https://www.cda.cn/?seo-segme…