机器学习不仅仅是美化的统计学

机器学习 =「新瓶装旧酒」的数据统计?No!

机器之心翻译

参与:高璇、王淑婷、张倩作者:Joe Davison

最近,关于深度学习和人工智能的一个梗在社交媒体上广为流传,认为二者只是墙上一道镶了崭新边框的裂缝,暗讽机器学习只是重新包装过的统计学,本质上是「新瓶装旧酒」。然而事实真的是这样吗?本文对这种看法提出了异议,认为机器学习 ≠ 数据统计,深度学习为我们处理复杂的非结构化数据问题做出了重大贡献,而人工智能应该得到其应得的赞赏。

img

随着深度学习的热度开始消退,这个梗最近开始在社交媒体上广为流传,引起了互联网上众人的讥笑。机器学习没什么好激动的,它只是对统计技术的一种补充 —— 这种观点越来越普遍;但问题是这个观点并不正确。

我明白,成为一个极度狂热的深度学习传播者并不时尚。哪怕是 2013 年试图让所有人都知道深度学习的机器学习专家,现在再提起这个术语也只有失望,他们现在更倾向于弱化现代神经网络的力量,唯恐人们将他们与还认为「import keras」是万金油的人混为一谈。而他们自认为与后者相比,自己还是相当有优势的。

虽然正如 Yann LeCun 所说,深度学习已经不再是一个时髦的词,但这种矫枉过正的态度已经对人工智能的进步、未来和实用性产生了不良的影响。这一点在关于人工智能寒冬的讨论中体现得尤为明显,在这个寒潮里,人工智能被预言将会像几十年前一样停滞多年。

img

然而这篇文章并不是对人工智能进入寒冬表示质疑,也不是想说深度学习的进步更应归功于哪个学术团队;相反,它只是想说,人工智能应该得到其应得的赞赏;它发展的水平已经超越超级计算机和更优的数据集;机器学习最近也在深度神经网络和相关工作中取得了巨大成功,代表了世界上最先进的技术水平。

机器学习≠数据统计

「融资的时候,我们讲人工智能 ;找工作的时候,我们说深度学习;但做项目的时候,我们讲 logistic 回归。」

—— 推特上每个人都这么说

这篇文章的主题是,机器学习不仅是对数据统计的再包装 —— 这一领域有更大型的计算机和更好听的名字。这个概念来源于统计学的概念和术语,这些概念和术语在机器学习中非常常见,像回归、权重、偏置、模型等等。此外,很多模型近似统计函数:分类模型的 softmax 输出由 logits 组成,使得图像分类器的训练过程成为 logistic 回归。

尽管这种思路在技术层面是对的,但将机器学习作为一个整体看作只是统计学的一个分支还为时过早。这种比较没有什么意义。统计学是处理数据和解释数据的数学领域。机器学习只不过是一种计算算法(诞生于计算机科学)。很多情况下,这些算法在帮助理解数据方面毫无用处,只能帮助某些类型的不可理解的预测建模。例如在强化学习中,算法可能都不会使用已有的数据集。另外,在图像处理中,将图像视为以像素为特征的数据集,从一开始就有点牵强。

问题的关键当然不在于这个荣誉应该属于计算科学家还是属于统计学家;就像其它领域一样,能取得今天的成功是各个学术学科的功劳,其中当然包括统计学和数学。然而,为了正确评估机器学习方法的巨大影响力和潜力,有必要先打破这个错误的观念:现代人工智能的发展,无非就是古老的统计技术拥有了更强大的计算机和更好的数据集。

机器学习无需高深的统计学知识

先听我说,入门机器学习的时候,我幸运地选了一门非常棒的课程,是专门讲深度学习的。这也是我本科计算机课程的一部分。我们要完成的一个项目是在 TensorFlow 上实现和训练 Wasserstein GAN。

