排序、搜索、 动态规划,DeepMind用一个神经算法学习器给解决了

简介: 排序、搜索、 动态规划,DeepMind用一个神经算法学习器给解决了


自 DeepMind 等机构的研究者提出了一个通用神经算法学习器,其能够学习解决包括排序、搜索、贪心算法、动态规划、图形算法等经典算法任务,达到专家模型平均水平。

近年来,基于深度神经网络的机器学习系统取得了巨大的进步,尤其是在以感知为主的任务方面。这些模型通常需要在分布内泛化,这意味着它们的训练集和验证集需要有输入预期分布。相比之下,想要模型在推理任务上表现出色,这就要求即使在分布外(out-of-distribution, OOD)泛化时模型也能提供合理的输出。

然而,多数神经网络在 OOD 方面表现不佳。事实上,可以进行神经推理的架构需要算法对齐、自监督学习等其他算法的辅助。更进一步讲,这些模型需要在基于观察的基础上,对生成的新知识有一定的稳健性,特别是当这些知识脱离训练数据域时。

本文中, 来自 DeepMind 等机构的研究者提出一个通用神经算法学习器:具有单一参数集的 GNN,其能够同时学习解决经典算法任务,包括排序、搜索、贪心算法、动态规划、图形算法、字符串算法和几何算法,达到专家模型平均水平。

具体地,该研究利用 CLRS 基准从实证上表明,就像在感知领域取得的成功一样,通用算法学习器可以通过整合知识来构建。也就是说,只要我们能学会在单任务模式下很好地执行算法,就有可能在多任务模式下有效地学习算法。

受此启发,该研究对 CLRS 的输入表示、训练机制和处理器架构进行一系列改进,与现有技术相比,改进后的平均单任务性能提高了 20% 多。然后,本文利用这些改进对多任务学习器进行消融实验。结果表明,通用学习器能够有效地整合由专家模型捕获的知识。

论文地址:https://arxiv.org/pdf/2209.11142.pdf

可以说这项研究是一个重要的里程碑,表明即使在具有完全不同的控制流任务中,该研究也可以有意义地整合推理能力,并在多个任务中超过相应的单任务专家的 OOD 性能。

正如佐治亚理工学院机器学习博士生 Aran Komatsuzaki 所总结的:「本文构建了一个通用神经算法学习器,能够学习执行各种算法的单个 GNN 处理器,例如排序、搜索、动态规划、路径查找和几何。」

研究介绍

研究者提出的通用神经算法学习器如下图 1 所示。

论文第 3 章是主旨部分,主要介绍了表示、训练机制和架构的改进,使得单个模型的性能明显优于之前在 CLRS-30 上发布的 SOTA 技术。

CLRS 基准定义了五种类型的特性:标量(scalar)、分类、掩码、mask_one 和指针,它们都有自己的编码和解码策略以及损失函数。

本文中具体的改进包括但不仅限于:

数据集和训练:移除 teacher forcing。在评估时,模型无法访问数据集中的 hint,只能依靠已有的 hint 进行预测。在先前的模型中,训练期间提供了概率为 0.5 的 ground-truth hint,在没有 teacher forcing 的情况下,当存在 scalar hints 时,损失倾向于沿轨迹无界增长,从而破坏了训练的稳定性。

这项工作整合了几个重要的稳定变化,足以完全消除 teacher forcing 带来的影响,使训练与评估保持一致。由于 teacher forcing 的存在,排序算法和 Kruskal 算法的性能显著下降。在移除了 teacher forcing 之后,本文还对训练数据进行了扩充,以防止模型过拟合。

Soft hint 传播。本文将 softmax 用于分类,mask_one 、指针类型、logistic sigmoid 用于掩码类型。如果没有这些 soft hints,排序算法的性能会下降(类似于有 teacher forcing 的情况)。

利用编码器初始化和梯度裁剪提高训练稳定性。该研究使用 Xavier 进行初始化,从而有效地减少了输入维度仅为 scalar hint 的初始权重。此外,该研究还对编码器、解码器、网络处理器进行了改进。

对模型改进之后得到一组超参数模型,经过训练,该模型在 CLRS-30 上达到了 SOTA 性能。下表 1 和表 2 显示了包括 Memnet、MPNN、PGN 等模型在内的 micro-F_1 得分。

下图 2 显示了改进模型与 SOTA 模型之间的比较。本文的模型比次优模型(见表 1)平均性能提高了 20% 以上,并且除了一个算法系列之外,所有算法的性能都比其他模型有了显著提高。

从实验可以看出,有两个算法系列具有显著的 OOD 性能改进:第一个是几何算法,现在求解接准确率约 94% OOD ,而之前的最佳结果约为 73%;第二个是字符串算法,模型现在求解准确率超过 49%,而之前的最佳值约为 3%。与之前的 SOTA 相比,本文在 24 种算法中准确率超过 60%,17 种算法的准确率超过 80%,11 种算法的准确率超过 90%。

