# 热门搜索 #
搜索
多语言大模型新SOTA!Cohere最新开源Aya-23:支持23种语言,8B/35B可选
8056点击    2024-05-31 18:18


虽然LLM在过去几年中蓬勃发展,但该领域的大部分工作都是以英语为中心的,也就是说,虽然模型的能力很强,但也仅限于英语、汉语等使用人数多的语言,在处理资源匮乏的语言时往往性能不佳。


想要破局多语言,两个关键在于强大的多语言预训练模型以及足量的、涵盖多种语言的指令训练数据。


为了解决上述问题,最近,加拿大的独角兽AI公司Cohere开源了两种尺寸(8B和35B)的多语言模型Aya23,其中Aya-23-35B在所有评估任务和涵盖的语言中取得了最好成绩。



论文链接:

https://cohere.com/research/papers/aya-command-23-8b-and-35b-technical-report-2024-05-23

Aya-23-8B: https://huggingface.co/CohereForAI/aya-23-8B

Aya-23-35B: https://huggingface.co/CohereForAI/aya-23-35B


覆盖的23种语言分别为阿拉伯语、中文(简体和繁体)、捷克语、荷兰语、英语、法语、德语、希腊语、希伯来语、印地语、印尼语、意大利语、日语、韩语、波斯语、波兰语、葡萄牙语、罗马尼亚语、俄语、西班牙语、土耳其语、乌克兰语和越南语。


作为Aya计划的一部分,Cohere最初与来自 119 个国家的 3,000 多名独立研究人员一起创建了一个庞大的多语言指令数据集Aya Collection,包含5.13 亿个提示和补全样本,并用该数据训练了一个覆盖101种语言的语言模型Aya 101,并于2024年2月开源。


但Aya 101模型的基础是mT5,在知识和性能方面都已经过时了,并且Aya 101主要侧重于覆盖度,在某些特定语言的性能表现上不佳。


此次开源的Aya-23模型,其设计目标是在语言广度和深度上实现平衡,从本质上来讲,所有Aya系列的模型都基于 Cohere 的 Command 系列模型和 Aya Collection,但本次的重点是将更多容量分配给主要的23种语言,以改善目标语言的生成效果。


多语言模型Aya 23


预训练模型架构


Aya 23模型家族是一系列基于Cohere Command系列的预训练模型,模型在训练时使用了23种不同语言的文本数据;Aya-23-35B是Cohere Command R模型的一个改进版本,经过了进一步的微调以提高性能。


模型采用了标准的decoder-only Transformer架构:


1. 并行注意力和前馈网络(FFN)层:类似于PALM-2,使用并行块架构,在不损害模型质量的情况下,显著提高了训练效率,特别是在张量并行(TP)设置中,即在多个处理器或设备上同时训练模型的不同部分。


2. SwiGLU激活函数:SwiGLU比其他激活函数具有更高的下游性能,研究人员调整了前馈网络(FFN)层的维度,以保持与非SwiGLU激活函数相比大致相同数量的可训练参数。


3. 无偏置:从稠密层中移除了所有偏置项(bias),以提高训练稳定性。



4. RoPE(旋转位置嵌入):可以帮助模型更好地理解和推断长文本中的上下文信息。RoPE在处理短文本时也能提供比ALiBi等其他相对位置编码方法更好的性能。


5. 分词器:模型使用了一个大小为256k的字节对编码(Byte Pair Encoding, BPE)分词器。在分词过程中,执行了NFC(Normalization Form C)规范化,即文本在分词前会被标准化,以确保一致性。数字被拆分成单独的token,以便于模型更好地理解和处理数字信息。分词器是在预训练数据集的一个平衡子集上训练的,以确保不同语言的文本都能得到高效的表征。


6. 分组查询注意力(GQA):每个键值(KV)头与多个查询(Q)头共享,可以降低模型推理时内存的使用,提高效率。


指令微调


由于多语言指令数据相对稀缺,研究人员采用了多种策略来增强数据的可用性:


1. 多语言模板:利用结构化文本,将特定的自然语言处理(NLP)数据集转换成指令和回复对。用到数据集包括xP3x数据集和Aya数据集的样本,最终形成了一个包含5570万个样本的大型数据集合,覆盖了23种语言和161个不同的数据集。


