Aniket Deroy, Subhankar Maity. RetrieveGPT: Merging Prompts and Mathematical Models for Enhanced Code-Mixed Information Retrieval. arXiv:2411.04752v1 [cs.CL].
Joshi, A. , Bhattacharyya, P., & Bali, K. (2016). A Computational Approach to Code-Mixing. In ✅Proceedings of COLING 2016.
Bali, K. , Sharma, J., Choudhury, M., & Rudra, A. (2014). “I am borrowing ya mixing?” An Analysis of English-Hindi Code Mixing in Facebook. ✅EMNLP 2014.
Malhotra, A. , & Sharma, S. (2020). Challenges in Code-Mixed Text Processing. ✅Journal of Computational Linguistics.
Devlin, J. , Chang, M. W., Lee, K., & Toutanova, K. (2018). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. ✅NAACL-HLT 2019.
😎 引言:代码混合,社交媒体的语言迷宫
在多语言社会中,语言的交叉和混合现象已然成为日常生活的一部分,尤其是在印度这样一个语言丰富的国家。说到代码混合(Code-Mixing),这可不仅仅是简单的“语言大杂烩”,而是多语言环境下的一种自然表现。想象一下,你正在用你的母语聊天,中途突然蹦出几句英语,甚至还用罗马字母来拼写你本地语言的单词——这就是典型的代码混合场景。
特别是在印度的社交媒体上,许多移民社区通过使用罗马字母拼写母语,混合英语,来分享本地资讯。例如,西孟加拉邦的孟加拉语使用者在迁移到德里或者班加罗尔这样的城市后,常常会在 Facebook 或 WhatsApp 上加入类似“德里孟加拉人”的群组。这些群组不仅是他们相互支持的纽带,还是讨论住房、工作等实际问题的重要平台。
然后,COVID-19 疫情的到来更是加剧了这种现象。随着政府政策频繁更新,这些社交媒体群组成了许多人的“信息生命线”。但问题是:这些对话非常非正式,语法和拼写五花八门,甚至有时连同一个词都会用不同的拼写——这对信息检索系统来说可谓是“地狱级”难度。
所以问题来了:如何从这些语言混合、拼写混乱、结构随意的对话中,提取出有用的信息呢?这正是本研究的核心课题,也是我们推出 RetrieveGPT 的动因。
🤖 RetrieveGPT:大模型+数学模型双剑合璧
🎯 任务定义:从混乱中找到秩序
当我们谈论信息检索时,通常是指从一大堆文本中挑出“最相关”的部分。对于代码混合的场景,尤其是像孟加拉语和英语这样使用罗马字母的对话,检索任务变得更加复杂。我们的目标不仅是找到相关的文档,还要确保这些文档能准确回答用户的查询。
🧠 为什么选择 Prompting?
在处理代码混合文本时,传统的信息检索技术经常因为拼写不标准、语法混乱而“晕头转向”。而大型语言模型(如 GPT-3.5 Turbo)的出现,给了我们一个新的思路:通过 Prompting,即精心设计的提示语,来引导模型理解上下文,并作出判断。
🚀 Prompting 的优势:
📐 方法论:大语言模型与数学模型的完美结合
为了应对代码混合信息检索的挑战,我们采用了一种独特的双管齐下的方法:不仅依靠 GPT-3.5 Turbo 的强大语言理解能力,还将其与一个数学模型结合,利用文档的顺序关系来提高检索效果。
🌟 基于 Prompt 的 GPT-3.5 Turbo 处理流程
我们首先通过 OpenAI API 进行 Prompting。具体的提示语如下:
GPT-3.5 Turbo 接收到提示语后,会进行以下步骤:
📊 数学模型:顺序依赖的相关性评估
在得到 GPT-3.5 的相关性评分后,我们进一步引入了一个数学模型,考虑文档之间的顺序依赖关系。具体公式如下:
这个公式反映了文档之间的相关性传递效应。如果当前文档的得分低于 0.3 且前一个文档是相关的,我们就直接使用当前文档的得分。如果当前文档的得分大于等于 0.3 并且前一个文档也是相关的,则我们增加当前文档的相关性得分。通过这种方式,我们能够更好地捕捉文档序列中的相关性。
🏆 评估与实验结果
在实验中,我们使用了一个包含 107900 个文档和 20 个查询的训练集,以及 30 个测试查询。我们通过不同的温度值(0.5、0.6、0.7、0.8、0.9)对 GPT-3.5 进行了多轮实验,最终取得了令人满意的结果。
以下是我们的评估指标:
从表中可以看出,五次提交的 MAP 和 NDCG 分数非常接近,显示了我们方法的稳定性。而在最后一次提交中,我们略微提高了 MAP 和 NDCG 分数,表明该方法在文档排序和检索效果上有小幅提升。
🎉 结论:代码混合信息检索的未来
通过结合 GPT-3.5 Turbo 的自然语言理解能力和数学模型的顺序依赖关系,我们成功解决了代码混合场景中的信息检索难题。我们的研究不仅为代码混合与多语言处理领域提供了新的思路,还为提升社交媒体信息的可获取性做出了贡献。未来,我们期待进一步优化模型,尤其是在更复杂和多样化的语言环境中,继续探索代码混合信息检索的无限可能。
📚 参考文献