人工智能模型组合学习的理论和实验实践
组合学习,即掌握将基本概念结合起来构建更复杂概念的能力,对人类认知至关重要,特别是在人类语言理解和视觉感知方面。这一概念与在未观察到的情况下推广的能力紧密相关。尽管它在智能中扮演着核心角色,但缺乏系统化的理论及实验研究方法,使得分析计算模型的组合学习能力变得困难。
本文将对组合学习的各个方面进行全面的调查,包括:
- 认知方面:探讨认知科学和语言学中定义的组合学习任务,并将其与现有数据集联系起来。
- 计算模型:概述旨在解决组合学习问题的各种计算模型,包括基本神经网络模型、大型语言模型和定制架构(包括神经符号模型)。
- 评估范式:介绍理论和实验两种评估方法,以评估模型的组合学习能力。
1 组合学习五个主要的组合性度量标准
组合性是整体泛化能力的一个重要方面。认知科学和语言学文献已经确定了定义组合性的任务的广泛分类,这些任务可以用来评估模型的组合推理能力。人类自然语言的基础在于组合性。一个常用的任务分类,定义了五个主要的组合性度量标准:系统性(Systematicity)、生成性(Productivity)、替代性(Substitutivity)、局部性(Localism)和过度泛化(Overgeneralization)。
1.1 系统性组合 (Systematicity Composition)
系统性是评估架构性能时最常用的组合性概念之一。它被定义为系统地重新组合已知部分和规则的能力。在评估模型的组合推理能力时,将已知元素句法组合成新的或“未见过”的表达式的能力是一个重要的测试。这也被称为基于分布的组合性评估,其中定义了两个原则:一是确保原子的分布在训练集和测试集中相似,另一个是确保复合物的分布在训练集和测试集中不同。
1.1.1 任务示例
- 将不同的形容词和名词组合成新的名词短语,例如,将“高”和“大”组合成“高大”。
- 将不同的动词和名词组合成新的动词短语,例如,将“吃”和“苹果”组合成“吃苹果”。
1.1.2 数据集:CREPE, SCAN, gSCAN, PCFG SET, COGS
1.2 生成性/长度泛化 (Productivity/Length Generalization)
另一种常用的组合性测试是长度泛化或生成性,模型在比训练数据更长的表达式或序列上的性能被测试。
1.2.1 任务示例
- 理解并操作包含多个嵌套条件的逻辑表达式,例如,“如果A且B,则C;否则,D”。
- 理解并操作包含多个步骤的程序,例如,编写一个程序来计算阶乘。
1.2.2 数据集:CREPE, PCFG SET, CFQ, COGS
1.3 替代性/同义性 (Substitutivity/Synonymity)
同义性是评估能够理解并操作表达式中同义词的使用。
1.3.1 任务示例
- 将包含同义词的表达式翻译成其他语言,例如,将“我喜欢吃水果”翻译成“我喜欢吃苹果”。
- 理解并操作包含同义词的句子,例如,“我喜欢吃水果,尤其是苹果”。
1.3.2 数据集:PCFG SET
1.4 局部性 (Localism)
组合性的另一个细微差别是全局与局部组合的概念。根据组合性原则,组合运算符的局部性可以变化。复杂表达式的含义可以仅依赖于其直接部分的含义(局部组合),或依赖于上下文的全局结构。局部性可以通过分析模型赋予独立复合物的含义与当该复合物是更大表达式的一部分时的含义来测试。
1.4.1 任务示例
- 理解并操作包含局部和全局组合关系的句子,例如,“我喜欢吃水果,尤其是苹果”。
- 理解并操作包含指代关系的句子,例如,“他喜欢吃水果,尤其是苹果”。
1.4.2 数据集:PCFG SET
1.5 泛化过度 (Overgeneralization)
过度泛化,评估模型更倾向于选择例外而非规则的程度。
1.5.1 任务示例
理解并操作包含规则例外情况的句子,例如,“狗是动物,但不是所有动物都是狗”。
理解并操作包含反例的句子,例如,“苹果是水果,但不是所有水果都是苹果”。
1.5.2 数据集:PCFG SET
2 抽象任务和数据集
2.1 系统性组合
- CREPE:这是一个合成数据集,用于评估模型在描述图像方面的组合学习能力。主要任务设置是,给定一张图片,模型需要从多个给定选项中识别出合适的文本标题。这种系统性挑战测试了模型是否能够在训练期间系统地生成新的组合,这些组合在训练期间未曾观察到,例如“在平底锅上的可丽饼”(Crepe on a skillet),尽管在不同的上下文中分别观察到了可丽饼和平底锅。
- SCAN:这是一个导航任务数据集,用于评估模型在理解自然语言指令方面的组合学习能力。模型需要根据指令在二维网格世界中导航。
- gSCAN:这是一个基于SCAN的地面数据集,用于评估模型在理解自然语言指令方面的组合学习能力。模型需要根据指令在二维网格世界中导航,并理解指令中的新颖组合。
- PCFG SET:这是一个基于概率上下文无关语法的数据集,用于评估模型在翻译语法表达式方面的组合学习能力。模型需要将语法表达式翻译成表示其意义的序列。
- COGS:这是一个语义解析数据集,用于评估模型在理解英语句子方面的组合学习能力。模型需要确定输入句子的形式意义表示。
2.2 生产力/长度泛化
- CREPE:除了系统性任务,CREPE还包含生产力任务,用于评估模型处理长序列的能力。
- PCFG SET:PCFG SET包含多个子数据集,其中一些子数据集用于评估模型处理长序列的能力。
- CFQ:这是一个基于知识图谱的自然语言问答数据集,用于评估模型在理解自然语言问题方面的组合学习能力。CFQ包含多个子数据集,其中一些子数据集用于评估模型处理长序列的能力。
- COGS:COGS包含多个子数据集,其中一些子数据集用于评估模型处理长序列的能力。
2.3 其他泛化标准
PCFG SET:唯一一个评估其他三个额外标准的基准。PCFG SET还包含其他三个子数据集,分别用于评估模型的可替换性、局部性和泛化过度能力。
3 组合学习模型
3.1 经典神经网络模型
对不同的神经模型进行了组合学习任务的测试,评估了长短期记忆网络(LSTM)、卷积神经网络(CNN)和变换器(Transformers)在序列到序列语言处理任务上的表现,这些任务是PCFG SET任务。平均来看,变换器(Transformers)在这些任务上的表现优于其他两种模型,但在两种经典神经模型中,卷积模型比LSTM表现得更好。
3.2 基于Transformer架构模型
大型语言模型的组合能力目前是一个有争议的话题。它们已经在本质上是组合在一般任务上进行了评估,例如算术、逻辑和动态规划。如GPT系列变换器通过将问题简化为线性子图匹配来解决这些任务,而没有发展出真正的组合推理能力。
变换器在组合任务上表现的具体架构因素, 1)位置编码的类型,2)使用复制解码器,3)模型大小,4)权重共享,5)使用中间表示进行预测-在几个不同的数据集和基准上。所采用的任务包括加法、加法负数、反转、复制、笛卡尔积、交集、SCAN长度和SCAN加跳、PCFG生成性和系统性、COGS和CFQ-mcd1。
结论如下:
- 相对位置编码通常有帮助,但使用嵌入是必要的,仅仅使用相对位置偏见是不够的。
- SCAN和CFQ这样的任务没有受到位置嵌入的影响。
- 复制或PCFG这样的任务从复制解码器中受益,因为它可以学习一种像学习输入的某个位置一样的对称性。
- 就模型大小而言,发现对于算法任务,大型模型并没有帮助。
- 对于PCFG,大型模型优于它们的小型变体。
3.3 神经符号架构模型
在对智能系统建模的尖端研究中,神经符号建模是一个日益增长的趋势。随着对通用人工智能模型的需求不断增长,需要高度组合的模型,这些模型可以根据以前训练的更简单任务进行推理,以完成新颖和复杂的任务。
一种方法是使用自然语言解释来生成正式规范,这些规范明确地以所需更简单步骤的形式列出组合任务。然后,将正式规范传递给适当的引擎来解决问题。遵循这种方法的著名视觉理解模型是VisProg。VisProg是一个模块化的神经符号模型,可以在给定自然语言指令的情况下,仅依赖于大型语言模型的上下文学习,解决各种组合视觉推理任务。它生成Python模块程序以获得解决方案。这种方法为模型如何推导出解决方案提供了可解释的推理。这些模块程序使用VisProg支持的内置模块,例如现成的神经计算机视觉模型、图像预处理模块或Python子程序,并在没有特定任务训练的情况下解决复杂任务。
另一个方法是从未加语言解释中生成问题的正式逻辑规范,并将逻辑形式传递给逻辑推理引擎。这项工作使用像GPT-3或GPT-3.5 Turbo这样的大型语言模型,通过将复杂组合任务分解为基于推理链的更小步骤,为解决复杂组合任务提供“指南”。类似于此,许多最近的工作集中在可以使用的不同的提示策略上,这些策略可以通过模块化方法解决复杂组合任务。
4 理论发现
4.1 经典神经网络模型
- 循环神经网络 (RNN): RNN 模型在组合泛化方面表现出一定的能力,能够生成具有特定嵌套深度的自然语言句子。然而,RNN 的泛化能力受到其内存和计算复杂度的限制。
- 卷积神经网络 (CNN): CNN 模型在组合泛化方面也展现出潜力,能够处理视觉任务中的组合结构。然而,CNN 的组合泛化能力仍需进一步研究和提升。
4.2 基于Transformer架构模型
- 精度限制: Transformer 模型在处理长输入序列时存在精度限制,这限制了其在解决高度复杂的组合任务方面的能力。
- 注意力机制: 硬注意力机制导致 Transformer 忽略大部分输入信息,而软注意力机制难以处理长输入序列。这些局限性限制了 Transformer 在组合泛化方面的表现。
- 潜在突破: 通过引入中间表示、改进位置编码、使用复制解码器等技术,可以提升 Transformer 模型的组合泛化能力。
4.3 大型语言模型 (LLM)
- 涌现能力: LLM 在组合泛化方面展现出涌现能力,能够在特定任务上表现出超越其参数规模的性能。然而,这种涌现能力的存在性和本质仍存在争议。
- 数据污染: LLM 的训练数据规模庞大,存在数据污染问题,这影响了其在组合泛化方面的评估。
- 认知动机: LLM 在组合泛化方面的能力与人类认知存在差异,需要进一步研究和改进。
5 未来方向
已经有大量研究从认知角度探讨了人类的组合学习能力。语言学和形式语言研究人员自从语言具有固有的组合结构以来就对组合性概念进行了形式化。然而,从人工智能和机器学习的角度来看,想法是从认知和语言学中借鉴的,计算任务和模型的设计集中在组合性的少数几个方面。
- 设计更具组合泛化能力的神经网络架构,例如神经模块网络、Pushdown Layers 等。
- 开发新的学习算法,例如基于认知科学原理的学习算法,以提升 AI 模型的组合泛化能力。
- 建立更完善的评估体系,以准确评估 AI 模型的组合泛化能力。
- 探索神经符号模型和神经组合计算在组合泛化方面的潜力。
相关文章:
人工智能模型组合学习的理论和实验实践
组合学习,即掌握将基本概念结合起来构建更复杂概念的能力,对人类认知至关重要,特别是在人类语言理解和视觉感知方面。这一概念与在未观察到的情况下推广的能力紧密相关。尽管它在智能中扮演着核心角色,但缺乏系统化的理论及实验研…...
MySQL备份与恢复:确保数据的安全与可靠性
引言: 数据的安全性和可靠性的重要性 在现代企业和组织中,数据已经成为了最重要的资产之一。数据的安全性和可靠性对于企业的运营至关重要。首先,数据的安全性保证了敏感信息不会落入错误的手中,防止了潜在的经济损失和法律风险。其次,数据的可靠性则确保了企业能够准确…...
Noisee AI – AI音乐影片MV在线生成工具,专门为Suno的好搭子来了~
导读 现在很多各大平台,抖音、快手、微视,还不能直接发布音频文件,如果有一个好听的音乐想做成MV,怎么办呢? 这时候就是Noisee AI的主场,上传一段音乐加上简单的描述就可以在3-5分钟内生成一个可以发布到…...
实战计算机网络02——物理层
实战计算机网络02——物理层 1、物理层实现的功能2、数据与信号2.1 数据通信模型2.2 通信领域常用术语2.3 模拟信号和数字信号 3、信道和调制3.1 信道3.2 单工通信、半双工通信、全双工通信3.3 调制3.4 奈式准则3.5 香农定律 4、传输媒体4.1 导向传输媒体4.2 非导向传输媒体 5、…...
Doris:冷热分层
目录 一、冷热分层介绍 二、存储策略(Storage policy) 2.1 创建存储资源 2.2 创建存储策略 2.3 使用存储策略 三、使用限制 一、冷热分层介绍 冷热分层支持所有 Doris 功能,只是把部分数据放到对象存储上,以节省成本&am…...
28.启动与暂停程序
上一个内容:27.设计注入功能界面 以它 27.设计注入功能界面 的代码为基础进行修改 点击添加游戏按钮之后就把游戏启动了 CWndINJ.cpp文件中修改: void CWndINJ::OnBnClickedButton1() {// TODO: 在此添加控件通知处理程序代码/*ExeLst.InsertItem(0, L…...
404 页面代码
<template> <div class"container"><h1>404</h1> <div ><p class"text-center">当前页面无法访问,可能没有权限或已删除</p><p class"text-center"> 去别处看看吧</p> </div> <…...
java设计模式和面向对象编程思想
Java设计模式和面向对象编程思想是软件开发中的核心概念,对于构建可维护、可扩展的软件系统至关重要。下面是对这两个主题的知识点总结: 面向对象编程(OOP)思想 封装:将数据(属性)和操作这些数据…...
超万卡训练集群网络互联技术解读
超万卡训练集群互联关键技术 大模型迈向万亿参数的多模态升级,万卡集群计算能力亟需飞跃。关键在于增强单芯片性能、提升超节点算力、融合DPU多计算能力,并追求算力能效比极致。这一系列提升将强有力支撑更大规模模型训练和推理,快速响应业务…...
AtomicInteger类介绍
文章目录 一、AtomicInteger的定义二、AtomicInteger的使用场景和作用1.使用场景2.作用 三、AtomicInteger的常用方法四、AtomicInteger的底层原理五、AtomicInteger和Integer的区别1.数据类型与线程安全性2.默认值与初始化3.常用方法与操作:4.内存模型与可见性5.使…...
Es 索引查询排序分析
文章目录 概要一、Es数据存储1.1、_source1.2、stored fields 二、Doc values2.1、FieldCache2.2、DocValues 三、Fielddata四、Index sorting五、小结六、参考 概要 倒排索引 优势在于快速的查找到包含特定关键词的所有文档,但是排序,过滤、聚合等操作…...
【C语言】解决C语言报错:Format String Vulnerability
文章目录 简介什么是Format String VulnerabilityFormat String Vulnerability的常见原因如何检测和调试Format String Vulnerability解决Format String Vulnerability的最佳实践详细实例解析示例1:直接使用不受信任的输入作为格式化字符串示例2:未验证格…...
Python深度学习:Bi-LSTM和LSTM在网络上有什么区别,对比来看
文章目录 LSTM代码解释类定义和构造函数前向传播方法 (`forward`)总结Bi-LSTMLSTM 代码 class BaseLSTMModel(nn.Module):def __init__(self, input_dim, hidden_dim, layer_dim, class_num):super().__init__...
Keepalived LVS群集
一、Keepalived案例分析 企业应用中,单台服务器承担应用存在单点故障的危险 单点故障一旦发生,企业服务将发生中断,造成极大的危害 二、Keepalived工具介绍 专为LVS和HA设计的一款健康检查工具 支持故障自动切换(Failover&#…...
harbor问题总结
1. http协议的仓库docker login不上,更改/etc/docker/daemon.json,加一个镜像仓库地址 http: server gave HTTP response to HTTPS client 分析一下这个问题如何解决中文告诉我详细的解决方案-CSDN博客 2. Error response from daemon: login attempt t…...
windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud
windows系统,家庭自用NAS。本地局域网 Docker安装nextcloud 1、docker安装 太简单了,直接去搜一搜。 docker-compose 相关命令 docker-compose down docker compose up -d2、还是使用老的 在你需要挂载的目录下,新建一个文件,…...
迅狐跨境商城系统|全平台兼容|前端采用uni-app跨端框架,后端采用ThinkPHP5框架
高效实现全平台兼容的迅狐跨境商城系统 迅狐跨境商城系统是一款专为跨境电商企业设计的全平台兼容系统。其前端采用uni-app跨端框架,后端采用ThinkPHP5框架,旨在实现高效的开发和运营管理。 1. 全平台兼容的前端设计 迅狐跨境商城系统的前端采用uni-a…...
Elixir学习笔记——进程(Processes)
在 Elixir 中,所有代码都在进程内运行。进程彼此隔离,彼此并发运行并通过消息传递进行通信。进程不仅是 Elixir 中并发的基础,而且还提供了构建分布式和容错程序的方法。 Elixir 的进程不应与操作系统进程混淆。Elixir 中的进程在内存和 CPU…...
困惑度作为nlp指标的理解示例
为了更清晰地说明困惑度的计算过程以及如何通过困惑度判断模型的优劣,我们可以通过一个简单的例子来演示。假设我们有一个非常简单的文本语料库和两个基础的语言模型进行比较。 示例文本 假设我们的文本数据包括以下两个句子: “cat sits on the mat”…...
01 Pytorch 基础
paddle不需要放数据到gpu! 区别:1.batch_norlization 不同 2. 1.数据处理 1.取一个数据,以及计算大小 (剩下的工作,取batch,pytorch会自动做好了) 2.模型相关 如何得到结果 3.模型训练/模型…...
STL——set、map、multiset、multimap的介绍及使用
文章目录 关联式容器键值对树形结构与哈希结构setset的介绍set的使用set的模板参数列表set的构造set的使用set的迭代器使用演示 multisetmultiset演示 mapmap的定义方式map的插入map的查找map的[ ]运算符重载map的迭代器遍历multimapmultimap的介绍multimap的使用 在OJ中的使用…...
使用C语言,写一个类似Linux中执行cat命令的类似功能
一、详细的代码案例 #include <stdio.h> #include <stdlib.h> #include <string.h>// 函数声明 void cat_file(const char *filename);int main(int argc, char *argv[]) {if (argc < 2) {fprintf(stderr, "Usage: %s filename1 [filename2 ...]\n&…...
【Android】Android系统性学习——Android系统架构
前言 部分内容参考《Android进阶解密》 – 刘望舒 1. Android版本 官方链接:https://developer.android.com/studio/releases/platforms 里面有各个版本的官方文档,有些新功能的用法在这里面。 现在做安卓11,有时候需要向下兼容 2. AOSP …...
鸿蒙应用开发
学习视频: 00.课程介绍_哔哩哔哩_bilibili 官网:开发者文档中心 | 华为开发者联盟 (huawei.com) 开发工具 :DevEcoStudio , 类似Jetbrains 全家桶 ArkTS开发语言 :(基于TS,集成了前端语言…...
索引失效有效的11种情况
1全职匹配我最爱 是指 where 条件里 都是 ,不是范围(比如>,<),不是 不等于,不是 is not null,然后 这几个字段 建立了联合索引 ,而且符合最左原则。 那么就要比 只建…...
字符数组基础知识及题目
死识。。。 字符该如何存储呢?这一点我们在以前就接触过了。用char来存储。 如何输入一个单词呢? char a[10002]; scanf("%s",a); 就不用地址符了。 如何输入句子呢? char a[100002]; gets(a); gets是读入句子的,…...
一个简单的玩具机器人代码
编写一个玩具机器人脚本通常取决于机器人的硬件、接口和具体功能。然而,由于我们不能直接控制一个真实的硬件机器人,所以只是写一个模拟的C语言脚本示例,该脚本描述了一个简单的玩具机器人可能执行的一些基本操作。 假设我们的“玩具机器人”…...
设计模式-装饰器模式Decorator(结构型)
装饰器模式(Decorator) 装饰器模式是一种结构模式,通过装饰器模式可以在不改变原有类结构的情况下向一个新对象添加新功能,是现有类的包装。 图解 角色 抽象组件:定义组件的抽象方法具体组件:实现组件的抽象方法抽象装饰器&…...
RK3588开发板中使用Qt对zip文件进行解压
操作步骤: 下载源码quazip-0.7.3.zip ,在网上找找下载地址上传源码进行解压,然后使用命令 cd quazip-0.7.3 qmake make主要用的是quazip-0.7.3/quazip这个里面的源码,然后把源码加入到自己创建的qt项目pro中,导入方式…...
三、网络服务协议
目录 一、FTP:文件传输协议 二、Telnet:远程登录协议 三、AAA认证 四、DHCP 五、DNS 六、PPP协议 七、ISIS协议 一、FTP:文件传输协议 C/S架构,现多用于企业内部的资料共享和网络设备的文件传输,企业内部搭建一…...
网站开发移动端多少钱/网站平台如何推广
帧中继( Frame Relay)是一种用于连接计算机系统的面向分组的通信方法。它主要用在公共或专用网上的局域网互联以及广域网连接。大多数公共电信局都提供帧中继服务,把它作为建立高性能的虚拟广域连接的一种途径。1.实验器材3台思科路由器 3台…...
南宁最新疫情最新消息详细轨迹/湖北seo网站推广
关于set_new_handler(转载)2010-09-05 16:59:37| 分类:学习心得| 标签:|字号大中小订阅当运算符new找不到足够大的连续内存块来为对象分配内存时将会发生什么?一个称为 new-handler的函数被调用。对于new-handler的缺省动作是抛出一个异常。…...
网站建设要用多少种字体/网址seo关键词
题目 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 示例 输入:nums [2,2,3,2] 输出:3 输入:nums [0,1,0,1,0,1,99] 输出:…...
天河做网站系统/营销型网站建设报价
本人屌丝本一枚,从最早的9.10京东到现在,找工作基本已经结束,除了腾讯的是暑期内推的(8.26面试的),校招期间一共面了四家,其中三家已经收到offer(京东阿里去哪儿),网易还在等通知中。如题,本人只是一个水得不能再水的本科生,大学四年,挂科5-6门的样子(这学期还要重修三门,妈蛋,…...
网络营销策划方案展示/seo百度快速排名软件
摘要:## 推荐 ### 1. 神经网络入门 http://www.ruanyifeng.com/blog/2017/07/neural-network.html 眼下最热门的技术,绝对是人工智能,人工智能的底层模型是"神经网络"(neural network)。许多复杂的应用&…...
wordpress 图片热点/品牌传播方案
在oracle 12.1版本之前,oracle日志写进程LGWR为单进程,oracle 12.1开始实现了SCALABLE LGWR多进程,采用多个LGWR协同对redo log日志进行并行写入,这是Oracle数据库内部最重要的改进,解决了最后的并发瓶颈点 SCALABLE LGWR主要受到隐藏参数_use_single_l…...