当时我只修了一门必修的统计学入门课,但我很快就把大部分内容都忘了。不用说,我的统计能力并不强。然而,我却能读懂一篇最先进的生成机器学习模型的论文,并且从头实现了它 —— 通过在 MS Celebs 数据集上训练,生成了能以假乱真的虚拟图像。

在整个课程中,我和同学们成功地训练了针对癌症组织的图像分割、神经机器翻译、基于字符的文本生成以及图像转换的模型,这些模型都采用了近几年刚刚发明的尖端机器学习技术。

然而,你要是问我或者我的同学如何计算一组数据的方差,或者定义边缘概率,我们应该会交个白卷。

这似乎与人工智能只是对古老统计技术的重新包装的观点有些矛盾。

的确,在深度学习课程中,机器学习专家的统计基础可能比计算机专业的本科生更强。一般来说,信息论需要对数据和概率有很深的理解,所以我建议,所有想成为数据科学家或机器学习工程师的人最好能够对统计概念有直观的理解。但问题是:如果机器学习只是统计学的分支,那么没有统计学背景的人怎么能对最前沿的机器学习概念有深入的理解呢?

还应该承认,许多机器学习算法对统计学与概率学背景知识的要求比多数神经网络技术要高,但这些方法通常也被称为统计机器学习或者统计学习,好像是想与常规的统计类别区别开。并且,近年来大多数机器学习中的的炒作性创新都来自神经网络领域,所以这点无关紧要。

当然,机器学习并不是遗世独立的。在现实世界中,任何想要做机器学习的人都可能在研究许多类别的数据问题,因此也需要对统计学科有较深的理解。这并不是说机器学习从不使用或构建统计概念,这说的不是一回事。

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

客观来说,我和我的同学在算法、计算复杂度、优化策略、微积分、线性代数甚至概率论方面基础都很好。我想说的是,比起高级统计学知识,这些与我们正在解决的问题更加相关。

机器学习是一类反复「学习」某类函数近似值的计算算法。华盛顿大学计算科学教授 Pedro Domingos 曾列出构成机器学习算法的三大组成部分:表示、评估和优化。

表示涉及从一个空间到另一个更有效空间的输入传输,解释起来更加容易。请从卷积神经网络的视角考虑这个问题。原始像素在区分猫和狗上是没有用的,所以我们将其转换为更有效的表达形式(如 softmax 输出中的 logits),这样就可以解释和评估了。

评估实际上就是损失函数。你的算法如何有效地将数据转换到另一个更有效的空间上去?softmax 输出和 one-hot 编码标签(分类)到底有多么相似?你能否正确预测展开的文本序列(文本 RNN)的下一个单词?隐藏分布与单位高斯分布的偏离有多远(VAE)?这些问题都告诉你表达函数性能如何;更重要的是,它们定义了它需要学习做什么。

优化是整个拼图的最后一块。一旦有了评估部分,你就可以优化表达函数,以改进评估标准。在神经网络中,这意味着使用随机梯度下降的一些变体来根据给定的损失函数更新网络的权重和偏置。你有世界上最好的图像分类器(起码 2012 年的 Geoffrey Hinton 有)。

在训练图像分类器时,除了定义适当的损失函数外,学习的表达函数是否有逻辑输出无关紧要。像 logistic 回归这样的统计学术语在我们讨论模型空间时确实也有些作用,但在优化问题和数据理解问题上都没有被重新定义。

附言:人工智能这个词挺蠢的。人工智能问题只是计算机目前还不善解决的一个问题。在十九世纪,机械计算机也曾被认为是智能的。现在这个术语与深度学习联系如此紧密,我们就开始说通用人工智能(AGI)是比先进的模式匹配机制更智能的东西。然而,我们对通用智能还没有一致的定义或理解。AI 所做的唯一一件事就是激发人们对所谓的「奇点」或类似终结者的杀手机器人的恐惧。我希望我们可以停止使用这样一个空洞的、耸人听闻的术语来替代真正的技术。

深度学习的技术

