NetLLM SIGCOMM 2024
type
status
date
slug
summary
tags
category
icon
password
NetLLM:Adapting Large Language Models for Networking
一、研究背景
当前的网络领域常常使用深度神经网络架构来解决网络层面的预测和决策问题
- 如使用监督学习的深度神经网络常常用于解决预测问题,如流量分类和带宽预测 。
- 而使用强化学习的深度神经网络常常用于解决决策问题,如拥塞控制、自适应比特率传输以及云集群作业调度
然而这两种方法仍然存在问题:即高昂的模型工程成本(“一个任务一个模型”、“设计过程难度大”)以及泛化能力差(在未见过的数据分布或环境中,性能可能大幅下降)
考虑到大模型已经在多个领域中得到迁移应用,同时考虑到大模型的泛化性,作者考虑到能否将大模型应用到这些网络领域中,比如自适应比特率的决策等等。
二、主要挑战
1、巨大的模态输入差距
大模型往往输入的是自然语言,而在网络领域中,以ABR为例,通常需要采集网络吞吐量和延迟等数据 ,这些数据具有独特的时变模式,而这种模式在自然文本中极为罕见。这种模态差异使得大型语言模型无法有效处理网络任务的输入信息。
2、答案生成效率低:
首先,大模型可能存在幻觉,即其输出的决策可能是不存在的;其次,由于token是逐个生成的,生成速率较慢,而无法进行及时的决策
3、适配成本高:
网络领域与自然语言处理领域之间存在巨大的领域差距,这意味着需要对大型语言模型进行微调,使其获取领域特定知识,才能实现有效适配。然而微调LLM的难度比训练一个DNN更大,尤其是全参微调。
三、主要贡献
本研究提出 NetLLM—— 首个能高效将大型语言模型适配于网络领域的框架,主要包含三个模块
1、多模态编码器:NetLLM 在大型语言模型的输入端设计了高效的多模态编码器,用于有效处理网络任务的多模态输入信息。该模块的目标是自动将任务输入映射到与语言令牌相同的特征空间,使大型语言模型能够理解并利用这些输入来解决任务。为实现这一目标,首先利用特定于模态的特征编码器从网络领域涉及的各类模态原始输入中提取特征,然后通过可训练层将这些特征投影为类令牌嵌入向量,直接输入大型语言模型进行有效处理。
2、网络专用头:为实现高效的答案生成,NetLLM 移除了大型语言模型中用于令牌预测的默认语言建模头,转而在输出端引入多种网络专用头,为特定网络任务生成答案。每个网络专用头本质上是一个轻量级可训练投影器,能将大型语言模型的输出特征直接映射为特定任务的答案。也就是说,这些网络专用头无需进行令牌预测,可直接从可能的有效答案范围内生成答案(例如,在自适应比特率流传输任务中,从候选选项中选择比特率)。这使得大型语言模型通过单次推理就能生成有效答案,既保证了其在网络领域应用的可靠性,又大幅降低了生成延迟。
3、数据驱动低秩网络适配(DD-LRNA):为降低微调成本,NetLLM 为大型语言模型设计了 DD-LRNA 方案,使其能高效获取网络领域知识。具体而言,DD-LRNA 包含一个数据驱动的适配流程,可同时适配大型语言模型以处理预测类和决策类任务。对于决策类任务,该方案采用高效的数据驱动强化学习技术 [3, 79, 106],避免了大型语言模型与环境之间耗时的交互过程。通过现有网络算法收集经验池作为训练数据集,然后以数据驱动的方式在该数据集上对大型语言模型进行微调。此外,受先进的参数高效微调技术 [21, 29] 启发,DD-LRNA 引入了一组额外的可训练低秩矩阵,帮助大型语言模型学习网络知识。由于低秩矩阵仅占总参数的 0.31%,微调成本大幅降低,GPU 内存消耗减少 60.9%,训练时间缩短 15.1%。
NetLLM主要在以下三个任务中进行了实验,并达到了SOTA:

Q1:为什么设计了一个单独的多模态信息处理头,而不是使用类似将多模态数据转化为文本序列的方式?
A:效果不好,如Figure2左图(VP)任务,同时像CJS的有向无环图数据,其也很难转化为文本数据

Q2:为什么设计了一个独特的finetune方式?
A:原始的训练方法耗时开销较长,对内存和计算要求较高,全参微调还会破坏其预训练知识

三、设计细节

1、多模态信息编码头:对于不同类型的任务,采用不同的编码头:
具体而言,我们采用以下特征编码器对网络领域涉及的不同数据模态进行编码:
- 图像:视觉 Transformer(ViT)
- 时间序列和序列数据(如自适应比特率流传输中的历史吞吐量和不同比特率下的未来块大小):一维卷积神经网络(1D-CNN)
- 标量数据(如自适应比特率流传输中的缓冲区占用率):全连接层
- 图信息(如集群作业调度中的有向无环图):图神经网络(GNN)
在经过特征编码后,再通过一层可训练的线性投影层将编码得到的token适配给LLM,下图是视点预测的例子:

2、网络专用头:对于不同的任务,输出时将大模型的特征输出输入到不同的输出头。具体而言,是一个线性神经网络,使得大模型的输出结果能规范在有效输出范围内,同时仅需要单次推理,下图是ABR的例子

3、数据驱动低秩网络适配(DD-LRNA):
DD-LRNA 包含两大核心设计:一是适用于预测类和决策类网络任务的数据驱动适配流程;二是低秩适配方法,将微调过程限制在少量参数上,以实现更高效的适配。
- 对于预测类任务,采用监督学习即可
- 对于决策类任务,利用现有(非大型语言模型)网络算法收集经验数据集,然后基于该数据集微调大型语言模型以优化奖励。其核心思路是让大型语言模型通过观察现有算法的行为,学习更优的策略。也就是说,大型语言模型不仅要从带来良好性能的 “好动作” 中学习,还要理解某些动作导致 “差性能” 的原因 。【待详细了解】
四、实验结果

经过具体实验,NetLLM在VP、ABR、CJS三个任务上都达到了SOTA水准

在泛化性能上,NetLLM也高于传统算法。
