FunL2O:面向学习优化的LLM引导特征函数设计

arXiv cs.LG 论文

摘要

FunL2O提出了一个统一框架,利用LLM驱动的程序演化来自动化学习优化方法中的特征函数设计,在连续和离散优化任务中均展现出优于人工设计特征的一致改进。

arXiv:2607.27389v1 公告类型:新 摘要:学习优化(L2O)方法通过训练模型来预测解、热启动、分支决策或其他形式的求解器指导,从而加速重复优化过程。这些流水线中一个关键但常被忽视的组件是特征函数,它将问题实例映射为机器学习模型的输入。现有的L2O方法通常依赖人工设计的特征,导致表示设计是手动的,并且在不同领域间基本固定。我们提出了FunL2O,这是第一个通过LLM驱动的程序演化来自动化L2O特征设计的统一框架。在FunSearch风格的循环中,LLM提出可执行的特征函数,而固定的评估过程则重新训练原始L2O模型并衡量下游优化性能。我们在线性和二次规划任务上评估了FunL2O,涉及解预测和热启动,以及在混合整数优化任务上使用GNN引导的后门分支和预测-搜索。在连续和离散优化任务以及四个LLM中,演化出的特征始终优于人工设计的表示。这些结果确立了LLM驱动的特征演化作为自动化L2O表示设计的一种通用且有效的方法。
查看原文
查看缓存全文

缓存时间: 2026/07/31 10:02

# FunL2O:面向学习优化的LLM引导特征函数设计

###### 摘要

学习优化(L2O)方法通过训练模型来预测解、热启动、分支决策或其他求解器指导形式,从而加速重复出现的优化问题。这些流程中一个关键但长期被忽视的组成部分是特征函数,它将问题实例映射为机器学习模型的输入。现有L2O方法通常依赖手工设计的特征,导致表示设计在不同领域之间是人工的且基本固定。我们提出FunL2O,这是首个通过LLM驱动的程序演化来自动化L2O特征设计的统一框架。在类似FunSearch的循环中,LLM提出可执行的特征函数,而固定的评估流程重新训练原始L2O模型并衡量下游优化性能。我们在涉及解预测和热启动的线性及二次规划任务上,以及在涉及GNN引导后门分支和Predict-and-Search的混合整数优化任务上评估了FunL2O。在连续和离散优化任务以及四种LLM中,演化出的特征持续优于手工设计的表示。这些结果确立了LLM驱动的特征演化是自动化L2O中表示设计的一种通用且有效的方法。

## 引言