几乎所有深度神经网络的内部工作都忽略了深度学习的统计特性。全连接点由权重和偏置组成,但卷积层呢?整流激活层?批标准化?残差层?Dropout?存储和注意力机制?

这些创新对于高性能深度网络的发展至关重要,但它们与传统的统计技术并不完全一致(可能因为它们根本不是统计技术)。如果你不相信我,可以试着告诉统计学家你的模型过拟合了,然后问他们把模型的 1 亿个参数砍掉一半是否行得通。

我们甚至不讨论模型的可解释性。

超过一亿个变量的回归 —— 没问题吗?

深度网络和传统统计模型在规模上是有差异的。深度神经网络是巨大的。例如,卷积网络 VGG-16 大约有 1.38 亿个参数。你觉得你的普通学术导师会如何回应一个想要对 1 亿多个变量进行多元回归的学生?这个想法很荒谬,因为训练 VGG-16 不是多元回归,而是机器学习问题。

新前沿

在过去的几年里,你可能看了无数宣扬机器学习可以完成很酷的任务的论文、帖子、文章,所以我不再赘述了。然而,我要提醒你,深度学习不仅比以前的技术更重要,它还能帮助我们解决一系列全新的问题。

在 2012 年之前,涉及非结构化和半结构化数据的问题充其量只是一项挑战。仅可训练的 CNN 和 LSTM 就在这方面实现了巨大飞跃。在计算机视觉、自然语言处理、语音转录等领域都取得了相当大的进步,并且在人脸识别、自动驾驶和 AI 对话等技术方面有了很大的提高。

确实,大多数机器学习算法最终都要将模型拟合到数据 —— 从这个角度看,这是个统计过程。航天飞机也不过是一个带翅膀的飞行器,但我们并没有看到有人嘲笑美国宇航局在 20 世纪探索太空,也没有人认为这是对飞机进行重新包装而已。

与太空探索一样,深度学习的出现并没有解决世界上所有的问题。在许多领域,特别是在「人工智能」领域,仍有很多的事情需要我们去做。也就是说,它为我们处理复杂的非结构化数据问题做出了重大贡献。机器学习会继续引领世界技术进步和创新的前沿,而不仅仅是墙上一道镶了崭新边框的裂缝。


via:


大视觉语言模型基准数据集 ReForm-Eval:新瓶装旧酒,给旧有的基准数据集换个形式就能用来评估新的大视觉语言模型

机器之心 FudanDISC 转载

概要

复旦 DISC 实验室推出了 ReForm-Eval,一个用于综合评估大视觉语言模型的基准数据集。ReForm-Eval 通过对已有的、不同任务形式的多模态基准数据集进行重构,构建了一个具有统一且适用于大模型评测形式的基准数据集。所构建的 ReForm-Eval 具有如下特点:

  1. 构建了横跨 8 个评估维度,并为每个维度提供足量的评测数据(平均每个维度 4000 余条);
  2. 具有统一的评测问题形式(包括单选题和文本生成问题);
  3. 方便易用,评测方法可靠高效,且无需依赖 ChatGPT 等外部服务;
  4. 高效地利用了现存的数据资源,无需额外的人工标注,并且可以进一步拓展到更多数据集上。

我们的基准数据集与评估框架已经开源,具体使用可以参考本推送第 4 节。第 1 节介绍了 ReForm-Eval 的构建动机;第 2 节介绍了 ReForm-Eval 的构建、评估方法;第 3 节介绍了我们基于 ReForm-Eval 进行的定量分析得到的初步发现;请感兴趣的读者阅读,本文未尽之处请参阅我们的论文。

论文链接:https://arxiv.org/abs/2310.02569

作者信息:

图片01 引言

构建开源的类 GPT-4 的 “大视觉语言模型” 是最近多模态领域的热潮。目前的大模型,包括 BLIP-2,MiniGPT4,LLaVA,Lynx 等等,已经展现了令人惊喜的能力。这些模型可以回答图片相关的问题,做 OCR,理解网上的梗图,但是也会因为幻觉(object hallucination)胡言乱语。

