微软3.8B模型媲美GPT-3.5!小到用iPhone就能跑起来,网友:Good data is all you need! 原创
撰文、整理 | 伊风
出品 | 51CTO技术栈(微信号:blog51cto)
这周,“小模型”之战打得可谓精彩非凡,让人目不暇接。前脚,小扎刚在采访中自豪地宣布Llama3 80亿模型几乎与此前Llama2 700亿模型的性能差不多!
紧接着,微软祭出的“Phi-3-Mini”以3.8B的小体积,跑出Mixtral 8x7B和GPT-3.5等大模型才有的成绩,似乎在用实力证明,在小模型这件事上,微软才是真正的领先者。让人直呼离谱!
下图能看到Phi-3-Mini并非夸张!通过学术基准和内部测试来看,Phi-3-Mini在MMLU上达到了69(高于Mixtral 8x7B的68.4),在MT-bench上达到了8.38(高于GPT的8.35 )。
图片
这下Phi-3-Mini是一个名副其实的小体积,大性能的模型了。研究人员直接用iPhone进行了测试。
结果:Phi-3-Mini可以在手机上完全离线地本地运行,该模型的小体积使其可以量化到4位,占用仅约1.8GB的内存(比微信小得多)。Phi-3-Mini在iPhone 14上使用A16 Bionic芯片进行了原生部署,完全离线运行,每秒可以生成超过12个token。
今早,Phi-3-Mini已经进行开源,感兴趣的朋友可以移步地址:
https://huggingface.co/microsoft/Phi-3-mini-4k-instruct
Phi-3-Mini好到不像真的。X上知名科技博主说,看完Phi-3-Mini,她毫不怀疑今年年底有超越GPT-4的7B模型会诞生!
图片
1.Phi-3-Mini的独门心法:更好的数据集
模型到底是怎么做到“又小又好的”?Phi-3-Mini的技术报告中写着“创新完全在于我们的训练数据集”。
Phi-3-Mini模型的训练重点放在了数据的质量上,而不是单纯的数据量或规模。他们使用了用于Phi-2的训练数据集的扩展版本,由经过严格过滤的网络数据和合成数据组成,数据集共3.3万亿tokens。
这种方法偏离了传统的仅仅依赖于数据量来提升模型性能的scaling laws。这意味着在训练过程中,更加关注于使用高质量、精心筛选和优化的数据,提高模型的性能和效率。
Phi-3-Mini的预训练分“两步走”。
第一阶段:主要使用网络数据,目的是教授模型通用知识和语言理解能力。这些数据是从开放的互联网源中获取的,并且是根据“教育水平”进行重度过滤的,以确保数据的相关性和准确性。
第二阶段:在该阶段中,预训练过程进一步合并了更加严格过滤的网络数据(这些数据是第一阶段中使用的子集)和一些合成数据。合成数据是通过使用大型语言模型(LLM)生成的,目的是教授模型逻辑推理和各种专业技能。
当然小模型也有弱点。Phi-3-Mini由于其体积太小,在某些任务上受到根本性的限制。例如,它缺乏存储大量“事实知识”的能力,导致在TriviaQA等任务上的表现较差。
不过Phi-3-Mini也有对策,相信朋友们也猜到了,那就是:RAG!——通过为模型增加搜索引擎,可以解决这样的弱点,所以虽然AI能离线运行在你的手机上,还是有网的时候更香!
2.更大的模型的探索:7B到14B的提升不够显著
微软还推出了Phi-3-Mini模型的两个扩展版本:Phi-3-Small和Phi-3-Medium模型,它们都比Phi-3-Mini有显著的更强能力。
Phi-3-Small拥有70亿参数,使用tiktoken分词器以改善多语言分词。它拥有100,352的词汇量和8K的默认上下文长度。
Phi-3-Medium,拥有140亿参数,使用与Phi-3-Mini相同的分词器和架构,但训练了更多的tokens。
性能表现上,更大的体积当然提升了性能。在MMLU(Massive Multitask Language Understanding)基准测试中,Phi-3-Small和Phi-3-Medium相较于Phi-3-Mini(得分68.8%)表现出显著的性能提升。
具体来说,Phi-3-Small在MMLU上得分为75.3%,而Phi-3-Medium得分为78.2%。
不过,研究人员发现:在从3.8B参数扩展到7B和14B参数时,某些基准测试的提升幅度有所不同,从7B到14B的提升可能没有从3.8B到7B的提升显著。
这个结论启发了研究人员,训练数据混合可能需要进一步的优化,以达到14B参数模型的“数据最优范围”。
3.Good data is all you need
合成数据并不是一个新概念。随着新的AI模型和GenAI模型的出现,“合成数据”这个术语获得了新的含义。
合成数据最常见的两个用途是性能测试和可扩展性场景。此外,许多科学场景和其他应用依赖于合成数据来探索新的可能性和运行模拟,因为合成数据可以代表超越现实世界数据可能代表的假设情况。
此前,人们启用合成数据是因为开发人员没有足够的数据来训练他们的模型,现在,经过严格过滤的合成数据似乎能提升数据集质量,改变模型在数据中“大浪淘沙”的境地。
合成数据的典型好处有以下几条:
- 优化隐私和安全:通过使用合成数据而不是真实数据,组织可以在仍然训练有效的AI模型的同时保护敏感的用户信息。
- 改善数据多样性:合成数据可以增加有限的真实数据,创建更全面和具有代表性的培训集,引入更多样化的数据进入AI训练。
- 减少偏见:合成数据提供了引入可控偏见的可能性,这些偏见可以识别模型中的无意偏见,并通过分析算法进一步减少。
- 提高可用资源的有效利用:生成合成数据比收集、处理和存储大量真实数据更具资源效率。
当然,这些好处都必须基于严格过滤的基础之上,否则可能带来多种风险。
4.写在最后
模型的“瘦身”潮流呼应着大家对AI能力应用、落地的期待。人们不再满足于如此强大的AI能力,却止步于聊天机器人单一的对话窗口中。而手机作为日常使用频率最高的端侧电子设备,无疑是接入AI能力的绝佳入口。
如今微软、苹果都在紧锣密鼓地研究能在端侧运行的小模型,国内的手机厂商也纷纷将AI作为“全村最后的希望”。
周鸿祎说,不做AI能力的手机厂商会沦为诺基亚,这句话正在成为一个普遍的共识。AI手机能做的不止是通过语音交互设置一个闹钟,也远不止于消除照片中闯入的行人。
一个超越GPT-4性能的小模型设想无疑让人兴奋:高性能AI模型更小一点,我们距离将智能助理装入口袋就更近一点。
参考链接:
1.https://analyticsindiamag.com/microsoft-introduces-phi-3-llm-that-runs-on-the-phone/
2.https://www.nytimes.com/2024/04/06/technology/ai-data-tech-companies.html
本文转载自 51CTO技术栈,作者:伊风