下图 3 比较了单任务 Triplet-GMPNN 与多任务模型的性能。

为了独立评估模型改进的效果,该研究还进行了消融实验。下图 4a 显示了 vanilla 训练和分块训练在性能上的显著差异;图 4b 显示了累积消融的结果:逐渐删除单个改进部分的结果。

相关文章
|
1月前
|
存储 算法 安全
2024重生之回溯数据结构与算法系列学习之串(12)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丟脸好嘛?】
数据结构与算法系列学习之串的定义和基本操作、串的储存结构、基本操作的实现、朴素模式匹配算法、KMP算法等代码举例及图解说明;【含常见的报错问题及其对应的解决方法】你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
2024重生之回溯数据结构与算法系列学习之串(12)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丟脸好嘛?】
|
1月前
|
算法 Python
在Python编程中,分治法、贪心算法和动态规划是三种重要的算法。分治法通过将大问题分解为小问题,递归解决后合并结果
在Python编程中,分治法、贪心算法和动态规划是三种重要的算法。分治法通过将大问题分解为小问题,递归解决后合并结果;贪心算法在每一步选择局部最优解,追求全局最优;动态规划通过保存子问题的解,避免重复计算,确保全局最优。这三种算法各具特色,适用于不同类型的问题,合理选择能显著提升编程效率。
51 2
|
1月前
|
算法 搜索推荐 数据库
二分搜索:高效的查找算法
【10月更文挑战第29天】通过对二分搜索的深入研究和应用,我们可以不断挖掘其潜力,为各种复杂问题提供高效的解决方案。相信在未来的科技发展中,二分搜索将继续发挥着重要的作用,为我们的生活和工作带来更多的便利和创新。
50 1
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
【EMNLP2024】基于多轮课程学习的大语言模型蒸馏算法 TAPIR
阿里云人工智能平台 PAI 与复旦大学王鹏教授团队合作,在自然语言处理顶级会议 EMNLP 2024 上发表论文《Distilling Instruction-following Abilities of Large Language Models with Task-aware Curriculum Planning》。
|
1月前
|
算法 安全 搜索推荐
2024重生之回溯数据结构与算法系列学习(8)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
数据结构王道第2.3章之IKUN和I原达人之数据结构与算法系列学习x单双链表精题详解、数据结构、C++、排序算法、java、动态规划你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
|
1月前
|
算法 安全 搜索推荐
2024重生之回溯数据结构与算法系列学习之单双链表精题详解(9)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
数据结构王道第2.3章之IKUN和I原达人之数据结构与算法系列学习x单双链表精题详解、数据结构、C++、排序算法、java、动态规划你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
|
1月前
|
算法 安全 NoSQL
2024重生之回溯数据结构与算法系列学习之栈和队列精题汇总(10)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
数据结构王道第3章之IKUN和I原达人之数据结构与算法系列学习栈与队列精题详解、数据结构、C++、排序算法、java、动态规划你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
|
1月前
|
算法 安全 搜索推荐
2024重生之回溯数据结构与算法系列学习之王道第2.3章节之线性表精题汇总二(5)【无论是王道考研人还是IKUN都能包会的;不然别给我家鸽鸽丢脸好嘛?】
IKU达人之数据结构与算法系列学习×单双链表精题详解、数据结构、C++、排序算法、java 、动态规划 你个小黑子;这都学不会;能不能不要给我家鸽鸽丢脸啊~除了会黑我家鸽鸽还会干嘛?!!!
|
17小时前
|
机器学习/深度学习 算法
基于改进遗传优化的BP神经网络金融序列预测算法matlab仿真
本项目基于改进遗传优化的BP神经网络进行金融序列预测,使用MATLAB2022A实现。通过对比BP神经网络、遗传优化BP神经网络及改进遗传优化BP神经网络,展示了三者的误差和预测曲线差异。核心程序结合遗传算法(GA)与BP神经网络,利用GA优化BP网络的初始权重和阈值,提高预测精度。GA通过选择、交叉、变异操作迭代优化,防止局部收敛,增强模型对金融市场复杂性和不确定性的适应能力。
|
19天前
|
算法
基于WOA算法的SVDD参数寻优matlab仿真
该程序利用鲸鱼优化算法(WOA)对支持向量数据描述(SVDD)模型的参数进行优化,以提高数据分类的准确性。通过MATLAB2022A实现,展示了不同信噪比(SNR)下模型的分类误差。WOA通过模拟鲸鱼捕食行为,动态调整SVDD参数,如惩罚因子C和核函数参数γ,以寻找最优参数组合,增强模型的鲁棒性和泛化能力。