🚀 AIと人間の画像分類モデル
このモデルは、60,000枚のAI生成画像と60,000枚の人間による画像を用いて微調整されたモデルです。Midjourney v6.1、Flux 1.1 Pro、Stable Diffusion 3.5、GPT - 4oなどの最新のAI生成モデルによる高品質な画像を検出する能力に優れています。
詳細な学習コードはこちらで入手できます: [blog/ai/fine - tuning - siglip2](https://exnrt.com/blog/ai/fine - tuning - siglip2/)
🚀 クイックスタート
📦 インストール
pip install -q transformers torch Pillow accelerate
💻 使用例
基本的な使用法
import torch
from PIL import Image as PILImage
from transformers import AutoImageProcessor, SiglipForImageClassification
MODEL_IDENTIFIER = r"Ateeqq/ai-vs-human-image-detector"
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
print(f"Using device: {device}")
try:
print(f"Loading processor from: {MODEL_IDENTIFIER}")
processor = AutoImageProcessor.from_pretrained(MODEL_IDENTIFIER)
print(f"Loading model from: {MODEL_IDENTIFIER}")
model = SiglipForImageClassification.from_pretrained(MODEL_IDENTIFIER)
model.to(device)
model.eval()
print("Model and processor loaded successfully.")
except Exception as e:
print(f"Error loading model or processor: {e}")
exit()
IMAGE_PATH = r"/content/images.jpg"
try:
print(f"Loading image: {IMAGE_PATH}")
image = PILImage.open(IMAGE_PATH).convert("RGB")
except FileNotFoundError:
print(f"Error: Image file not found at {IMAGE_PATH}")
exit()
except Exception as e:
print(f"Error opening image: {e}")
exit()
print("Preprocessing image...")
inputs = processor(images=image, return_tensors="pt").to(device)
print("Running inference...")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
predicted_label = model.config.id2label[predicted_class_idx]
probabilities = torch.softmax(logits, dim=-1)
predicted_prob = probabilities[0, predicted_class_idx].item()
print("-" * 30)
print(f"Image: {IMAGE_PATH}")
print(f"Predicted Label: {predicted_label}")
print(f"Confidence Score: {predicted_prob:.4f}")
print("-" * 30)
print("Scores per class:")
for i, label in model.config.id2label.items():
print(f" - {label}: {probabilities[0, i].item():.4f}")
出力例
Using device: cpu
Model and processor loaded successfully.
Loading image: /content/images.jpg
Preprocessing image...
Running inference...
------------------------------
Image: /content/images.jpg
Predicted Label: ai
Confidence Score: 0.9996
------------------------------
Scores per class:
- ai: 0.9996
- hum: 0.0004
📚 ドキュメント
🔍 評価指標

🏋️♂️ 学習指標
- エポック数: 5.0
- 総FLOPs: 51,652,280,821 GF
- 学習損失: 0.0799
- 学習時間: 2:39:49.46
- 学習サンプル/秒: 69.053
- 学習ステップ/秒: 4.316
📊 評価指標 (テストセットでの微調整モデル)
- エポック数: 5.0
- 評価精度: 0.9923
- 評価損失: 0.0551
- 評価時間: 0:02:35.78
- 評価サンプル/秒: 212.533
- 評価ステップ/秒: 6.644
🔦 予測指標 (テストセット)
{
"test_loss": 0.05508904904127121,
"test_accuracy": 0.9923283699296264,
"test_runtime": 167.1844,
"test_samples_per_second": 198.039,
"test_steps_per_second": 6.191
}
- 最終テスト精度: 0.9923
- 最終テストF1スコア (マクロ): 0.9923
- 最終テストF1スコア (加重): 0.9923
📄 ライセンス
このモデルはApache - 2.0ライセンスの下で提供されています。
属性 |
详情 |
パイプラインタグ |
画像分類 |
ライブラリ名 |
transformers |
評価指標 |
精度 |
タグ |
アート |
ライセンス |
Apache - 2.0 |