许多优化问题以相同的数学结构但不同的数值数据被重复求解。学习优化(L2O)方法通过利用先前已求解实例来训练神经网络,从而利用这种规律性(Andrychowicz et al. 2016 (https://arxiv.org/html/2607.27389#bib.bib2); Chen et al. 2022 (https://arxiv.org/html/2607.27389#bib.bib1))。根据流程的不同,学习组件可以预测解、初始化迭代算法、选择单纯形基或主元,或指导混合整数搜索(Qian et al. 2024 (https://arxiv.org/html/2607.27389#bib.bib22); Li et al. 2024 (https://arxiv.org/html/2607.27389#bib.bib23); Fan et al. 2023 (https://arxiv.org/html/2607.27389#bib.bib25); Liu et al. 2024b (https://arxiv.org/html/2607.27389#bib.bib26); Han et al. 2023 (https://arxiv.org/html/2607.27389#bib.bib12); Cai et al. 2025a (https://arxiv.org/html/2607.27389#bib.bib14))。尽管作用各异,每种L2O方法都始于一个相同的基本设计决策:如何利用特征来表示优化实例,以使学习模型能够更有效地训练并捕获相关的问题结构。

特征函数决定了哪些信息对模型直接可用,以及这些信息如何被结构化。对于线性和混合整数规划,表示可以编码目标系数、变量边界和类型、图结构以及LP松弛的性质。当有用的关系被显式表达时,模型可以直接利用它;否则,模型必须从可用输入中推断该关系。因此,仅改变输入表示就能同时影响模型的表达能力及其下游性能(Sun et al. 2023 (https://arxiv.org/html/2607.27389#bib.bib29); Chen et al. 2025 (https://arxiv.org/html/2607.27389#bib.bib30); Cai et al. 2025c (https://arxiv.org/html/2607.27389#bib.bib13))。

尽管特征函数十分重要,但它在训练之前通常是手工设计且在问题领域之间固定不变。大多数L2O研究随后专注于模型架构、学习目标或求解器接口,而保持输入表示不变。然而,自动化特征设计不仅仅是特征选择问题。L2O特征函数是一个对结构化优化数据执行的可执行程序:它必须保持模型特定的张量接口,满足语义和维度不变性,并且只能依赖部署时可用的信息。此外,其质量只能在重新训练学习器并测量下游性能之后才能评估。相关指标是依赖于角色的:预测方法优先考虑可行性和目标质量,而求解器策略则寻求减少迭代次数、主元数、搜索工作量或墙钟时间。

为解决这一问题,我们引入FunL2O,这是首个由LLM引导的自动为L2O设计可执行特征函数的框架。该框架定义了特征函数在部署时可以使用哪些信息、必须产生什么输出格式以及必须满足什么条件的明确规则。每个有效候选都会替换L2O流程中原始的固定手工特征函数。随后重新训练模型,并利用其下游优化性能来引导搜索更好的特征函数。流程中的所有其他部分——包括模型架构、损失函数、标签、训练计划、数据和求解器——均保持不变。这使我们能够孤立输入表示的影响。在选出最佳特征函数后,它被用作标准预处理代码,部署时不需要LLM。

参见图1的说明:FunL2O搜索可执行特征函数。每个提案必须满足特定的流程语义契约,随后原始L2O模型被重新训练和评估。测量到的优化结果决定了提供给下一代的最优程序。我们的贡献有三点。首先,我们将特征函数设计表述为原始L2O流程内的程序搜索问题。我们还引入了定义异构图、稠密张量和求解器状态的有效输入与输出的语义契约。其次,我们开发了一个L2O在环搜索过程,其中可执行特征函数基于测量的可行性和下游优化性能来选择,而非LLM判断。第三,我们在八个L2O流程上评估了该框架,涵盖LP和QP解预测、约束非线性预测、原始-对偶热启动、单纯形基初始化、主元选择以及MILP搜索。在这些设置中,演化出的特征持续优于手工设计的表示,在不改变学习模型或优化流程的情况下提高了求解质量、可行性和求解器效率。

## 背景

#### 学习优化。

学习优化(L2O)在相关问题实例上训练模型,以预测解或指导优化算法(Andrychowicz et al. 2016 (https://arxiv.org/html/2607.27389#bib.bib2); Chen et al. 2022 (https://arxiv.org/html/2607.27389#bib.bib1))。给定实例 \(x\),L2O流程可以写作

\(x \xrightarrow{\phi} X \xrightarrow{M} a \xrightarrow{\mathcal{S}} \widehat{y},\) (1)

其中 \(\phi\) 是特征函数,\(M\) 是学习模型,\(a\) 是预测解或求解器指令,\(\mathcal{S}\) 是下游求解器。根据学习角色的不同,结果 \(\widehat{y}\) 通过可行性、目标质量、迭代次数、主元数或墙钟时间来评估。

#### 特征函数。

特征函数将结构化优化数据转换为模型消费的张量。对于LP或MILP,

\(\min\left\{c^{\top}x: Ax\leq b,\;\ell\leq x\leq u,\;x_{j}\in\mathbb{Z}\ (j\in\mathcal{I})\right\},\) (2)

一种常见表示是二部图,包含变量节点和约束节点,以及对应于 \(A\) 中每个非零系数的边(Gasse et al. 2019 (https://arxiv.org/html/2607.27389#bib.bib28))。特征可以编码目标系数、边界、变量类型、约束统计以及LP松弛信息。这些选择决定了哪些数值和结构关系对学习器是直接可用的。

#### 学习求解器指导。

一些L2O模型直接预测解,而另一些则通过热启动、单纯形基、主元分数、部分赋值或分支优先级来指导经典求解器。对于面向求解器的角色,预测精度仅是中间指标:主要目标是减少求解器执行的工作。因此,FunL2O使用其宿主流程的原生下游指标来评估每个特征函数。

#### 混合整数预测。

我们考虑两类与MILP相关的预测任务。Predict-and-Search预测二元变量边际,并在由此产生的部分赋值周围搜索信任域(Han et al. 2023 (https://arxiv.org/html/2607.27389#bib.bib12); Huang et al. 2024 (https://arxiv.org/html/2607.27389#bib.bib11))。学习后门(learned backdoors)对重要变量进行排序,并为排名靠前的预测分配更高的分支优先级(Cai et al. 2024 (https://arxiv.org/html/2607.27389#bib.bib9))。在这两种情况下,FunL2O只改变特征函数,而保持模型、训练过程和求解器固定。

## 方法

FunL2O接受现有的L2O流程 \(\mathcal{P}\) 及其手工制作的特征函数 \(\phi_{0}\),并返回一个演化后的特征函数作为可执行代码。搜索只改变表示:模型架构、训练过程、超参数、数据、学习角色和下游求解器均保持不变。如图1 (https://arxiv.org/html/2607.27389#Sx1.F1) 所示,LLM提出候选函数,语义契约检查其有效性,原始流程通过重新训练模型并测量原生优化结果来评估有效候选。排名最高的程序指导后续提案。

### 特征函数搜索

考虑一个L2O流程 \(\mathcal{P}\),其包含学习模型 \(M_{\theta}\)、训练过程以及可选的下游求解器操作 \(S_{\mathcal{P}}\)。设 \(x\in\mathcal{X}_{\mathcal{P}}\) 表示一个优化实例或求解器状态。特征函数

\(\phi:\mathcal{X}_{\mathcal{P}}\rightarrow\mathcal{Z}_{\mathcal{P}}(d_{\phi})\) (3)

将 \(x\) 映射为宽度 \(d_{\phi}\) 的表示。模型使用该表示产生学习输出:

\(\begin{split}z_{\phi}(x)&=\phi(x),\\ a_{\phi}(x)&=M_{\theta_{\phi}^{\star}}^{(d_{\phi})}\bigl(z_{\phi}(x)\bigr).\end{split}\) (4)

学习输出随后被传递到剩余的优化流程:

\(\widehat{y}_{\phi}(x)=S_{\mathcal{P}}\bigl(x,a_{\phi}(x)\bigr).\) (5)

输出 \(a_{\phi}(x)\) 可以是预测解、原始-对偶初始化、基状态预测或主元分数。当模型直接预测最终解时,\(S_{\mathcal{P}}\) 是恒等映射。

现有L2O方法提供一个手工特征函数 \(\phi_{0}\)。FunL2O保持 \(\mathcal{P}\) 的其余部分固定,并搜索替代的 \(\phi\)。使用一种表示训练的模型不能用于评估另一种表示。因此,每个候选都引入一个新的训练问题:

\(\theta_{\phi}^{\star}=\operatorname{Train}_{\mathcal{P}}\left(\phi;\mathcal{D}_{\mathrm{tr}}\right).\) (6)

如果 \(d_{\phi}\) 与手工表示的宽度不同,则输入层以相应宽度实例化。这是一种机械性的接口更改:模型模板、隐藏架构、损失、优化器、训练计划和其他超参数不被搜索。

训练后,在验证集上评估候选。我们写出

\(\mathbf{m}_{\mathcal{P}}(\phi)=\operatorname{Agg}_{x\in\mathcal{D}_{\mathrm{val}}}\mu_{\mathcal{P}}\left(x,\widehat{y}_{\phi}(x)\right)\) (7)

作为其测量结果,其中 \(\mu_{\mathcal{P}}\) 由原始流程定义。根据学习角色的不同,\(\mathbf{m}_{\mathcal{P}}\) 可能包含可行率、约束违反、目标差距、迭代次数、运行时间或主元数。

这些结果通过流程特定的排序键进行比较

\(\rho_{\mathcal{P}}(\phi)=\left(b_{\mathcal{P}}(\phi),v_{\mathcal{P}}(\phi),q_{\mathcal{P}}(\phi)\right),\) (8)

按字典序排序,值越小越好。第一个分量 \(b_{\mathcal{P}}\) 表示所需的可行性条件是否被违反。第二个分量 \(v_{\mathcal{P}}\) 度量不可行程度,第三个分量 \(q_{\mathcal{P}}\) 度量目标质量或求解器工作量。对于没有可行性条件的任务,前两个分量设为零。\(q_{\mathcal{P}}\) 的符号被选择为始终越小越好;例如,它可以是目标差距、迭代次数、主元数或迭代节省量的负值。

因此,特征设计问题是

\(\phi^{\star}\in\operatorname*{arg\,min}_{\phi\in\Phi_{\mathcal{P}}}\rho_{\mathcal{P}}(\phi).\) (9)

公式9 (https://arxiv.org/html/2607.27389#Sx3.E9) 中的最小化遵循字典序。它防止不可行预测仅因目标值更好而受到偏好。它还允许同一外部问题表示预测质量、热启动有效性和学习求解器决策。

公式9 (https://arxiv.org/html/2607.27389#Sx3.E9) 存在两个困难。第一,可容许空间 \(\Phi_{\mathcal{P}}\) 在不同流程之间是不同的,因为它们的输入和模型接口不同。第二,外部目标是一个昂贵黑箱,因为评估一个候选需要模型训练,并且可能还需要完整的求解器运行。FunL2O通过语义特征契约解决第一个困难,并通过基于测量结果的反馈驱动搜索解决第二个困难。

### 语义特征契约

语义特征契约指定哪些特征函数属于 \(\Phi_{\mathcal{P}}\)。对于流程 \(\mathcal{P}\),我们定义

\(\mathcal{C}_{\mathcal{P}}=\left(\mathcal{U}_{\mathcal{P}},\mathcal{Z}_{\mathcal{P}},\mathcal{I}_{\mathcal{P}},V_{\mathcal{P}}\right).\) (10)

这里,\(\mathcal{U}_{\mathcal{P}}\) 包含部署时可用的实例字段或求解器状态信息。输出规范 \(\mathcal{Z}_{\mathcal{P}}\) 定义了所需的返回类型、朝向和最大特征宽度。不变量 \(\mathcal{I}_{\mathcal{P}}\) 描述必须保持的性质,如确定性、有限输出以及必需的手工通道。最后,\(V_{\mathcal{P}}\) 是这些需求的可执行验证器。

表 1:FunL2O在各个宿主L2O流程上的实例化。每种情况下,特征函数被搜索,而学习输出、训练过程和下游求解器接口保持固定。契约定义了预期的可容许空间

\(\Phi_{\mathcal{P}}=\left\{\phi\in\mathcal{H}_{\mathrm{safe}}\;\middle|\;\begin{subarray}{c}\operatorname{Fields}(\phi)\subseteq\mathcal{U}_{\mathcal{P}},\\ \phi(x)\in\mathcal{Z}_{\mathcal{P}}(d_{\phi}),\\ \mathcal{I}_{\mathcal{P}}(\phi,x)=1\end{subarray}\right\}.\) (11)

这里,\(\mathcal{H}_{\mathrm{safe}}\) 表示受限环境允许的可执行函数。候选可以组合原始方法中已有的信息,但不能访问参考解、训练标签、文件、网络或外部

相似文章

本地LLM推理优化:完整指南

Reddit r/LocalLLaMA

一份关于在消费级硬件上优化本地LLM推理的全面指南,涵盖llama.cpp、vLLM和LM Studio等工具,并提供关于内存层次结构、层放置和常见故障模式的实用建议。

借助大语言模型发现强化学习接口

Hugging Face Daily Papers

本文介绍了 LIMEN,这是一个由大语言模型引导的演化框架,能够通过联合优化原始模拟器状态的观测映射与奖励函数,自动发现强化学习接口。该方法有效降低了人工设计成本,并证明了观测与奖励的协同设计优于单独优化其中任意单一组件。

学习,快与慢:走向持续适应的LLMs

Hugging Face Daily Papers

一种针对LLMs的快慢学习框架,将固定的慢权重与优化的快上下文权重相结合,在持续学习场景中实现了高达3倍的样本效率提升,并减少了灾难性遗忘。