模型:

flax-community/medclip-roco

英文

MedCLIP: 在 ROCO 医学数据集上对 CLIP 模型进行微调

摘要

该代码库包含在 ROCO 医学数据集上对 CLIP 模型进行微调的代码,该数据集由放射学图像和标题组成。这是在 Hugging Face 和 Google 组织的 Flax/Jax community week 中的一部分。

演示

你可以尝试一个使用该模型的 Streamlit 演示应用程序,该演示应用程序可在 ? Spaces 上使用。您可能需要注册? Spaces 私人测试版以访问此应用程序(如下所示的屏幕截图)。

? Hub 模型卡片: https://huggingface.co/flax-community/medclip-roco

数据集?

每个图像都附带有文本标题。标题的长度从几个字符(一个单词)到 2,000 个字符(多个句子)不等。在预处理过程中,我们删除所有标题长度少于 10 个字符的图像。训练集:57,780 个带有标题的图像。验证集:7,200 个图像。测试集:7,650 个图像。

[] 给出一个例子

安装?

该存储库依赖于 Hugging Face - Transformers library 的主分支。首先,您需要克隆 transformers 存储库,然后使用 pip install -e ".[flax]" 在本地安装它(最好在虚拟环境中)。

模型⚙️

您可以从 Hugging Face Hub 加载预训练模型

from medclip.modeling_hybrid_clip import FlaxHybridCLIP

model = FlaxHybridCLIP.from_pretrained("flax-community/medclip-roco")

训练

该模型是在云 TPU-v3-8 上使用 Flax/JAX 进行训练的。您可以通过简单运行 sh run_medclip 来微调 Flax 中实现的 CLIP 模型。这是我们使用 run_medclip.sh 脚本训练模型时观察到的验证损失曲线。

限制?

当前模型能够识别给定的放射学图像是 PET 扫描还是超声波扫描。然而,它无法区分脑部扫描和肺部扫描。❗️在未经进一步评估的情况下,不应在医疗环境中使用该模型❗️。

致谢

非常感谢 Hugging Face ? 团队和 Google JAX/Flax 团队组织社区周,让我们使用云计算两周。我们特别感谢 @patil-suraj @patrickvonplaten 在 Slack 上的持续支持和详细反馈。

待办事项

[] 在下游任务上进行评估

[] 零样本学习性能

[] 合并演示应用程序