苹果推出新型大型开放语言模型OpenELM,它旨在提高自然语言处理领域的研究透明度和可复现性,确保研究结果的可靠性,并允许对数据和模型偏见以及潜在风险进行调查。例如,你想要开发一个能够自动生成新闻文章摘要的系统。使用OpenELM,你可以对模型进行微调,使它能够理解新闻文章的关键信息,并生成简洁准确的摘要。由于OpenELM的高效参数分配,你可以在保持模型大小不变的情况下,提高摘要生成的质量和准确性。此外,由于模型的开源性,你可以轻松地访问和修改模型的各个组成部分,以适应特定的应用需求。
OpenELM采用分层缩放策略,在转换器模型的每一层中有效分配参数,从而提高准确性。苹果使用CoreNet库对OpenELM模型进行了预训练,还发布了预训练模型和经过指令调优的模型,分别有2.7亿、4.5亿、11亿和30亿个参数。我们的预训练数据集包含RefinedWeb、去重的PILE、RedPajama的子集以及Dolma v1.6的子集,总计约1.8万亿个令牌。
主要功能和特点:
- 高效参数分配:OpenELM采用了层级缩放策略(layer-wise scaling),在每个transformer层中高效地分配参数,从而提高了模型的准确性。
- 开源:与以往只提供模型权重和推理代码的做法不同,OpenELM的发布包括了在公开可用数据集上训练和评估语言模型的完整框架,如训练日志、多个检查点和预训练配置。
- 性能提升:在相似的参数预算下,OpenELM在准确性上比现有的大型开放模型有所提高。例如,OpenELM在参数数量约为10亿时,比具有12亿参数的OLMo模型准确度高出2.36%,同时所需的预训练数据量减少了一倍。
- 公共数据集预训练:OpenELM使用公开数据集进行预训练,包括RefinedWeb、去重的PILE、RedPajama的一个子集和Dolma v1.6的一个子集。
- 实时标记化和数据过滤:与使用预标记数据的先前方法不同,OpenELM在训练时实时过滤和标记化文本数据,这使得可以使用不同的标记器进行无缝实验。
工作原理:
OpenELM的工作原理基于transformer模型,特别地,它采用了以下技术:
- 分组查询注意力(Grouped Query Attention, GQA):替代了传统的多头注意力(Multi-Head Attention, MHA)。
- SwiGLU前馈网络(SwiGLU FFN):替代了标准的前馈网络。
- Flash Attention:用于计算缩放点积注意力。
- 层级缩放:通过调整每个transformer层的注意力头数和前馈网络乘数,实现非均匀的参数分配。
具体应用场景:
- 自然语言理解:OpenELM可以用于各种自然语言理解任务,如文本分类、情感分析等。
- 问答系统:可以用于构建问答系统,回答复杂的问题。
- 文本生成:可以生成文章、故事或其他类型的文本内容。
- 研究和开发:由于其开源特性,OpenELM可以作为研究和开发新型自然语言处理技术的基础。
- 教育和培训:可以用于教育目的,帮助学生理解自然语言处理的工作原理。
0条评论