速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

机器学习是统计学旧汤换新药?非也

  • 2018-07-31
  • 本文字数:3644 字

    阅读完需:约 12 分钟

最近,社交媒体上疯传一张表情包(如下图)。随着深度学习的炒作开始消退,看到这张图的人将会心一笑。“机器学习真的没什么好让人兴奋的”或者“它只是对古老统计学的改进”这类情绪越来越普遍。但问题是,这不是真的。



我知道,成为热情过度、沉迷于炒作的深度学习布道师可不是件时髦的事。那些 2013 年还把深度学习奉为神祗的机器学习专家,现在提到这个词时只是带着一丝懊恼,他们现在更倾向于对现代神经网络进行轻描淡写,以免人们仍然认为 import keras 可以解决一切问题,并认为他们在竞争中仍有拥有巨大的优势。

正如 Yann LeCun 所说的那样,深度学习作为一个流行词确有被夸大之嫌,但这种态度的转变导致了人们对人工智能的进步、未来和作用产生了不正常的怀疑。目前,关于人工智能寒冬即将到来的言论甚嚣尘上,人们预计,人工智能研究将停滞多年,就像在过去几十年中所发生的那样。



谈论人工智能寒冬将至的文章和传言 AGI 将迎来爆发的文章一样多。

然而,这篇文章的目的不是为了反驳 AI 寒冬将来的观点,也不是为了比较某个学术团体比另一个对深度学习具有更深刻的见解。相反,我是想要说明真实的情况,这一领域的发展已经超出了大型计算机和更好数据集的范畴,机器学习(以及最近在深度神经网络方面取得的成功及相关成果)代表了世界技术进步的最前沿。

机器学习!= 统计学

“说到融资,人工智能。说到招聘,机器学习。说到应用,逻辑回归。”

这篇文章的主要观点是,机器学习不只是批上美丽面纱的统计学——只是用上更大型的计算机和取了个更高级的名字,换汤不换药。之所以有这种想法,是因为在机器学习中普遍存在着统计学的概念和术语,例如回归、权重、偏差、模型等。此外,许多模型与统计函数很相似:分类模型的 softmax 输出由分对数组成,使图像分类器的训练过程成为一个逻辑回归。

虽然这种思路从某种意义上说是正确的,但认为机器学习是统计学的附属就有点扯远了。事实上,这种比较没有多大意义。统计学属于数学领域,涉及对数据的理解和解释,而机器学习是一类算法(因此它诞生于计算机科学)。在许多情况下,这些算法在帮助理解数据方面完全无用,并且仅在某些类型无法解释的预测建模中起作用。在某些情况下,例如在强化学习中,算法可能根本不使用预先存在的数据集。另外,处理图像时,把图像视为数据集(数据集中包含了作为特征的像素)的实例有一点牵强。

当然,关键不在于计算机科学家是不是比数据学家强,和所有其他研究领域一样,今天的成功要归功于各种学科的贡献,统计学和数学是其中贡献最大的一类。然而,为了正确评估机器学习方法的强大影响力和潜力,首先要消除错误的观念,即人工智能的发展只不过是基于老旧的统计学技术,只是用上了更大型的计算机和更好的数据集而已。

机器学习不需要高级统计学知识

当我刚接触机器学习时,我很幸运地上了一门深度学习技术专修课程,这是我本科计算机科学课程的一门课。我们指定的项目之一是在 TensorFlow 中实现和训练 Wasserstein GAN。



那时,我只参加了一门必修普通选修课程,然后很快就忘记了大部分内容。不用说,我的统计学技能不是很强。然而,我读懂了一篇有关生成机器学习模型的论文,并从头开始实现它,基于 MS Celebs 数据集进行训练,生成以假乱真的虚假图像。

在整个课程中,我和同学们成功地训练了用于癌组织图像分割、神经机器翻译、基于字符的文本生成和图像样式转换的模型,所有这些都采用了过去几年最先进的机器学习技术。

然而,如果你问我,或者问班上的大多数学生,如何计算人口的方差,或者如何定义边际概率,恐怕没人能答得上来。

这似乎与人工智能仅仅是对古老统计学技术的“品牌重塑”的观点有点出入。

确实,在深度学习课程中,ML 专家可能比 CS 本科生具有更坚实的统计学基础。一般而言,信息理论需要对数据和概率有很强的理解,我当然会建议所有有兴趣成为数据科学家或机器学习工程师的人去培养对统计学概念的深刻理解。但问题仍然存在:如果机器学习是统计学的附属,那么几乎没有统计学背景的人如何能够做到深入理解先进的机器学习概念的呢?