2. 人工标注:Aya数据集包含了由65种语言的母语者编写的204,000对人工策划的提示-响应对。我们从中筛选出我们训练模型所使用的23种语言的数据,得到了55,000个样本。


3. 翻译数据:使用了从广泛使用的英语指令数据集进行翻译的样本,从不同数据集、不同语言中随机抽取以保持多样性,最终数据包含了110万个样本。


4. 合成数据:使用了ShareGPT5和Dolly-15k的人工标注提示,不同的是,Aya使用了Cohere的Command R+为所有23种语言生成翻译后的ShareGPT和Dolly提示的多语言响应,最终得到了163万个样本。


实验评估


判别式任务


研究人员使用了不同模型在14种语言上的多语言机器学习理解(MMLU)基准上进行测试,选用的语言是Aya 23系列模型所支持的多语言MMLU测试语言的一个子集。


是根据英语MMLU的测试标准,采用了5-shot评估方法,与zero-shot未见任务相似的情况下,Aya-23-8B模型在所有比较的较小模型中表现最佳,在所有测试的语言上平均准确率达到了48.2%,并且在14种语言中的11种语言上取得了其类别中的最高分数。



当对比更大尺寸的模型时,Aya-23-35B模型在平均得分上超过了Mixtral-8x7B-Inst模型(分别为58.2%和57.1%)。


尽管Mixtral在资源丰富的语言上表现略好,但Aya-23-35B在非欧洲语言上的表现尤为突出,例如在阿拉伯语、印地语和越南语上,Aya-23-35B的准确率分别提高了12.1%、10.0%和6.5%。这表明Aya-23-35B在处理资源较少或非欧洲语言时,具有更强的性能。


多语言数学推理


在数学问题解决能力测试(MGSM)中,Aya 23系列的模型在所有同类基线模型中表现最为出色,表明模型具备了在不同语言中进行强大数学推理的能力。


具体来说,Aya-23-8B模型在7种语言上的平均得分高达36.6分,而同类中排名第二的Gemma-1.1-7b模型得分为34.0分。



特别引人注目的是,Aya-23-8B模型的性能是Aya-101-13B模型(得分8.1分)的4.5倍,这再次强调了高质量预训练模型的重要性。


对于规模更大的模型,Aya-23-35B模型以53.7分的成绩超过了Mixtral-8x7B-Instruct-v0.1模型的50.2分。


在个别语言的得分方面,除了Aya-23-8B模型在法语和俄语上的得分,以及Aya-23-35B模型在日语上的得分之外,Aya 23系列模型在每种语言上都超越了同类中最强的模型,表明Aya 23系列模型在解决数学问题的能力上普遍优于同类模型,尽管在某些特定语言上可能仍需进一步的优化。


生成式任务


研究人员还测试了Aya 23系列模型在23种语言与英语配对的翻译任务(FLORES),以及15种语言的摘要任务(XLSum)。


在评估基准中,Aya 23系列模型的表现明显优于其他相似规模的模型。


具体来说,Aya-23-8B模型在翻译任务中的平均spBleu得分为37.2,比排名第二的Aya-101-13B模型高出4分;在摘要任务中,Aya-23-8B和Aya-101-13B模型的平均RougeL得分为27.5,比下一个最佳模型Gemma-1.1高出14.5分。



在大型模型的对比中,Aya-23-35B在翻译任务中以7.8分(40.4 vs 32.6)的spBleu得分优势超越了Mixtral-8x7B,在摘要任务中则以23.8分(30.9 vs 7.1)的优势超越。


还可以注意到,Mistral-7B和Mixtral-8x7B模型倾向于在提示中生成英语回复,也导致了模型在多语言摘要任务中的性能不佳。


文章来源于“新智元”,作者“新智元”


关键词: 多模态大模型 , 大模型 , Aya23 , AI , LLM
AITNT资源拓展
根据文章内容,系统为您匹配了更有价值的资源信息。内容由AI生成,仅供参考
1
AI数据分析

【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。

项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file

本地安装:https://www.deepbi.com/

【开源免费airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。

项目地址:https://github.com/hitsz-ids/airda

2
微调

【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。

项目地址:https://github.com/InternLM/xtuner