العودة إلى المدونة
Machine Learning 12 دجنبر 2024 8 min للقراءة

اكتشاف الشذوذ باستخدام المشفرات التلقائية: أفضل من القواعد وأرخص من التسميات

استخدام المشفرات التلقائية للكشف عن الشذوذ غير الخاضع للإشراف — عتبة خطأ إعادة البناء.

لماذا المشفرات التلقائية للكشف عن الشذوذ

تحتاج فقط إلى بيانات طبيعية للتدريب. يتعلّم المشفّر التلقائي إعادة بناء الأنماط الطبيعية جيداً. أما الحالات الشاذة فيكون خطأ إعادة بنائها مرتفعاً.

المعمارية

class Autoencoder(nn.Module):
    def __init__(self, input_dim, latent_dim=32):
        super().__init__()
        self.encoder = nn.Sequential(
            nn.Linear(input_dim, 128), nn.ReLU(),
            nn.Linear(128, 64), nn.ReLU(),
            nn.Linear(64, latent_dim)
        )
        self.decoder = nn.Sequential(
            nn.Linear(latent_dim, 64), nn.ReLU(),
            nn.Linear(64, 128), nn.ReLU(),
            nn.Linear(128, input_dim)
        )
    
    def forward(self, x):
        z = self.encoder(x)
        return self.decoder(z)

ضبط العتبة

# Set threshold at 99th percentile of train reconstruction error
recon_errors = ((X_train - model(X_train)) ** 2).mean(dim=1)
threshold = np.percentile(recon_errors.numpy(), 99)
Anomaly DetectionAutoencoderUnsupervisedPyTorchFraud
O

Ossama Elhakki

مهندس ذكاء اصطناعي وأنظمة ML — المغرب