/ Модель

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

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

distilbert-patent-cpc-classifier

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

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

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

Бенчмарки

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

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

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

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

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

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

Модель crismolav/distilbert-patent-cpc-classifier разработана на основе distilbert-base-uncased, дообученной для классификации английских аннотаций патентов по разделам CPC. Она предсказывает один из девяти разделов — A–H или Y, то есть верхний и наиболее общий уровень классификации, а не полный код CPC. Модель использует архитектуру DistilBERT, принимает текст с контекстом до 512 токенов; в описанных экспериментах аннотации обрезались до 256 токенов. Для запуска подходит библиотека Transformers, веса опубликованы в формате safetensors.

Модель предназначена для предварительной сортировки патентных аннотаций и выдачи нескольких наиболее вероятных разделов. На отложенной выборке из 5000 аннотаций она показала macro-F1 0,613 и accuracy 0,667; при выдаче трёх вариантов top-k accuracy составила 0,927. Классификация CPC по существу многометочная, а модель обучена предсказывать только основной раздел, поэтому некоторые ошибки top-1 могут соответствовать подходящему дополнительному разделу. Особенно ненадёжны предсказания раздела Y: его F1 равен 0,11, хотя в top-3 он попадает в 0,978 случаев.

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

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

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

Ограничения

Модель рассчитана на английские патентные аннотации и предсказывает только основной раздел CPC, а не полный код; её не проверяли на формуле изобретения, полном тексте или других языках. Предсказания для раздела Y особенно ненадёжны, а сама модель не предназначена для производственных решений по интеллектуальной собственности.

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

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

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

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

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

Открыть на Hugging Face

DistilBERT — Patent CPC Section Classifier

Fine-tuned distilbert-base-uncased that reads a patent abstract and predicts its CPC section — the top, broadest level of the Cooperative Patent Classification hierarchy (a single letter, A–H plus Y; 9 classes).

"Section", not the whole CPC code. CPC is hierarchical — section (G, 9 classes) → class (G06, ~130) → subclass (G06F, ~660) → group/subgroup. This model predicts only the section (the first letter), which is the coarsest and easiest level.

Labels

idCPCSection
0AHuman Necessities
1BPerforming Operations; Transporting
2CChemistry; Metallurgy
3DTextiles; Paper
4EFixed Constructions
5FMechanical Engineering; Lighting; Heating; Weapons; Blasting
6GPhysics
7HElectricity
8YGeneral tagging of new or cross-sectional technology

Usage

from transformers import pipeline

clf = pipeline("text-classification", model="crismolav/distilbert-patent-cpc-classifier", top_k=3)
clf("a steam turbine exhaust hood includes an exhaust hood section and a butterfly "
    "plate arranged in the exhaust hood section with a complex curvilinear profile.")
# -> [{'label': 'Mechanical Engineering; ...', 'score': ...}, ...]

Results (held-out test split, 5,000 abstracts)

Macro-F1 is the headline metric because the classes are heavily imbalanced (~26× between the largest and smallest section), so plain accuracy is misleading.

ModelMacro-F1Accuracy
TF-IDF + Logistic Regression (baseline)0.5580.594
DistilBERT (this model)0.6130.667

In context — on the same dataset, the LSG Attention paper (Table 2) reports RoBERTa-512 at 0.618 macro-F1 / 0.666 micro-F1, and the best long-document model (LSG) at ~0.644 macro-F1. This model matches the RoBERTa benchmark using a smaller, distilled architecture on abstracts truncated to 256 tokens — i.e. it sits ~3 points below the dataset's practical ceiling.

Per-class F1

Strongest: Human Necessities (0.76), Electricity (0.75), Physics (0.72). Weakest by far: CPC Y (0.11) — "general / cross-sectional technology". Y is applied on top of a primary technical area (e.g. a climate-friendly chemistry patent is tagged both C and Y), so as a single-label target it overlaps every other section and is intrinsically hard.

Top-k accuracy — the single-label ceiling is partly artificial

CPC is inherently multi-label (a patent carries ~1–3 codes on average and often spans several sections); this dataset keeps only the primary one. So many top-1 "errors" are the model naming a genuinely valid co-section rather than misreading the patent. On the test split:

top-1top-2top-3
Overall0.6670.8430.927
Class Y0.0720.7320.978

Y is ranked #1 only ~7% of the time but sits in the top-2 ~73% / top-3 ~98% — the model recognises Y patents, it just ranks their concrete technical section (C, F, H…) above the cross-cutting Y tag. Much of the apparent error is the single-label reduction of a multi-label task, not the model being wrong.

Training data

ccdv/patent-classification, abstract config (derived from BIGPATENT). Official splits: 25k / 5k / 5k.

The training split was cleaned for integrity before fine-tuning:

  • removed 192 exact-duplicate abstracts;
  • removed 149 abstracts that leaked from train into the validation/test splits (which would otherwise inflate the test score);
  • eval splits left untouched.

Net training set: 24,660 abstracts (the 340 removed rows are ~1.4% of train).

Training procedure

  • Base: distilbert-base-uncased
  • Max sequence length: 256 tokens (covers ~97% of abstracts; only ~3% are truncated)
  • 3 epochs, learning rate 2e-5, batch size 16, best checkpoint selected by validation macro-F1
  • Hardware: single Apple Silicon GPU (MPS)

Experiment: class-weighted loss

An inverse-frequency ("balanced") class-weighted cross-entropy was also tried to combat the imbalance. On test it was roughly a wash for macro-F1 (0.614 vs 0.613) at a small accuracy cost, but it more than doubled the worst class (Y F1 0.11 → 0.21, recall 0.07 → 0.18). The takeaway: inverse-frequency weighting redistributes performance toward rare classes rather than strictly improving the mean, and Y's difficulty is semantic overlap, not frequency. This published checkpoint is the unweighted model (higher accuracy, equal macro-F1).

Limitations & intended use

  • Scope: English patent abstracts; predicts CPC section only (not class/subclass). Not validated on claims, full text, or non-English patents.
  • Y section is unreliable (see above) — treat low-confidence Y predictions with caution.
  • Research / portfolio model, not for production IP decisions. CPC assignment in practice is multi-label and done by trained examiners.
  • Inherits biases of the underlying patent corpus (US-centric, time-bounded).

Citation

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей