/ Модель

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

Контекст
512 токенов
Параметры
137 млн
Лицензия
Apache 2.0
Архитектура
bert · dense
Базовая модель
bert-base-uncased
Библиотека
transformers
Опубликована
6 янв 2026

bert-log-anomaly-detection

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

Англоязычный BERT-классификатор выявляет аномалии в отдельных SQL-журналах транзакций для задач мониторинга мошенничества и кибербезопасности.

517скачиваний за 30 дней1лайквеса обновлены10 янв 2026

Бенчмарки

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

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

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

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

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

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

AungMoonLord/bert-log-anomaly-detection — англоязычный BERT-классификатор, разработанный Aungruk Vanichanai, Napat Wanitwatthakorn и Thanakrit Sriphiphattana для обнаружения аномалий в отдельных SQL-журналах транзакций. Модель дообучена для бинарной классификации записей как Normal или Anomaly и создана как прототип для хакатона Samsung × KBTG по цифровому мошенничеству и кибербезопасности.

Модель построена на google-bert/bert-base-uncased, использует архитектуру BertForSequenceClassification и содержит 136,7 млн параметров. Она принимает текст одной SQL-записи, поддерживает английский язык и имеет контекст до 512 токенов. Карточка приводит тестовую точность около 0,70 и полноту 0,79 без дополнительной предобработки или 0,82 с ней; результаты указывают на риск ложных срабатываний и пропусков.

Модель рассчитана на помощь в мониторинге финансовых транзакций и кибербезопасности, но не предназначена для выявления аномалий по последовательностям нескольких журналов или по нетекстовым данным. Обучающие данные — 1 611 синтетически сгенерированных и размеченных SQL-журналов. Лицензия — Apache 2.0; карточка представляет модель как демонстрационный хакатонный прототип.

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

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

Ограничения

По тестовой выборке точность составила около 0,70, поэтому возможны ложные срабатывания и пропуски аномалий. Модель предназначена для отдельных текстовых SQL-журналов, обучена на небольшом синтетическом наборе и не поддерживает анализ последовательностей журналов или нетекстовых данных.

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

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

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

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

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

Открыть на Hugging Face

Model Card for Model ID

Model Summary

  1. bert-log-anomaly-detection is a BERT-based NLP model fine-tuned for single SQL transaction log anomaly detection.

  2. The model classifies each database transaction log as either Normal or Anomaly, with the goal of supporting AI-powered fraud detection and cybersecurity monitoring systems.

  3. This model was developed as part of the Samsung × KBTG Digital Fraud Cybersecurity Hackathon (Thailand) under the AI-Powered Fraud Detection & Prevention track.

Model Description

This model analyzes individual SQL database transaction logs and detects abnormal patterns that may indicate fraudulent, malicious, or suspicious behavior.

Demo: Hackathon prototype

  • Developed by: Aungruk Vanichanai, Napat Wanitwatthakorn, Thanakrit Sriphiphattana
  • Shared by: Aungruk Vanichanai
  • Model type: Transformer-based binary text classifier
  • Language(s) (NLP): English (SQL logs in text format)
  • License: Apache 2.0
  • Finetuned from model: google-bert/bert-base-uncased

Model Sources

How to Get Started with the Model

Step 1 (Setup)

import torch
from transformers import BertForSequenceClassification, BertTokenizer

MODEL_PATH = "AungMoonLord/bert-log-anomaly-detection"

model = BertForSequenceClassification.from_pretrained(MODEL_PATH)
tokenizer = BertTokenizer.from_pretrained(MODEL_PATH)

model.eval()

Step 2 (Clean and Label Logs) — Optional, but may slightly improve accuracy, recall, and F1-score

# Perfom log preprocessing
def add_prefix_token(text): # log data must pass this code before training/inferencing
    # clean log
    text = text.replace("\t", " ")
    text = text.strip()
    # add token
    if text[0].isalpha() or text[3].isalpha():
        return "[SQL]\n" + text
    else:
        return "[LOG]\n" + text

Step 3 (Create the Function for Log Classification)

def predict_log(log_text):
    log_text = add_prefix_token(log_text)
    inputs = tokenizer(
        log_text,
        return_tensors="pt",
        truncation=True,
        padding=True, # for cases when the inference contains more than 1 log, i.e., batch size > 1
        max_length=128
    )

    with torch.no_grad():
        logits = model(**inputs).logits
        pred = torch.argmax(logits, dim=1).item()
        prob = torch.softmax(logits, dim=-1).tolist()[0]

    return "Normal" if pred == 1 else "Anomaly", prob

Step 4 (Samples of Inferences)

# Example 1
text1 = "SELECT * FROM users WHERE id = 1 OR 1=1"
print(predict_log(text1))

# Example 2
text2 = "2025-01-06 14:23:45 | User: anonymous | IP: 203.154.89.102 | Duration: 0.05s SELECT * FROM users WHERE username = 'admin' OR '1'='1' -- ' AND password = 'x'"
print(predict_log(text2))

# Example 3
text3 = "3051-06-22T07:20:02.296945Z 3 Query select e3mJKDCCY from 7Q8SpG8LLEWhrfpe4s5 where ph4d = 'a1S9hQa92uC1EAyJf2Y';"
print(predict_log(text3))

Application in Hackathon Project

  • Developed by Waris Sripatoomrak, this model integrates with an n8n workflow to automate fraud detection within financial transaction logs.

Out-of-Scope Use

  • Multi-log sequence anomaly detection

  • Non-textual anomaly detection

Training Data

  • SQL database transaction logs (1,611 samples) synthetically generated by ChatGPT, Qwen, DeepSeek, Grok, Gemini, and Claude

  • Each log labeled as either Normal or Anomaly

  • Data prepared for single-log classification

Evaluation

Metrics

- Training Set
MetricValue
Accuracy0.8950
Precision0.8580
Recall0.9026
F1-score0.8797
Validation Loss0.3279
- Test Set (Baseline — No Step 2 Preprocessing)
MetricValue
Accuracy0.6950
Precision0.6639
Recall0.7900
F1-score0.7215
Validation Loss0.6251
- Test Set (Full Pipeline — With Step 2 Preprocessing)
MetricValue
Accuracy0.7000
Precision0.6613
Recall0.8200
F1-score0.7321
Validation Loss0.6344

Summary

The model demonstrates strong anomaly detection capability with high recall, making it suitable for fraud detection and cybersecurity use cases.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
BertForSequenceClassification
Ревизия весов
9ece304

0 моделей