数据集:
- ideepankarsharma2003/ImageClassificationStableDiffusion_small
- ideepankarsharma2003/Midjourney_v6_Classification_small_shuffled
- ideepankarsharma2003/AIGeneratedImages_Midjourney
标签:
- 图像分类
- AI生成图像
模型卡片:AI图像分类器 - Midjourney V6 & SDXL
模型详情
模型描述
该模型是基于Swin Transformer架构的分类器,专门用于区分AI生成与人工创作的图像,特别针对Midjourney V6和**Stable Diffusion XL (SDXL)**的输出进行了优化。其训练数据来源于精选的AI生成图像数据集。
- 开发者: Deepankar Sharma
- 模型类型: 图像分类(Swin Transformer)
- 微调自模型: SwinForImageClassification
模型来源
用途
直接应用
该模型可用于检测Midjourney V6和SDXL生成的AI图像,适用于内容审核、事实核查及合成媒体识别等场景。
非适用场景
- 不适用于检测所有生成式模型输出的AI图像。
- 对经过深度编辑的AI生成图像或人机混合内容可能表现不佳。
- 不适用于 forensic级别的深度伪造检测。
偏差、风险与局限性
该模型专门针对Midjourney V6和Stable Diffusion XL数据集训练,可能无法泛化至其他AI模型生成的图像。数据集的偏差可能导致误判(将真实图像标记为AI生成)或漏检(未能识别AI生成内容)。
使用建议
建议用户结合其他工具验证结果,勿完全依赖本模型进行高风险决策。部署前应在特定领域数据集上测试模型性能。
快速开始
可通过🤗 Transformers库调用该模型:
from transformers import AutoModelForImageClassification, AutoFeatureExtractor
from PIL import Image
import torch
model_name = "ideepankarsharma2003/AI_ImageClassification_MidjourneyV6_SDXL"
model = AutoModelForImageClassification.from_pretrained(model_name)
feature_extractor = AutoFeatureExtractor.from_pretrained(model_name)
image = Image.open("图片路径.jpg")
inputs = feature_extractor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_label = logits.argmax(-1).item()
id2label = {0: "ai生成", 1: "人工创作"}
print("预测结果:", id2label[predicted_label])
训练详情
训练数据
模型训练使用了以下数据集:
训练参数
- 图像尺寸: 224x224
- 分块大小: 4
- 嵌入维度: 128
- 层数: 4
- 各阶段注意力头数: [4, 8, 16, 32]
- 丢弃率:
- 注意力机制: 0.0
- 隐藏层: 0.0
- 路径丢弃: 0.1
- 激活函数: GeLU
- 优化器: AdamW
- 学习率调度器: 余弦退火
- 精度: float32
- 训练步数: 3414
评估
测试数据与指标
测试数据
模型在训练数据集的独立验证集上进行评估。
评估指标
结果概述
模型能有效区分AI生成与人工创作图像,但可能受数据集偏差和分布外样本影响。
引用
若使用本模型,请引用:
@misc{ai_image_classification,
author = {Deepankar Sharma},
title = {AI图像分类器 - Midjourney V6 & SDXL},
year = {2024},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/ideepankarsharma2003/AI_ImageClassification_MidjourneyV6_SDXL}}
}
模型卡片作者