我们不禁好奇,那么这些模型究竟靠谱吗,哪个模型更好呢?然而目前却很少有定量的分析来评估和对比这些大模型,究其原因在于目前几乎没有适合评估大视觉语言模型的基准数据集。

那为什么之前的多模态数据集无法拿来评估新一代的模型呢?可以跟着我们在图 1 上半部分中一探究竟:

(1)首先看左上部分,目前多数的基准数据集都是为特定任务设计的,进一步就要求特定的输入 - 输出形式来辅助完成模型的评估,比如常用的问答数据集 VQA 2 就要求词 / 短语级别的简短输出;视觉蕴含任务则是 “蕴含、矛盾、中立” 关系的三分类任务;物体计数任务则只给出了数字形式的标签。

(2)然而以 LLM 为基座的大视觉语言模型非常灵活,倾向于输出完整且详细的句子(右上部分),对于第一个问题,虽然输出包括了正确答案,但是 VQA v2 要求答案完全一致(EM,exactly match);对于第二个问题,模型的理解正确,却没有用特定的词进行表达;对于第三个问题,模型错误输出了信息,但是数字部分却正好蒙对。

总的来说,旧有的基准数据集里任务特定的形式,与新一代的大模型的自由形式的文本输出存在着差异,但这是否意味着我们必须构建新的基准数据集来评估模型呢?

图片

图 1:旧有基准数据集和 ReForm-Eval 的区别。中括号内表示评估方法,红色、绿色分别代表错误和正确的评估结果

我们的答案是否定的,既然现在的大模型无法适应于旧的基准数据集,那么为什么不把旧的数据集重构成适合大模型评估的问题形式呢。参考文本 LLM 的评估基准中常用的问题形式,我们主要考虑了两种形式:文本生成问题和单选题,前者则主要应用于 OCR、图片描述这样严格需求文本生成的场景,后者则适用于重构其余的数据集。图 1 下半部分展示了几个重构成单选题的例子,进一步可以看出统一化的问题形式也方便进行统一、公平的评估。

基于重构的方法下,我们推出了一个统一化的基准数据集,ReForm-Eval。通过高效的利用现有的数据集资源,不需要额外的人工标注,就能在多种能力维度都提供足量的评估数据。

02 ReForm-Eval 介绍

图片

图 2:ReForm-Eval 中的评估维度和对应的任务

评估维度与构建方法

为了能解决用户提出的多样化问题,LVLM 需要具有多样化的能力。ReForm-Eval 为了能对模型进行综合的评估,参考图 2,我们考虑了 2 大类,8 小类的能力维度,每个能力维度下通过不同任务进行评估,对于每个任务,我们重构了该任务下的多个数据集作为评测的数据。

虽然任务多样,但是 ReForm-Eval 将对应的数据重构成了统一的问题形式:

  1. 特定场景下文本生成任务:
    a. OCR 类任务:用于评估场景文本识别能力,要求模型检测出图片中完全一致的目标词;
  2. b. 描述任务:要求模型对视觉内容进行简短的描述
  3. 单选题:利用样本的正确答案标签作为正确选项,我们采取不同方法来根据原有基准数据集的形式来高效地构建负选项:
    a. 分类任务:如 ImageNet,我们通过 WordNet 等方式构建了候选类别间的关系,并基于此选择与样本标签相近的类别作为负选项,若分类类别较少,则使用所有的类别作为选项;
    b. 开放问答任务:如 VQA 2.0,因为原有数据集中常出现的答案可能与正确答案相关性较低,我们通过 ChatGPT 的帮助从问题 + 正确答案里产生相关却不等价的负选项;
    c. 其余特定形式的任务:主要通过适合该任务需求的策略进行负选项构建,比如图文匹配中的负选项来自数据集中用于描述其他图片的文本,并根据与正确答案的相似度进行排序选取困难的负选项;

每个任务相关的数据集和具体构建细节请参见我们的论文。

评估方法

ReForm-Eval 中统一的问题形式使得我们可以通过统一的评估方法,来对来自数据集的不同样本上模型的输出进行一致的评估。

  1. 对于文本生成任务的评估:我们根据具体的场景设计了不同的评估方法.

a. OCR 任务:

  • 评估指标:词级别的准确率(图片中的正确词完整出现在模型输出文本中的比例)

  • 评估方法:自由式文本生成,通过设计 prompt 引导模型检测目标文本;

    b. 视觉描述任务:

  • 评估指标:CIDEr

  • 评估方法:自由式文本生成,通过设计 prompt 要求简短的输出,并额外基于对应数据集的特点限制模型生成文本最大长度

  • 对于单选题的评估:

  • 评估指标:准确率,检测模型输出中的选项标记,比如 “(A)” 来判断模型的输出类别

  • 评估方法:我们发现很多模型无法遵循单选题的指令,无法正确输出特定格式的选项,我们通过两种方式进行辅助评估:
    a. 黑盒方法(Generation Evaluation):通过仅文本的 in-context sample 来引导模型按期望的格式输出,例子如下
    图片

其中红色部分为提供的 in-context sample,需要注意该样本不提供图片相关的信息,仅提供输出结构的引导,实验过程中我们发现该策略非常有效,能引导模型在多数情况下输出期望的格式

b. 白盒方法 (Likelihood Evaluation):直接计算模型在给定图片、问 题下对于不同选项的生成概率,选择最高的作为模型的选择

图片

其中 v,q,c 分别为图片,问题和候选答案,P 是目标大模型预测的生成概率(自回归式)。

  1. 考虑稳定性的评估方法:因为大模型对于输入的文本非常敏感,所以 ReForm-Eval 考虑了评估中的不稳定性,并进行了稳定性的度量

a. 重复测试:对于同一个任务,ReForm-Eval 提供了不同的问题模板,对于每个样本,将会进行 N 次测试,每次使用不同的模板,如果是选择题还会打乱选项的顺序,使用不同的选项记号,取多次测试的平均值作为正确率;

b. 不稳定性度量:对于单选题,取 N 次实验中对于预测答案分布的熵作为不稳定性的度量;对于文本生成任务,因为无法度量输出的分布,所以无法直接进行度量。

03 定量分析与发现

我们评估了包括 BLIP-2,LLaVA,MiniGPT-4,Lynx 等等一系列 13 个方法训练得到的 16 个模型,并进行了相关的分析,具体的表现与分析请参考我们的论文,以下为读者总结了一些我们初步的发现:

图片

  1. 对于基座模型的选择(Figure 3):

a. 对于语言模型的选择,需要考虑选择本身具有一定指令遵循能力的基座,如 FlanT5,Vicuna,LLaMA2-Chat

b. 对于视觉编码器的选择,基于 CLIP,EVA-CLIP 的 ViT 是普遍且较优的选择,越大的 ViT 也能为大视觉语言模型提供更好的视觉表示,进一步需要根据不同的视觉模型选择一个合适的连接模块(如 q-former,linear 等);

图片

  1. 训练数据方面(Figure 4):

a.预训练数据:质量是非常重要的,表现好的 LVLM 普遍使用高质量的人工标注数据集 COCO;如果需要在数据数量的进一步扩展,直接使用质量较低的 LAION 效果并不好,使用 BLIP 中重新为图片生成的字幕(BLIPCapFilt 数据集)会是更有效率的选择,这很可能是 BLIP-2,Lynx,BLIVA 成功的原因;

b.指令微调数据集的丰富程度是最重要的,指令微调的数据集数量越多,模型的泛化能力和表现越强,然而目前很多模型都只在有限的数据集上进行了指令微调。

图片

  1. 指令遵循能力方面(Table 3 和 Figure 5):

a.目前的 LVLMs 指令遵循能力有限,但通过黑盒方法里的in-context 样本能有效地提供结构信息引导模型以期望的形式进行输出,是当下帮助完成 LVLM 评估的有效解决方案;

b.指令遵循能力主要与模型使用的语言基座相关,基于 FlanT5,Vicuna,LLaMA2-Chat 的模型遵循能力会比基于 llama 的模型较好;

c. 与此同时,全参微调语言基座反而会损害模型的这方面能力(LoRA 微调则不会);

d. 很多模型,比如 BLIVA,Lynx只有在白盒测试方法下才体现出其有效性。说明虽然黑盒方法下很多模型可以成功输出选项,但是模型因为对与选择题理解不够,无法将内部的知识输出到文本中,需要白盒方法作为额外的辅助;

图片

  1. 模型都存在一定的不稳定性(Table 23):

a. 对于输入的 prompt 中较小的改变敏感,尤其是选项的顺序,说明整体上模型对于选择题指令的理解有限

b.不同模型存在一定程度的对于选项的偏好(具体请参考论文中的 Figure 10);

c.基于白盒方法的度量的不稳定性较小,因为其直接评估了模型内部的建模概率,且不需要生成时的采样。

04 使用 ReForm-Eval

ReForm-Eval 的数据以及评估框架已经开源,请参考 https://github.com/FudanDISC/ReForm-Eval/。

这里我们给出关于具体使用方法的简单介绍,我们为用户提供了两种主要的使用方法:

  1. 用户将需要评测的模型迁移到 ReForm-Eval 适配的 interface 形式,基于 ReFrom-Eval 的框架进行评测:

a. 用户可以参考 GitHub 中 Create Your Own Model Interface 一节,通过将新的模型推理接口迁移到 ReForm-Eval 中的 interface 类形式,提供 generation /likelihood evaluation 的接口,并提供正确的读取方式(用户还需注意提供 preprocessor 方法,来将评测数据处理成模型需要的文本输入形式);

b. 构建完成后直接调用评估入口 run_eval.py,修改其中的模型参数来调用新的模型接口即可完成对新模型的评估,ReForm-Eval 支持多卡、半精度评测,输出的结果以及指标会分别存储在 json,log 文件中;

  1. ReForm-Eval 仅提供 dataset 和 evaluate 接口,用户通过自己的模型接口进行推理:

a. 通过 ReForm-Eval 提供的 build.load_reform_dataset 的接口获取 ReForm-Eval 评测的数据集,读取到的数据将以字典的形式提供给用户(需要注意用户需要自己实现或使用 ReForm-Eval 中的 Preprocessor 类功能来讲字典里的结构数据处理成模型需要的文本输入形式);

b. 用户使用自己的模型推理接口对读取到的数据进行推理,并将模型的预测写入 “prediction” 字段,将完整的结果输出到 json 文件中;

c. 使用 ReForm-Eval 中提供的评估接口 run_loader_eval.py 对上一步输出的 json 文件进行评估;

上述描述未尽之处,请参见 GitHub 中的 Getting start 部分的 pipeline 节。

用户基于上述流程,通过修改 data 相关的参数就能完成对多个数据集的评估,所有 61 个数据集对应的参数请参考 GitHub 中的 Data Usage 部分。

ReForm-Eval 默认通过 huggingface 来提供数据的自动下载和读取,不需要手动进行下载,如果在 huggingface 下载中遇到问题,也可以通过手动下载等方式来获取数据。

如果您在使用过程中遇到困难,请务必通过 Github Issue 告知我们,或者邮件联系 yewang22@m.fudan.edu.cn。

  • 封面图生成自 DALL・E 3,提示词 “A tree grows from a withered seed in ice, in the new era, digital art”

via:

  • 大视觉语言模型基准数据集 ReForm-Eval:新瓶装旧酒,给旧有的基准数据集换个形式就能用来评估新的大视觉语言模型 | 机器之心 2023/10/20 10:59

    https://www.jiqizhixin.com/articles/2023-10-20

  • 16
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值