新智元报道
编辑:LRS
【新智元导读】 技能迸发的年代,一切都得拼手速!
先是ChatGPT的发布给世界带来了一点小小的NLP震撼,随后发布的GPT-4更是破圈核算机视觉,展示了特殊的多模态才能。
不但能读懂人类的梗,给个手绘草图乃至能够直接写出网站的代码,完全颠覆了对言语模型、视觉模型才能边界的认知。
GPT-4:图里的这个「Lighting充电线」,看起来便是个又大又过气的VGA接口,插在这个又小又现代的智能手机上,反差激烈。
不过像GPT-4这么好的模型,CloseAI选择闭源,让广阔AI从业者实在是又爱又恨。
最近,来自沙特阿拉伯阿卜杜拉国王科技大学的研讨团队开源了GPT-4的平民版MiniGPT-4,从效果上看现已基本具有GPT-4所展示出的多个功能,包括手写网页示意图生成代码、解读图画中的梗等。
论文链接:github.com/Vision-CAIR…
项目链接:minigpt-4.github.io/
代码链接:github.com/Vision-CAIR…
想要本地布置,一行代码即可搞定!
python demo.py --cfg-path eval_configs/minigpt4_eval.yaml
默认加载选项为8bit Vicuna模型以节约GPU内存,beam search的宽度为1,大约需要23G显存。
为了实现有用的MiniGPT-4,研讨人员提出了一个两阶段的练习方法,先在很多对齐的图画-文本对上对模型进行预练习以取得视觉言语常识,然后用一个较小但高质量的图画-文本数据集和一个设计好的对话模板对预练习的模型进行微调,以提高模型生成的可靠性和可用性。
文中的研讨成果表明,MiniGPT-4具有许多与 GPT-4相似的才能,如经过手写草稿生成具体的图画描绘和创立网站;还能够观察到 MiniGPT-4的其他新功能,包括根据给定的图画创作故事和诗歌,为图画中显示的问题供给解决方案,教用户如何根据食物照片烹饪等。
论文作者朱德尧来自泉州,现在是阿卜杜拉国王科技大学(KAUST)的博士生,首要研讨方向包括多模态大言语模型、预测模型和强化学习。
论文共同一作Jun Chen现在是阿卜杜拉国王科技大学 Vision-CAIR 研讨小组的博士生,首要研讨方向为多模态学习、自监督学习和大规模预练习模型。
MiniGPT-4模型架构
研讨人员以为,「GPT-4强壮的多模态生成才能首要来自于更强的言语模型」。
为了验证这点,研讨人员选择固定住言语模型和视觉模型的参数,然后只用投影层将二者对齐:MiniGPT-4的言语解码器运用Vicuna(根据LLaMA构建),视觉感知部分运用与BLIP-2相同的视觉编码器。
1. 预练习阶段
为了从很多对齐的图画-文本对中获取视觉-言语常识,研讨人员把注入投影层的输出看作是对言语模型的软提示(soft prompt),促使它生成相应的ground-truth文本;而且预练习的视觉编码器和视觉编码器在预练习阶段始终保持参数不变,只练习线性投影层。
练习数据集包括Conceptual Caption, SBU和LAION,运用4张A100(共80GB显存) GPU以256的batch size练习了20000步,覆盖了大约500万个图画-文本对。
虽然在预练习后,MiniGPT-4现已展示了丰富的常识,并能够对人类的query供给合理的回复。
不过仍是能够观察到MiniGPT-4依然很难生成连接的言语输出,比方常常会生成重复的词或语句、零星的语句或不相关的内容,这些问题也阻止了MiniGPT-4与人类进行流畅的视觉对话的才能。
还能够注意到GPT-3也存在相似的问题:即便在很多的言语数据集上进行了预练习,GPT-3仍是不能直接生成符合用户意图的言语输出;但经过指令微调和从人类反馈中进行强化学习的进程后,GPT-3就成功蜕变为了GPT-3.5,并能够生成对人类更友好的输出。
所以只对MiniGPT-4进行预练习是不行的。
2. 高质量的视觉-言语对齐数据集
虽然在天然言语处理范畴,指令微调数据集和对话相关数据集很容易取得,但对于视觉言语范畴来说,并不存在对应的数据集,所以为了让MiniGPT-4在生成文本时更天然、更有用,还需要设计一个高质量的、对齐的图画-文本数据集。
在初始阶段,运用预练习后得到的模型来生成对给定图画的描绘,为了使模型能够生成更具体的图画描绘,研讨人员还设计了一个符合Vicuna言语模型的对话格式的提示符。
###Human: Describe this image in detail. Give as many details aspossible. Say everything you see. ###Assistant:
其间表示线性投影层生成的视觉特征,假如生成的描绘缺乏80个tokens,就添加额定的提示符「#Human:Continue#Assistant:」继续生成。
最终从Conceptual Caption中随机选择了5000幅图画,并生成对应的描绘。
数据后处理
现在生成的图画描绘依然包括许多噪音和过错,如重复的单词、不连接的语句等,研讨人员运用ChatGPT来完善描绘。
Fix the error in the given paragraph. Remove any repeating sentences, meaningless characters, not English sentences, and so on. Remove unnecessary repetition. Rewrite any incomplete sentences. Return directly the results without explanation. Return directly the input paragraph if it is already correct without explanation.
修正给定阶段中的过错。删去重复的语句、无意义的字符、不是英语的语句等等。删去不必要的重复。重写不完整的语句。直接回来成果,无需解说。假如输入的阶段现已正确,则直接回来,无需解说。
最终为了保证数据质量,手动验证每个图画描绘的正确性,并得到了3500个图画-文本对。
3. 微调阶段
研讨人员运用预界说的模板提示来优化预练习模型。
###Human: ###Assistant
其间表示从预界说指令集中随机抽样的指令,包括各种形式的指令,例如「具体描绘此图画」或「您能为我描绘此图画的内容吗」等。
需要注意的是,微调阶段没有核算特定文本-图画提示的回归损失,所以能够生成更天然、可靠的回复。
MiniGPT-4的微调进程十分高效,batch size为12的话,只需要400个练习步,运用单个A100 GPU练习7分钟即可。
示例
MiniGPT-4体现出了与GPT-4相似的多模态才能。
给一张图片,能够让模型生成十分具体的图画描绘。
辨认图画中的梗,比方解说「一到周一,人就像图里的小狗一样,一周中最令人恐惧的一天」。
还能够发现图画中不寻常的内容,比方「狼和羊羔在同一片草地」。
还能够根据手绘图生成一个网站的代码。
MiniGPT-4还能够辨认图画中的问题并供给解决方案,比方「洗衣机冒出了很多泡泡」是因为过载等原因,能够查看洗衣液是不是放多了、清理一下排水管或是看看洗衣机是不是坏了。
创作以图画为主题的诗歌或说唱歌曲。
编写图画背面的故事。
为图画中的产品写广告词。
乃至还能够知道换头表情包里的人是Tesla和Space X的CEO马斯克。
供给一些有深度的图画谈论。
检索与图画相关的事实,比方给个《教父》的截图就能够让模型检索到对应的电影信息。
乃至给个食物的照片,能够让模型输出一份菜谱。
更多强壮的功能等你解锁!
参考资料:minigpt-4.github.io/