TelecomGPT:面向电信领域的大语言模型
文摘
科学
2024-08-13 15:08
陕西
大语言模型(LLMs)有望彻底改变第六代移动通信网络(6G)的设计范式,然而当前主流的LLMs普遍缺乏电信领域的专业知识。在此背景下,来自阿布扎比科学创新研究所以及哈利法大学的研究团队首次提出了一种将通用LLMs应用于电信领域的设计框架。在此框架中,研究人员首先收集并构建了电信专用的预训练数据集、指令数据集和偏好数据集,分别用于持续预训练、指令微调和对齐。此外,研究人员扩展了现有的评估基线,提出了三个新的基线,即电信数学建模、电信开放问答和电信代码任务。这些新的基线任务全面评估了LLMs在电信领域的能力,包括数学建模、开放式问答、代码生成、代码补全、摘要和分析。评估结果显示,微调后的LLM TelecomGPT在电信数学建模基线测试中显著超越了最先进的LLMs,包括GPT-4、Llama-3和Mistral,并在TeleQnA、3GPP技术文档分类、电信代码摘要与生成及代码补全等各种评估基线中表现出色。TelecomGPT: A Framework to Build Telecom-Specfic Large Language Models
Hang Zou1, Qiyang Zhao1, Yu
Tian1, Lina Bariah2, Faouzi Bader1, Thierry
Lestable1, and Merouane Debbah1,2
1Technology Innovation
Institute, 9639 Masdar City, Abu Dhabi, UAE
2Khalifa University, Abu
Dhabi 127788, UAE
https://arxiv.org/html/2407.09424v1
本文分享仅用于技术交流,未经许可禁止用于商业用途。近年来,LLMs的进展引起了各个领域的广泛关注,包括电信行业。LLMs如GPT-4、Llama系列、Mistral系列和Falcon系列,已经在自然语言理解和生成任务中展示出了非凡的能力。这些LLMs有望对6G通信系统带来革命性的影响。与已经广泛应用于电信领域的传统深度学习(DL)技术不同,LLMs具有更强的泛化能力和新兴的智能特性,使其成为开放无线接入网络(O-RAN)中无线资源管理(RRM)等应用的理想工具。此外,LLMs还能促进更复杂和自适应的通信协议的开发,从而提高电信网络的效率和弹性。然而,将主流的LLMs集成到现有的电信系统中面临诸多挑战。首先,主流LLMs的模型规模较大,直接在无线网络中部署存在困难。模型压缩技术,如LLM-QAT和BitNet中的1比特量化,使得在边缘设备(例如手机)上部署主流LLMs成为可能。其次,LLMs的推理时间较长,难以满足超可靠低时延通信(URLLC)在5G后网络中的要求。以车联网(V2X)为例,当自动驾驶汽车需要做出关键决策或向周围车辆传递重要信息时,等待LLMs完成生成是不可能的。系统级和算法级的推理加速技术与架构(如KV缓存、FlashAttention和专家混合模型MoEs)可以大幅提高LLMs的吞吐量(每秒处理的tokens数量),以缓解这一问题。最后,即使通过多种技术组合缓解了内存不足和高延迟等物理挑战,LLMs在无线网络中完成电信特定任务仍然面临根本性困难,原因是其普遍缺乏电信领域的知识。在此背景下,研制电信专用或电信特定的LLMs十分必要,这正是本文试图解决的核心问题。实际的电信网络依赖于标准制定组织(SDOs)如第三代合作伙伴计划(3GPP)、电气电子工程师学会(IEEE)和国际电信联盟(ITU)预定义的协议和标准。然而,最新的SOTA模型如GPT-4在TeleQnA中几乎无法正确回答一半的标准相关问题,这严重阻碍了其在网络中的潜在部署。因此,必须在各个方面增强现有LLMs的电信知识,以便无缝集成到当前网络中。具体而言,构建电信专用LLM面临以下(但不限于)几个主要挑战:1)缺乏电信文本数据集:尽管电信领域拥有大量的文本文档,但几乎没有可用于预训练或微调电信专用LLM的开源数据集;2)技术文档的主导性:Tdocs、规范和以专业方式撰写的研究论文占据了整体文本文件的主导地位,使得LLMs的训练充满挑战;3)多模态内容:重要的概念、场景和方法通常以不同格式表示,例如标准和专利中的图表和表格;4)知识的频繁更新:标准制定组织的定期发布公告和研究出版物的快速发展,使得LLMs因其高昂的训练成本和较长的训练时间,难以及时更新。因此,与其从头开始预训练一个电信LLM(成本昂贵且当前尚未准备就绪),不如在可接受的成本和训练时间下,将通用LLMs适应于电信领域。针对这一诉求,本文的贡献主要包括以下几个方面:1)收集并构建了一个电信专用的预训练数据集,用于构建电信专用LLMs;2)构建了一个高质量的电信专用指令数据集,涵盖电信领域内各种任务的指令;3)提出了有效的基线来评估LLMs在电信环境中的关键能力,例如知识查询、数学建模、Tdocs分类、代码生成和分析;4)提出了一种将通用LLMs适应到电信专用LLMs的流水线模式,该流水线包括在电信背景下进行的持续预训练、指令微调和对齐;5)训练了一个电信专用LLM,可用于电信领域中的多种下游任务。预训练数据集主要从网络上收集,包含电信标准、研究论文、书籍、专利、问答、维基百科和代码等内容。根据这些数据的来源,我们开发了以下两种预处理模式。电信标准:3GPP是电信领域的主要标准制定组织(SDO)。自1999年以来,3GPP开发了3G、4G和5G的通用标准。3GPP基于企业提供的Tdoc文档,并最终输出技术标准。标准工作由技术标准组(TSGs)执行。TSGs分为三个技术标准组:无线接入网(RAN)、系统架构(SA)和核心网与终端(CT)。每个TSG由多个工作组组成,专注于特定领域,从无线接入网规范、核心网规范、服务需求和规范、移动通信系统的架构和协议,到移动通信系统中的服务质量(QoS)和性能要求、安全和隐私、互操作性和兼容性要求、网络管理与操作,以及测试和认证程序。我们从3GPP FTP站点抓取了R18至R19的技术标准、报告和文档。IEEE是另一个重要的SDO,开发了如WiFi和以太网等流行的电信标准。我们从IEEE Get程序中抓取了IEEE 802.11、802.3、802.15和C95.1系列的标准文档。使用以下方法对原始标准文档进行预处理,包括:1)使用BeautifulSoup解析HTML标签,返回不带HTML标签的文本内容;2)从文本中删除任何URL(网页链接):识别正则表达式模式,匹配以“http”或“https”开头并可能包含字母数字字符、特殊字符和编码字符的URL;3)使用BeautifulSoup从解析的HTML文档中删除表格;4)将每个文档分割为多个不同字数的文本片段,这些片段是从自然语言工具包(NLTK)中提取的。这使我们能够评估模型理解不同长度技术描述的能力;5)删除页眉、页脚、标题和伪代码,并消除参考文献及其后的所有文本;6)删除变更请求、草案和模板,因为这些内容的技术信息有限。从通用数据集中筛选电信内容:尽管目前没有开源的电信专用预训练数据集,但在通用预训练数据集中,如C4、RefinedWeb和Redpajama中存在大量电信内容。我们选择了Rejama-1T来演示如何从通用数据集中筛选出电信相关内容,以利用其分类结构,同时也考虑到我们的硬件限制。RedPajama-1T是一个开源预训练数据集,由7个子集组成:Commoncrawl、C4、Github、Books、Arxiv、Wikipedia和StackExchange。整个数据集包含12亿个文本tokens。为了从开源数据集中筛选出所有电信相关内容,我们的框架分为两个步骤:关键词筛选和去重。为了从通用数据集中选择电信专用数据,我们从电信教科书、开放的3GPP技术规范的定义和缩写部分等来源中收集并选择了700个不完全的关键词。为了避免由于缩写的多义性引入不相关内容,我们在整个数据集的一小部分上测试了我们的关键词,并删除了那些经常引入噪音的缩写,如DL(深度学习与下行链路的缩写)和SAP(服务访问点与系统应用与产品的缩写)。对于每个数据样本,我们引入了两个量来评估其与电信领域的相关性:电信关键词的数量(相同的关键词只会被计算一次)和电信关键词密度。一个包含N个词的文本中,总共匹配了M个电信关键词,其密度为 M / log(N + 1) 。使用总词数的对数而非词数本身的原因是为了补偿那些长文档。例如,一个包含1000个词并具有30个电信关键词的长文本,与只有1个电信关键词的100词短文本相比,被认为与电信领域的相关性较低,这是不合理的。此外,总关键词数量也是避免在最终数据集中获取假阳性数据样本的有效指标。去重是指删除数据集中冗余或重复内容的过程。去重对于提高预训练效率以及数据多样性至关重要。对于电信专用的LLMs,这一过程是不可避免的,因为大多数标准或协议通常由多个标准制定组织(SDOs)批准,例如3GPP和欧洲电信标准协会(ESTI)的技术规范。此外,某些主题的多个版本自然会引入冗余内容。为了简化,我们直接在xorbits中应用了现有的去重工具。研究表明,数据集中不同任务的多样性比同类型指令的数量更为重要。我们的指令数据集涵盖了电信领域内的多个关键任务:1)多选题(MCQ)解答:从多选题中选择所有正确答案;2)开放式问答:以开放式方式回答来自标准、研究论文或专利的电信相关问题;3)技术文档分类:将来自不同Tdocs的文本分类到标准制定组织(SDOs)图书馆中记录的相关工作组;4)数学建模:根据给定的系统模型和问题表述文本描述,生成准确的数学方程,如信道模型,并使用预定义符号在电信上下文中进行建模;5)代码生成:为电信领域的特定任务/功能生成脚本/函数,如发送信号指示器和从帧中提取MAC地址;6)代码填充:根据上下文和目标功能填充不完整的脚本。这项任务也被称为“中间填充”(Fill-In-the-Middle,
FIM)任务,有助于开发人员或研究人员在生成电信相关脚本时提高效率;7)代码摘要:总结给定脚本的核心功能,包括识别该脚本是否与电信相关;8)代码分析:详细说明函数背后的操作逻辑,强调电信领域的知识和原理;10)通用指令:解释概念、描述规范、识别问题、提出解决方案、总结电信标准、专利和论文中的内容;11)协议指令:根据人工提示生成电信标准中的协议工作流程。像Tdoc分类、数学建模和代码填充这样的指令可以很容易地从原始文本、论文和代码中生成。对于剩余的任务,我们利用大型SOTA模型(如GPT3.5或GPT4)通过精心设计的提示生成指令,并进行专家筛选和验证。在对我们的电信指令数据集进行SFT(监督微调)后,我们发现SFT模型总体上学会了如何执行电信相关任务。然而,仍然存在一些不理想的响应,例如生成内容重复、回答过短和电信无关的内容。我们简单地定义了以下偏好:在没有特别请求的情况下,提供简洁准确的答案,并尽量减少信息量。这种偏好有助于减少LLM(大语言模型)通信系统中引入的延迟,并在简单意义上与语义通信等概念相一致。在这里,我们只是展示了如何将LLM的响应与人类偏好对齐,以处理电信相关任务。此外,在偏好方面的契合程度可以通过比较ROUGE得分和真实数据与LLM响应的长度等指标来测量。因此,我们的偏好数据集是通过选择性能指标较低的指令获得的。预训练的LLM可以在提供明确的偏好描述时,用于选择符合偏好的响应。由于可用GPU资源的限制,我们将基础模型的大小限制为不超过8B,选择的基础模型包括Llama2-7B、Mistral-7B和Llama3-8B,以及一些相应的指令模型。在8台AWS ml.p4d.24xlarge实例上使用OpenTelecom数据集对通用LLM进行持续预训练,训练时间大约为6小时。对于Llama3-8B,不再进一步预训练,主要有两个原因:1) Llama-3系列的预训练数据集包含15 TB的tokens,预训练数据集主要基于开放文档构建,无法确定本文构建的数据集是否已用于训练Llama3-8B;2) 由于硬件限制,无法有效地在合理的批次大小下继续预训练。使用QLoRA对预训练的LLM进行指令微调。选择QLoRA的原因如下:i) QLoRA作为正则化器,以避免微调LLM的灾难性遗忘;ii) 由于电信领域的快速发展,本文的框架应该保持灵活,以适应新标准和研究成果的潜在更新。适配器的秩选为r=512,α=256,丢弃率为0.05。对于训练设置,使用AdamW优化器,学习率为2.0×10^-4,训练3个epochs,不使用权重衰减。此外,使用FSDP在一个ml.p4d.24xlarge实例上的8个32GB内存GPU上加速训练。整个训练过程大约花费了1.5小时。与指令微调阶段类似,利用QLoRA对模型进行正则化,以确保对齐模型不会偏离SFT模型太远。使用AdamW优化器,结合一个余弦学习率调度器,初始学习率为5.0×10^-6。QLoRA适配器的秩选为r=256,α=128,丢弃率为0.1。在DPO设置中,β=0.1被选用。我们同样使用FSDP对SFT模型进行一个完整epoch的训练。在完成持续预训练、指令微调和对齐微调后,我们希望评估获得的电信专用LLM在一些关键电信任务中的表现,这些任务包括学术应用和工业应用。然而,目前可用的电信专用评估基线较少,例如TeleQnA。此外,单凭在多选题(MCQ)中表现出极高的准确率的LLM可能无法满足实际应用的要求,例如在指令微调阶段提到的任务。因此,构建合理的基线来评估电信专用LLM在各种下游任务中的能力十分必要。多选题问答(QA):基于创建TeleQnA数据集的流程,我们利用GPT-4生成问题。首先,清理原始的电信相关文本,如ArXiv论文、维基百科页面、专利和教科书,删除其中的参考文献,以防生成的问题与特定文献有关。然后,使用两个LLM代理来自动化生成过程。将清理后的文本提供给第一个GPT-4代理,并使用图2中所示的提示进行操作。之后,将原始文本和生成的问题输入到第二个GPT-3.5代理中,以验证生成问题的正确性。如果获得了正确的答案,将保留该问题-答案对,否则将其删除。最后,我们进行人工验证以确保生成的问题-答案对的正确性。开放式问答(QA):采用相同的方法来创建一个非上下文QA的评估数据集,其中所有选项都被移除。在这一基线中,LLM对问题生成开放式答案,并使用ROUGE得分与地面真实答案进行评估。这使得评估更接近实际的QA使用场景。该数据集还用于在指令和对齐微调期间,将LLM与电信领域的首选响应进行对齐。电信专用LLM的一个关键能力是理解和处理技术文档。这样知识的重要性体现在三个方面。首先,当设想一个LLM(代理)作为网络管理的决策者时,LLM必须理解其所面临的具体场景,并遵循既定的标准和协议。其次,了解操作的有效范围至关重要。例如,参考3GPP TS38.213定义的某些累积和绝对功率调整的上行传输功率控制(TPC)命令字段。最后,了解标准和协议使LLM能够预测其操作的影响以及其他实体的反应。总之,如果缺乏对技术文档的深入和准确理解,任何LLM在实际网络中操作都将面临困难。为了评估这些能力,一种简单但有效的方法是首先识别文本与给定Tdoc的相关性。因此,我们按照之前工作的相同方法,将从Tdoc中提取的随机文本分类到3GPP的一个唯一工作组:CT1、CT3、CT4、CT6、RAN1、RAN2、RAN3、RAN4、RAN5、SA1、SA2、SA3、SA4、SA5和SA6。LLM不会提供进一步的上下文信息。尽管任务极其简单,大多数主流通用LLM在零样本设置下准确预测工作组仍然困难。电信专用LLM的一个关键能力是使用电信术语准确建模相关环境或问题,并通过精确的数学方程式将任务表述为严格定义的问题。要求LLM进行系统建模和问题表述需要深入的电信知识和事实推理能力。因此,我们认为一个能够评估LLM在电信背景下数学建模能力的基线对全面评估电信专用LLM至关重要。然而,由于建模的灵活性(考虑到文献中存在的无数潜在假设和广泛的模型变体),直接评估LLM生成的系统模型或问题表述的有效性具有挑战性。因此,建立一个简单但有效的基线来评估LLM的问题建模和表述能力至关重要。本文提出以下掩码方程式来实现任务填充:对于研究论文或任何技术文档,首先提取与系统建模和问题表述相关的段落。然后,掩盖一些关键方程,例如系统模型、信道模型、编码和解码方案。此类掩码语言建模任务在语言理解任务中被广泛使用,例如在BERT及其变体中,并且在这里方程式被完全掩盖时已被证明是有效的。掩盖的方程式将被一个特殊的占位符<MASK>替换,以指示存在缺失的方程式。同时,由于不同符号表示的无数可能性,尝试避免掩盖那些与定义相关的方程,这些通常在其他文档中引用(通常是内联定义)。最后,LLM将被要求恢复这些方程,并将预测的方程与真实值进行比较,以根据预测质量获得一个分数。为了进一步简化任务,LLM每次仅被要求预测一个方程。在预测方程之前,将提供上下文及真实方程(而非之前轮次预测的方程)。如何将预测方程与真实值进行评估仍然是一个问题。本文使用MathBERT(一种在大量数学方程数据集上微调的BERT变体)来评估预测方程和真实值之间的平均余弦相似度,MathBERT的余弦相似度适应于方程的操作树,因此可以用作数学结构意义上的语义相似度。实际的电信系统中使用了不同语言编写的代码。理解和生成符合标准或协议的电信任务所需代码对电信专用LLM至关重要。此外,代码分析和生成能力对于LLM与现有模拟器的互动也很重要。我们考虑了电信领域中四种常用的编程语言:C、C++、Python和Matlab。由于缺乏相关的开源数据集,标准的代码相关任务(如代码修复/编辑)未被包括在内。用于构建基线的数据样本是按照电信内容过滤过程中的相同逻辑进行选择的。我们进一步选择了具有较多电信关键词、复制数量和关键词密度的代码文件,以确保数据的质量和与电信领域的相关性。然后我们从这些文件中提取与电信相关的功能模块。对于代码生成,使用图3所示的提示来请求GPT-4生成相应的生成请求。总结和分析指令可以通过类似的提示获得,我们在此省略以避免重复。对于代码填充任务,随机用特殊占位符<FILL>替换代码文件中间的几行连续代码,缺失的代码部分被认为是真实值。由于电信相关脚本的复杂性,直接评估脚本的有效性类似于常见基线(如HumanEval)较为困难。因此,我们使用Rouge得分来比较生成脚本与真实值之间的相似性。尽管很难判断生成代码行的质量,但这为评估电信领域生成脚本的相关性提供了一个合理的指标,而不是实际效果。使用LLMs提升电信系统研究、设计和开发的生产力是电信行业的关键应用,例如,它可以帮助研究人员在文献中寻找电信问题的解决方案,或指导工程师识别实现标准中电信功能的关键步骤。为了增强电信GPT在遵循电信用户首选指令的能力,我们进一步开发了以下两个基线测试:通用指令:利用GPT模型从标准文档、规格说明、研究论文和专利中创建了一系列指令任务。示例任务包括在指定场景中识别问题、解释标准中的技术特性、寻找研究问题的可能解决方案等。生成数据使用的提示包括:1) 任务的描述、格式和规则,以避免引用特定的图表、表格、章节等;2) 一些指令任务的示例;3) 来自预训练数据集的文本片段。输出包括任务指令、上下文信息的输入(如场景描述)和期望的答案响应。协议指令:本文创建了一个数据集,用于生成按照人工指令定义的电信标准中的协议工作流程。例如,对于指令“识别UE实施能力支持的不同类型APN/DNN”,从标准生成的期望响应是:1) 验证默认APN/DNN设置;2)验证不同用途的APN ID;3)对齐APN/DNN配置;4)提交APN/DNN ID。表I展示了在不同训练阶段的SOTA LLMs和我们的LLMs在TeleQnA基线的不同类别中的准确率。在对我们的电信指令数据集进行指令微调后,所有基础模型的准确率都有明显提高。此外,本文所提出的TelecomGPT模型在性能上优于基础模型的指令微调版本,并且在模型规模明显较小的情况下,与GPT-4的性能相当。经过对齐阶段后,准确率略有下降。这一下降可能是由于对齐数据集的选择策略(正确和错误选项遵循相同的响应格式)。此外,对于每个类别,都存在准确率显著提高的模型,显示出微调的影响。然而,由于与标准规格相关的问题包含技术细节,例如重要特性的精确值、定义场景的程序,所有测试的LLMs在标准规格上的平均准确率仍然有限。表II总结了使用SOTA LLMs和我们的电信特定LLMs在测试数据集上的3GPP Tdocs分类的平均准确率。该测试数据集包含2000篇来自所有16个工作组的文本。在指令微调阶段,仅使用了每个工作组1000个数据样本,大多数电信特定LLMs的平均准确率接近70%,而GPT-4o和GPT-4的准确率不到40%。此外,各技术规范组(TSG)的分类准确率略有不同(RAN的准确率明显高于SA),显示了对3GPP Tdocs的理解存在不平衡。我们比较了主流LLMs和TelecomGPT在不同训练阶段的表现。表III展示了MathBERT的平均得分以及预测方程中MathBERT得分大于90%和50%的比例。由于任务难度较大和通常需要较长的上下文,我们在约600个方程上测试了方程填充能力,这些方程随机从170篇研究论文中提取。可以观察到,在SFT之后,平均MathBERT得分超越了所有主流LLMs,如Llama3-8B-Instruct和Mistral-7B-Instruct(相似模型规模)以及GPT-3.5和Mistral-8x7B(较大模型规模)。此外,SFT之后,我们的模型在方程得分大于50%的比例与SOTA LLMs相当,并且在方程得分大于90%的比例上有显著提高,这表明预测的方程与真实方程的操作树几乎相同,可能在细节上有所不同,如运算符、指数、操作顺序等。SFT后的平均得分增加表明我们的电信特定指令数据集的有效性。此外,在与人类偏好对齐的DPO算法之后,可以观察到得分略有提高,显著超越了SOTA LLMs,如GPT-4和GPT-4o(具有极大模型规模和预训练数据量)。此外,预测方程得分高于50%的比例也有所提高,略优于SOTA LLMs。MathBERT得分的累积分布函数(CDF)在图4中展示。TelecomGPT的CDF曲线超越了大多数SOTA模型,并在MathBERT得分大于60%时主导了GPT-4,论证了本模型在提供明确系统模型上下文时最佳的数学建模能力。最后,所有LLMs的平均得分接近50%,这表明当前模型的数学建模能力仍相对较弱,表明大模型在数学建模领域仍有难度。图 4 各类模型在不同训练阶段获得的电信数学建模基线的累积密度函数VS MathBERT分数(与GPT-4相比,TelecomGPT在电信建模方面实现了更好的相关性)在表IV中,本文比较了LLMs在我们基线中提出的四项代码任务的表现。与通用LLMs相比,SFT模型和对齐模型在Rouge得分上显著更高,这表明电信内容的相关性有了明显提升。在代码总结和分析任务中,SFT模型和对齐模型的Rouge得分相近。此外,通用LLMs提供的响应虽然详细全面,但十分复杂(有时甚至不相关)。表IV 各类模型在不同代码任务的Rouge1和RougeL得分的平均F-度量表V展示了不同LLMs在电信领域开放式问答、通用指令跟随和协议指令跟随任务中的Rouge得分。与代码任务类似的观察结果在这些任务中仍然适用。指令微调显著提高了Llama-3和Mistral在所有任务中的Rouge得分,而对齐则提升了开放式问答和通用指令任务的得分。表V 各类模型在指令遵循方面的Rouge1和RougeL得分的平均F-度量本文提出了一个完整的构建电信特定LLMs的流程框架,该框架能够有效地从通用预训练数据集中选择电信相关内容,并通过构建指令数据集和偏好数据集,来进一步对LLMs进行指令微调,以执行各种下游任务,并与人工偏好对齐。此外,本文提出了有效的基线测试来评估LLMs在电信环境中的能力,并通过实验结果验证了这些基线测试。通过电信特定的微调流程获得的模型优于相应的基础模型以及具有更大规模的先进模型。由于资源限制,本文的实验仍处于小规模阶段,用更大的数据集从头开始预训练有望构建更好的电信特定LLMs。此外,本文的模型目前只能处理文本数据,这限制了当前框架的潜力,未来可以考虑集成其他数据模态,如无线信号等模态。GenAINet公众号由IEEE Large Generative AI Models in Telecom (GenAINet) ETI成立,由GenAINet公众号运营团队负责维护并运行。
GenAINet公众号运营团队:
孙黎,彭程晖 (华为技术有限公司)
杜清河,肖玉权,张朝阳 (西安交通大学)
王锦光,俸萍 (鹏城实验室)
编辑:肖玉权
校对:张朝阳