/ Модель

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

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

transaction-categorizer

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

Дообученный DistilBERT распределяет англоязычные описания банковских операций по 17 категориям расходов и поступлений.

11скачиваний за 30 дней1лайквеса обновлены11 июн 2026

Бенчмарки

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

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

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

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

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

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

Модель transaction-categorizer разработана Fahad Kamraan и представляет собой дообученный DistilBERT для классификации текстовых описаний банковских операций по 17 категориям расходов и поступлений: среди них продукты, рестораны, транспорт, аренда, коммунальные услуги, комиссии, доходы и переводы. Модель содержит 66 млн параметров, использует архитектуру DistilBertForSequenceClassification и принимает текст длиной до 64 токенов; базовая модель имеет контекстное окно 512 токенов. Она обучена на описаниях операций из американских банковских выписок и поддерживает английский язык.

Модель подходит для автоматической категоризации транзакций в приложениях личных финансов, банковских выписках и аналитических конвейерах. В README указана точность 99,88% на тестовой выборке из 4 298 примеров, однако результат относится к данным того же набора и не гарантирует аналогичного качества на других форматах. Выход — одна из 17 заданных категорий; неизвестные типы операций будут отнесены к ближайшей доступной категории. Репозиторий распространяется по лицензии MIT.

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

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

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

Transaction Categoriser

Fine-tuned DistilBERT model that classifies raw bank transaction descriptions into 17 merchant spending categories with 99.88% test accuracy.

Try it live: 🤗 Spaces Demo


Model Details

PropertyValue
Base modeldistilbert-base-uncased
TaskMulti-class text classification (17 classes)
Parameters66M
Training platformKaggle (GPU T4 x2)
FrameworkHuggingFace Transformers 4.44.2
InferenceCPU-compatible

Labels

{
  0: "Education",       1: "Entertainment",   2: "Fees",
  3: "Groceries",       4: "Healthcare",       5: "Income",
  6: "Insurance",       7: "Mortgage",         8: "Personal Care",
  9: "Rent",           10: "Restaurants",     11: "Shopping",
 12: "Subscription",   13: "Transfer",        14: "Transportation",
 15: "Travel",         16: "Utilities"
}

Performance

Evaluated on a held-out test set of 4,298 samples (10% of 42,975 total).

MetricV1 (baseline)V2 (this model)
Accuracy99.70%99.88%
F1 (weighted)99.70%99.88%
F1 (macro)99.71%99.89%

All experiments tracked on W&B.

Usage

from transformers import pipeline

classifier = pipeline(
    "text-classification",
    model="fahadkamraan/transaction-categorizer",
    device=-1,   # CPU
    top_k=3,
)

results = classifier("starbucks coffee purchase")
# [{'label': 'Restaurants', 'score': 0.9999}]

With HuggingFace Hub

from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

tokenizer = AutoTokenizer.from_pretrained("fahadkamraan/transaction-categorizer")
model = AutoModelForSequenceClassification.from_pretrained("fahadkamraan/transaction-categorizer")

inputs = tokenizer("netflix monthly subscription", return_tensors="pt", truncation=True, max_length=64)
with torch.no_grad():
    logits = model(**inputs).logits
predicted_class = logits.argmax(-1).item()
print(model.config.id2label[predicted_class])  # → Subscription

Docker

docker run --rm \
  -e HF_TOKEN=<token> \
  -e INPUT_TEXT="delta airlines flight booking" \
  fahadkamraan/mlops-transaction-classifier:latest

Training Data

Training Procedure

Two versions were trained and compared on Kaggle (GPU T4 x2):

HyperparameterV1V2 (this model)
Learning rate2e-55e-5
Epochs35
Weight decay0.00.01
PreprocessingLightExtra normalisation
Batch size3232

V2 preprocessing additionally strips [debit]/[credit] prefix tags and standardises store number suffixes, giving the model cleaner input.

Limitations

  • Supports only the 17 categories present in the training dataset. Transactions from categories like "Investments" or "Taxes" will be mapped to the nearest available label.
  • Trained on US-style bank transaction descriptions. May generalise poorly to non-English or very different regional bank formats.
  • Maximum input length: 64 tokens (sufficient for typical transaction strings).

MLOps Pipeline

This model is part of a complete MLOps assignment pipeline:

Citation

@misc{kamraan2025transactioncategorizer,
  author    = {S Fahad Kamraan and Dhruvi Patel and Mahesh V and Himanshu Choubey},
  title     = {Bank Transaction Merchant Categoriser},
  year      = {2025},
  publisher = {HuggingFace Hub},
  url       = {https://huggingface.co/fahadkamraan/transaction-categorizer}
}

IIT Jodhpur — ML Ops Assignment (CSL 7040)

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей