语言:
- 阿拉伯语
- 英语
许可证: MIT
库名称: transformers
标签:
- 图像转文本
- 图像字幕生成
- 视觉
- 阿拉伯语
- BLIP
- Flickr8k阿拉伯语数据集
数据集:
- Flickr8k阿拉伯语数据集
管道标签: 图像转文本
小部件示例:
- 示例标题: "示例图片"
图片链接: "http://images.cocodataset.org/val2017/000000039769.jpg"
BLIP图像字幕生成模型 - 阿拉伯语版(Flickr8k阿拉伯语数据集)
本模型是基于Salesforce/blip-image-captioning-large
微调的版本,专门针对阿拉伯语图像字幕生成任务,使用Flickr8K阿拉伯语数据集训练而成。该模型接收输入图像后,会生成描述图像内容的阿拉伯语字幕。
模型来源
快速使用指南
from transformers import BlipProcessor, BlipForConditionalGeneration
from PIL import Image
import torch
import matplotlib.pyplot as plt
processor = BlipProcessor.from_pretrained("omarsabri8756/blip-Arabic-flickr-8k")
model = BlipForConditionalGeneration.from_pretrained("omarsabri8756/blip-Arabic-flickr-8k")
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = model.to(device)
image_path = "图片路径.jpg"
image = Image.open(image_path).convert("RGB")
plt.imshow(image)
plt.axis('off')
plt.title("输入图片")
plt.show()
model.eval()
with torch.no_grad():
pixel_values = processor(images=image, return_tensors="pt").pixel_values.to(device)
generated_output = model.generate(
pixel_values=pixel_values,
max_length=75,
min_length=20,
num_beams=5,
repetition_penalty=1.5,
length_penalty=1.0,
no_repeat_ngram_size=3,
early_stopping=True
)
caption = processor.batch_decode(generated_output, skip_special_tokens=True)[0]
print(caption)
训练详情
训练数据
本模型使用Flickr8k阿拉伯语数据集进行微调,该数据集包含8,000张图片,每张图片配有4条阿拉伯语参考字幕。数据集涵盖了现代标准阿拉伯语描述的日常生活场景和活动。
- 数据集: Flickr8k阿拉伯语版
- 规模: 8,000张图片,32,000条字幕
训练流程
通过对原始BLIP模型进行微调,使其适应阿拉伯语文本生成任务。
训练超参数
- 训练模式: fp16混合精度
- 优化器: AdamW
- 学习率: 5e-5
- 单设备训练批大小: 2
- 单设备评估批大小: 16
- 梯度累积步数: 14
- 总训练批大小: 28
- 训练轮次: 5
- 学习率调度器: 带热启动的余弦衰减
- 权重衰减: 0.01
模型评估
测试数据与指标
测试数据
使用Flickr8k阿拉伯语测试集进行评估,包含1,000张图片,每张图片配有4条参考字幕。
评估指标
- BLEU-1: 65.80
- BLEU-2: 51.33
- BLEU-3: 38.72
- BLEU-4: 28.75
- METEOR: 46.29
评估结果
模型对常见场景和活动表现良好,能生成语法正确且符合语境的阿拉伯语字幕。对于训练数据中未充分体现的特殊场景或文化特定语境,性能略有下降。
局限性说明
- 训练数据Flickr8k阿拉伯语版可能无法全面反映阿拉伯语地区的图像和语言表达多样性
- 可能产生刻板印象或文化不敏感的描述
- 对不同阿拉伯语方言和地区表达的性能可能存在差异
- 对文化特定物品、事件或语境的描述能力有限
- 复杂场景或特殊视觉元素的处理能力较弱
使用建议
- 敏感场景使用前建议人工审核生成的字幕
- 面向公众的应用建议进行后处理或人工复核
- 针对特定用例测试多样化的图片类型
- 注意模型可能反映训练数据中的偏见
- 评估字幕质量时需考虑地区和方言差异