/ Модель

Характеристики

Контекст
512 токенов
Лицензия
MIT
Архитектура
distilbert · dense
Базовая модель
distilbert-base-uncased
Опубликована
13 июл 2026

scamshield-scam-detector

Классификация текстаТекст → label3 профессии

ScamShield — дообученный DistilBERT для локального выявления мошеннических и фишинговых SMS, писем и предложений о работе на английском языке.

266скачиваний за 30 дней0лайковвеса обновлены13 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

ScamShield — компактная модель классификации текста на базе DistilBERT, дообученная Rehan Raza для выявления мошеннических и фишинговых сообщений. Она относит текст к безопасному или мошенническому и рассчитана на обработку SMS, электронных писем и предложений о работе или стажировке. Модель может работать локально в браузере или на периферийном устройстве, что позволяет анализировать сообщения без отправки их на сервер. Архитектура — DistilBertForSequenceClassification; модель принимает текст на английском языке, а длина контекста составляет 512 токенов.

При обучении использованы SMS Spam Collection, EMSCAD и синтетические контрастивные примеры предложений о работе, где ключевое различие — запрос предоплаты. В README для отложенной выборки приведены accuracy 98,5%, precision 0,944 и recall 0,833. Модель подходит для локальной предварительной проверки сообщений и предложений, но её качество может снижаться на форматах мошенничества, отличных от SMS и предложений о работе, а также при изменении формулировок. Для неоднозначных сообщений и решений с высокими последствиями не следует полагаться только на её предсказание. Лицензия — MIT.

Сценарии применения

  • проверка SMS на мошенничество и фишинг
  • поиск фишинговых писем
  • выявление поддельных предложений о работе и стажировке
  • локальная проверка сообщений в расширении браузера
  • классификация текста как безопасного или мошеннического на периферийном устройстве

Ограничения

Обучение и оценка в основном охватывали SMS и предложения о работе или стажировке, поэтому качество на других видах мошенничества может быть ниже. Возможны ошибки на неоднозначных сообщениях и при изменении формулировок; модель не рекомендуется использовать самостоятельно для решений с высокими последствиями.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

ScamShield — Scam & Phishing Detection Model

A fine-tuned DistilBERT model that classifies text as scam or safe — built to run fully on-device (browser/edge), as the detection engine behind the ScamShield Chrome extension.

Model Description

This model detects scam, phishing, and fraudulent job/internship messages from plain text — SMS messages, emails, job offer letters, and similar written content. It was fine-tuned from distilbert-base-uncased for binary sequence classification (0 = safe, 1 = scam).

It's designed to be small and fast enough to run entirely client-side (in a browser via ONNX + Transformers.js, or on edge devices), so no user text needs to be sent to a server for scam detection.

  • Base model: distilbert-base-uncased
  • Task: Binary text classification (safe vs. scam)
  • Language: English
  • License: MIT

Intended Use

  • Detecting phishing/scam SMS and emails
  • Detecting fraudulent job/internship offers (fake recruiters, upfront-fee scams)
  • Powering privacy-preserving, on-device scam-detection tools (browser extensions, edge apps)

Not intended for: legal/compliance decisions, moderating content at scale without human review, or as a sole determinant of fraud — see Limitations below.

Training Data

Combined from three sources:

  1. SMS Spam Collection Dataset — real SMS messages, ham/spam labeled
  2. EMSCAD — Employment Scam Aegean Dataset — real vs. fraudulent job postings
  3. Custom synthetic contrastive dataset (~255 examples, generated via LLM) — pairs of professionally-worded job offers that are identical in structure and language, differing only in whether an upfront payment is requested. This was added after testing revealed the model initially missed softly-worded scams that avoided obvious keywords (see "Model Iteration History" below).

Training Procedure

  • Fine-tuned for 2 epochs, learning rate 2e-5, batch size 16, weighted cross-entropy loss (to address class imbalance — scam examples are a minority class)
  • Trained on a single RTX 4050 (6GB VRAM) with fp16 mixed precision
  • Max sequence length: 512 tokens

Evaluation Results (held-out test set)

MetricScore
Accuracy98.5%
Precision0.944
Recall0.833
F10.885

Model Iteration History

This model went through 4 iterations, which is worth documenting honestly since it shapes how the model should be used:

  • v1: Baseline on the two public datasets. Confidently correct on obvious scams, but confidently wrong (near 0%) on professionally-worded scams avoiding obvious red-flag keywords.
  • v2: Added broad synthetic augmentation to fix this — overcorrected, started flagging legitimate offer letters as scams due to generic HR language ("verification," "documentation").
  • v3: Rebalanced with more safe examples — overcorrected the other way, lost recall on real scams.
  • v4 (this model): Used a contrastive dataset — scam/safe pairs with identical structure and language, differing only in whether payment was requested. This isolated the actual decisive signal and fixed both prior failure modes.

Limitations

  • Trained and evaluated primarily on job/internship offers and SMS-style messages — may not generalize well to other scam formats (e.g. crypto scams, romance scams) without further fine-tuning.
  • English only.
  • Can still be uncertain on genuinely ambiguous, real-world borderline messages — in the ScamShield extension, this model's output is combined with a rule-based red-flag layer as a safety net, rather than used alone. Using this model standalone without such a safety net is not recommended for high-stakes use.
  • Like any small classifier, it can be sensitive to phrasing changes near its decision boundary.

How to Use

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

tokenizer = AutoTokenizer.from_pretrained("rehan-ml/scamshield-scam-detector")
model = AutoModelForSequenceClassification.from_pretrained("rehan-ml/scamshield-scam-detector")

text = "Congratulations! You've been selected. Pay a refundable registration fee of $50 to confirm your position."
inputs = tokenizer(text, return_tensors="pt", truncation=True, max_length=512)

with torch.no_grad():
    outputs = model(**inputs)

scam_probability = torch.softmax(outputs.logits, dim=1)[0][1].item()
print(f"Scam probability: {scam_probability:.4f}")

Related

Author

Built by Rehan Raza for OSDHack 2026.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · text-classification

Можно запустить

Подбираем GPU…

Класс архитектуры
DistilBertForSequenceClassification
Ревизия весов
0aca58d

0 моделей