然后,作者就问了个很实在的问题:有没有可能搞一个ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(228, 137, 0);">通用的、多模态的检索器,而且整个流程简单一点,不要搞那么多乱七八糟的单独模块?
ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">答案就是他们提出的GeMKR,思路其实很直接,也很聪明:别再一味算相似度、比embedding了,干脆用大语言模型(LLM)直接生成线索,再用这些线索去数据库里一查,拿到对应的文档,你可以理解成模型自己“想”一段关键短语,这短语能够唯一指向某个文档。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 14px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">而且,这里有个小细节很重要,作者特别强调,只有生成这一步用神经网络,后面的查库是个确定性的操作(比如FM-Index这种特别快的数据结构),所以整体效率非常高。那性能怎么样呢?可以说是碾压了。作者拿了三个多模态知识检索的数据集来做实验,知识库规模从十几万到两千多万条都有。在最大的OKVQA-WK21M上,GeMKR在P@5(前5个检索结果里正确的比例)提高了14.6%,在R@5(前5个能召回多少正确文档)提高了8.9%,相当厉害。尤其是其他模型在知识库规模一大的时候普遍掉队,GeMKR反而还能顶得住。
更猛的是,他们只用了2万条训练数据(Instruction Data),只调了1400万个参数(总共有73亿个),就能做到这种效果。训练时间也很短,一块48G显存的A6000显卡上3小时搞定,不用海量计算资源。
为了搞清楚到底哪些设计是最重要的,作者也做了一堆消融实验。结论很清晰:
很明显,视觉这边的精细处理和文本这边的轻量调优(LoRA)都是核心。
还有个挺有意思的现象:如果把图片输入拿掉,只靠文本查询和图像caption(比如描述"一个男人在冲浪"这种文字描述),性能还是比大多数传统baseline好,但肯定不如真正用视觉patch做输入。这也说明,简单的图像caption不能完全替代图像本身的信息。
作者还做了个小scale-up实验,看看如果换更大的LLM,比如LLaMA-13B,会不会有更大提升。结果发现,确实涨了一点,但边际收益有限。说明在这种检索任务里,LLaMA-7B已经够用了,盲目换更大的模型意义不大,还平白增加计算开销。
还有一个特别直观的观察就是,如果只用文本或者只用图片去做查询,生成的关键词其实很不一样。比如文本倾向于"racing"、"American"这种概念词,图片则倾向于"snowboarding"、"statue"、"toy"这种描述视觉物体的词。也就是说,不同模态确实关注点不同,单靠一个模态的信息根本搞不定,所以GeMKR用融合式处理是合理且必要的。
最后,作者做了几组case study(实际例子)也挺好玩的。
比如给一个问题“What sport can you use this for?”(这是什么运动用的?)加一张摩托越野的照片,GeMKR生成的知识线索是“motocross is a form of off-road motorcycle racing”,然后一查就精准对上了motocross相关文档。
还有“这是什么植物?”配一张椰子树照片,它能生成"palm trees are among the most exotic and recognizable foliage"这样的线索,完美命中。
可以看出来,它不光能做整体匹配,还能抓细节,做到真正意义上的“多模态细粒度对齐”。
总结一下,GeMKR这篇论文的亮点不在于它用了什么花哨的模型,而是流程彻底简化、小改动大收益、训练超高效、检索结果超稳健。核心理念就是:
很典型的一种思路转变,从“识别和比对”走向了“生成和查找”,挺值得借鉴的。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |