YAML Metadata
Warning:
empty or missing yaml metadata in repo card
(https://huggingface.co/docs/hub/model-cards#model-card-metadata)
One-Class Deepfake Detector
Model Details
- Architecture: Hybrid CNN + ViT + FFT Frequency Features
- Training Images: 50,000 real images only
- Final Radius: 352.6608
- Final Loss: 124397.0862
- Embedding Dim: 512
How It Works
This is a one-class anomaly detector using DeepSVDD (Deep Support Vector Data Description). It learns a "hypersphere" around real images in embedding space. Images far from this hypersphere are considered anomalous (fake).
Usage
import torch
from PIL import Image
import torchvision.transforms as transforms
# Load model
model_data = torch.load('deepfake_detector_model/deepsvdd_model.pth')
# Initialize your model and load weights
# model.load_state_dict(model_data['model_state_dict'])
# Preprocess image
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])
image = Image.open('test.jpg').convert('RGB')
image_tensor = transform(image).unsqueeze(0)
# Get hypersphere distance
with torch.no_grad():
embedding = model(image_tensor)
distance = model.get_distance(embedding).item()
# Compare to threshold
threshold = model_data['radius'].item() * 1.5
is_fake = distance > threshold
print(f"Distance: {distance:.4f}, Threshold: {threshold:.4f}, Fake: {is_fake}")
Files
deepsvdd_model.pth: Complete model with center and radiusencoder.pth: Encoder weights onlyconfig.json: Training configurationtraining_history.json: Training metrics
Generated: 2025-11-28 11:22:17
- Downloads last month
- 114
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
๐
Ask for provider support