我们还应该承认,相比大多数神经网络技术,许多机器学习算法要求更好的统计学和概率学背景,但这些方法也通常被称为统计机器学习或统计学习,似乎是有意将它们与常规机器学习区分开来。此外,近年来大多数被大肆宣传的机器学习创新均属于神经网络领域,因此这点无关紧要。

当然,我们不能孤立地看机器学习本身。同样,现实中,所有希望从事机器学习工作的人都可能要处理各种类型的数据问题,因此也需要对统计学有很强的理解。但这并不意味着它们是一回事。

机器学习 = 表示 + 评估 + 优化

为了公平起见,我和同学们在算法、计算复杂性、优化方法、微积分、线性代数甚至概率学方面都有很坚实的基础。我认为,在处理相关问题时,所有这些都比高级统计学知识更有用。

机器学习是一类算法,它不断迭代“学习”某个函数的近似。华盛顿大学计算机科学教授 Pedro Domingos 提出了构成机器学习算法的三个组成部分:表示、评估和优化。

表示是将输入从一个空间转换到另一个更容易被理解的空间,可以想想卷积神经网络。原始像素对于区分狗和猫是没有用的,因此我们将它们转换为可用于解释和评估的更有用的表示(例如,softmax 输出的对分数)。

评估基本上就是损失函数。你的算法如何有效地将数据转换为更有用的空间?你的 softmax 输出与 one-hot 编码标签(分类)有多接近?你是否正确预测了文本序列中的下一个单词(文本 RNN)?你的潜在分布与单位高斯(VAE)有何不同?这些问题会告诉你表示功能的运行情况,更重要的是,它们定义了算法将要学习的内容。

优化是这个拼图的最后一部分。有了评估组件后,你可以优化表示函数以改进评估指标。在神经网络中,这通常意味着使用一些随机梯度下降的变量,根据某些定义的损失函数更新网络的权重和偏差。就这样,你拥有了世界上最好的图像分类器。

在训练图像分类器时,除了定义合理的损失函数之外,通过学习得到的表示函数是否具有逻辑输出是无关紧要的。借用逻辑回归这样的统计术语确实让我们在讨论模型空间时有了可用的词汇,但这并没有将它们从优化问题变成数据理解问题。

旁白:人工智能这个词很愚蠢。 AI 问题只是计算机不擅长解决的问题。在 19 世纪,机械计算器被认为是智能的。现在这个术语与深度学习密切相关,我们开始使用通用人工智能(AGI)来指代比高级模式匹配机制更智能的东西。然而,我们通用智能仍然没有一个统一的定义或理解。AI 所做的唯一一件事就是激发人们对所谓的“奇点”或类似终结者的杀手机器人产生恐惧。我希望我们可以停止使用这个空洞耸人听闻的术语来指代真正的科学技术。

深度学习技术

接下来,我们来推翻所谓的深度学习统计学性质几乎就是深度神经网络的所有内在。当然,完全连接的节点由权重和偏差组成,但卷积层呢?整流器激活呢?批量标准化呢?残留层呢?丢弃呢?记忆和注意机制呢?

这些创新对于高性能深度网络的发展至关重要,但它们并没有与传统的统计技术有什么联系(可能因为它们根本不是统计技术)。如果你不相信,试着告诉统计学家你的模型过度拟合了,或问他们随机丢弃模型的 1 亿个参数中的一半是不是个好主意。

更不用说模型的可解释性了。

回归超过 1 亿个变量——没问题吧?

我还要指出深度网络与传统统计模型之间的差异。深度神经网络是巨大的,例如,VGG-16 ConvNet 架构有大约 1.38 亿个参数。你认为你的学术顾问会对一个提出想要执行超过 1 亿个变量的多重回归的学生做出什么回应?这个想法很荒谬。这是因为训练 VGG-16 不是多重回归,而是机器学习。

新的前沿

在过去的几年里,你可能阅读了无数的论文、帖子和文章,了解到机器学习现在可以做很多很酷的事情,所以我不必花太多时间在这上面。然而,我要提醒你,深度学习不仅产生了更多的技术,它还让我们能够解决一些全新的问题。



在 2012 年之前,解决涉及非结构化和半结构化数据的问题是一个挑战。可训练的 CNN 和 LSTM 就是这方面的巨大飞跃。这在计算机视觉、自然语言处理、语音转录等领域取得了相当大的进步,并且使人脸识别、自动驾驶车辆和会话 AI 等技术得到了巨大的改进。

确实,大多数机器学习算法最终都涉及模型和数据拟合——从这个角度来看,它是一个统计过程。航天飞机只不过是一个带翅膀的飞行器,这也是事实,但我们并没有看到有人发表情包嘲笑美国宇航局 20 世纪太空探索的事迹,将其视为对飞机的过度“品牌重塑”。

与太空探索一样,深度学习的出现并没有解决世界上所有的问题。在许多领域仍有很多鸿沟需要跨越,特别是在“人工智能”领域。换句话说,它帮助我们提高了解决复杂非结构化数据问题的能力。机器学习仍然代表着世界技术进步和创新的最前沿。它不只是墙上透着亮光的裂缝,终有一天,它可能会破墙而出!

原文链接: https://towardsdatascience.com/no-machine-learning-is-not-just-glorified-statistics-26d3952234e3

感谢无明对本文的审校。

2018-07-31 18:152387
用户头像

发布了 42 篇内容, 共 14.6 次阅读, 收获喜欢 53 次。

关注

评论 1 条评论

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

成为 DevOps 工程师需要具备哪些能力?

SoFlu软件机器人

想做好分布式架构?这个知识点一定要理解透!

博文视点Broadview

看完微信抢红包算法你就明白,为啥你不是手气最佳

华为云开发者联盟

算法 微信红包 手气最佳 剩余金额随机法 割线法

行业分析| 音视频呼叫邀请适用于多领域

anyRTC开发者

音视频 WebRTC 语音通话 视频通话 呼叫邀请

Spark的job、stage和task的机制论述

编程江湖

TDengine 在智慧矿山系统中的应用

TDengine

华为云GaussDB专家走进课堂,跟莘莘学子聊聊数据库

华为云开发者联盟

数据库 人才培养 华为云 GaussDB 华为云数据库

NetCore性能排查

神农写代码

安利一个小众但实用的导航网站(推荐收藏)

小炮

导航网站

Linux常用命令分享:有手就会,但能解决95%以上的问题

优麒麟

Linux 开源 计算机 优麒麟

助力数字经济 明源云助力不动产行业打造数字新引擎

科技热闻

给工厂做开发,竟然喝着咖啡听“交响”?

阿里云云效

云计算 阿里云 DevOps 研发 研发提效

FabEdge V0.5.0 新特性:支持跨集群服务访问

BoCloud博云

开源 边缘计算 cncf

Video.js 使用教程 - 手把手教你基于 Vue 搭建 HTML 5 视频播放器

蒋川

Vue video.js

【躲过裁员,成功上岸】发现小公司有不好的苗头,赶紧学习!

小傅哥

面试 小傅哥 中间件 项目

vivo 商品中台的可视化微前端实践

vivo互联网技术

可视化 前端特效

web前端技术Mongoose详解

编程江湖

【Git教程】Git最全使用指南

阿里云云效

git 云计算 阿里云 DevOps Codeup

摩尔定律的现在及未来

科技新消息

CPU的“花招”已耍完?无指令集架构颠覆旧套路

OneFlow

人工智能 机器学习 深度学习 英伟达 芯片

在 Rainbond 中一键安装高可用 Nacos 集群

北京好雨科技有限公司

开源 Kubernetes nacos PaaS rainbond

java培训-Redis 原理与知识总结分享 不愁面试

@零度

redis JAVA开发

提高企业产品交付效率系列(1)—— 企业应用一键安装和升级

北京好雨科技有限公司

Kubernetes PaaS rainbond

提效24.3%!看OA预算管理系统的低代码开发实践

鲸品堂

低代码开发

四大功能!带你初识 Fabric | 容器网络系列第2期

BoCloud博云

云原生 容器网络方案

Echarts 折线图完全配置指南 - 手把手教你设置 Echarts 折线图详细教程

蒋川

Vue eCharts

AppCube快速开发问卷调查应用在WeLink发布上线

DS小龙哥

3月月更

TDengine 和 InfluxDB 查询性能对比测试报告

TDengine

数据库 tdengine

Apache Impala架构解析及与Hive、SparkSQL的性能比较

编程江湖

OpenHarmony标准设备应用开发(一)——HelloWorld

OpenHarmony开发者

Hello World ! OpenHarmony 标准设备

还搞不明白,一次性给你总结好网络层概念

华为云开发者联盟

网络协议 IP 网络层 组网

机器学习是统计学旧汤换新药?非也_语言 & 开发_Joe Davison_InfoQ精选文章