简体中文| English
介绍
EMMM项目(利用大模型增强多模态命名实体识别)专注于通过整合大型语言模型作为动态外部知识源,目标是在各种多模态场景中实现更准确和高效的实体识别。
背景
多模态命名实体识别在理解复杂数据源中扮演着关键角色,特别是在社交媒体、新闻报道等领域。传统方法通常只依赖于有限的模态来识别实体,而忽视了外部大型知识库的潜力。此前也有项目尝试通过外部知识(wiki)增强实现任务,也很有效的打败了传统方法。基于前人的经验,我们提出了EKMM项目,EKMM通过融合文本和图像的数据,并结合外部模型生成的深层次知识,极大地提高了识别的准确性和鲁棒性。
- 【2024.4.25】项目立项
- 【2024.4.25】整理了twitter数据集,完成了数据预处理
-
项目立项
-
数据整理与数据预处理
- 整理不同领域的多种数据集
- 完成数据预处理,包括数据清洗、数据增强
-
构建图片描述生成数据集
- 使用统一的,效果好的模型,方便之后对不同LLM模型的效果进行对比。可能会使用BLIP-2
-
外部知识库构建
- 构建外部知识库,包括实体、关系、事件等信息
-
使用XTuner对LLM模型进行微调(暂定基于数据集语言情况选择模型)
-
使用XTuner对VLM模型进行微调
-
讨论
基于image caption + Multimodel Similar Example + LLM
与only VLM
的效果比较,并分析原因。
- 请阅读快速体验查阅
- 由该论文提供的基准结果
|-- README.md
|-- README_EN.md
|-- code
| `-- ocr_module.py
|-- data
| `-- twitter
| |-- twitter2015
| | |-- test.txt
| | |-- train.txt
| | `-- valid.txt
| `-- twitter2017
| |-- test.txt
| |-- train.txt
| `-- valid.txt
|-- docs
| `-- quick_start.md
`-- image
python==3.7.10
- Twitter15_Twitter17数据集
- 介绍:基于社交媒体的英文数据集。
- text部分:
/data/twitter2015
and/data/twitter2017
- image部分:下载链接
- CMNER数据集
- 介绍:基于社交媒体的中文 MNER 数据集。
- text部分:
/data/cmner
- image部分:下载链接
- 在此我们使用OCR文本检测与识别模型得到图片中更多的信息,包括文字、位置等信息。
- 在此使用通用领域中英都可以识别的的读光-文字识别-行识别模型与读光-文字检测-行检测模型,具体请阅读OCR部分查阅。
- 代码实现于
/code/ocr_module.py
- 在此我们使用blip-image-captioning-large模型生成图片描述。
- 图像描述部分只有英文结果,中文翻译使用CSANMT。(可选)
- 代码实现于
/code/image_caption.py
- 基于CMNER数据集和twitter数据集生成用于LLM微调的json数据集。 json格式为:
{
"messages": [
{
"role": "user",
"content": "请分析这段文本和对应的图片描述并完成实体识别的任务。
这段文本的事件类型是:虚假宣传。
这是需要分析的文本:‘知名化妆品品牌相当于虚假宣传。 香奈儿也玩虚假宣传 ’。
这是对应图片的描述:‘一个男人坐在桌子前,拿着香奈儿的香水瓶’。
这是需要检测出来的实体类型:时间,地点,涉及金额,监管机构,产品名称,产品类别,产品品牌。
"
},
{
"role": "assistant",
"content": "['产品品牌': '香奈儿']"
}
]
},
- 代码实现于
/code/generate_ft_data.py