/ Модель

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

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

bert-base-multilingual-cased-finetuned-openalex-topic-classification-title-abstract

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

Многоязычная BERT-модель OpenAlex присваивает научным публикациям темы из заданного набора по заголовку и аннотации.

3 206скачиваний за 30 дней12лайковвеса обновлены13 мая 2024

Бенчмарки

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

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

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

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

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

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

Модель OpenAlex разработана для классификации научных публикаций по заранее заданному набору тематик OpenAlex. Это дообученная многоязычная BERT-модель с архитектурой BertForSequenceClassification и 205,1 млн параметров; она принимает заголовок и аннотацию в заданном текстовом формате, а также может классифицировать текст только по заголовку или аннотации. Результат содержит тематическую метку OpenAlex и оценку модели для каждой темы.

Модель предназначена для быстрого определения тематики научной работы по её заголовку и аннотации. Она может быть компонентом более полной системы классификации публикаций, где также учитываются сведения о журнале и цитировании. Контекст модели составляет до 512 токенов, поэтому длинный входной текст обрезается. Доступны веса в форматах safetensors и TensorFlow; модель распространяется по лицензии Apache 2.0.

Это отдельная модель классификации текста, а не полная система OpenAlex для присвоения тем работам. Она обучена на размеченных данных CWTS; возможны смещения, унаследованные от базовой BERT-модели, а качество зависит от предобработки входа и соответствия тематики публикации фиксированному набору меток.

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

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

Ограничения

Модель выбирает темы из фиксированного набора и ограничена контекстом в 512 токенов; длинный текст обрезается. Это не полная система тематической классификации OpenAlex, и возможны смещения базовой BERT-модели.

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

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

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

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

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

Открыть на Hugging Face

bert-base-multilingual-cased-finetuned-openalex-topic-classification-title-abstract

This model is a fine-tuned version of bert-base-multilingual-cased on a labeled dataset provided by CWTS (for labeled data: CWTS Labeled Data). To see how CWTS labeled the data, please check out the following blog post: An open approach for classifying research publications

It was made with the purpose of being able to classify scholarly work with a fixed set of well-defined topics. This is NOT the full model being used to tag OpenAlex works with a topic. For that, check out the following github repo: OpenAlex Topic Classification

That repository will also contain information about text preprocessing, modeling, testing, and deployment.

Model description

The model was trained using the following input data format (so it is recommended the data be in this format as well):

Using both title and abstract: "<TITLE> {insert-processed-title-here}\n<ABSTRACT> {insert-processed-abstract-here}"

Using only title: "<TITLE> {insert-processed-title-here}"

Using only abstract: "<TITLE> NONE\n<ABSTRACT> {insert-processed-abstract-here}"

The quickest way to use this model in Python is with the following code (assuming you have the transformers library installed):

from transformers import pipeline

title = "{insert-processed-title-here}"
abstract = "{insert-processed-abstract-here}"

classifier = \
    pipeline(model="OpenAlex/bert-base-multilingual-cased-finetuned-openalex-topic-classification-title-abstract", top_k=10, "truncation":True,"max_length":512)

classifier(f"""<TITLE> {title}\n<ABSTRACT> {abstract}""")

This will return the top 10 outputs from the model. There will be 2 pieces of information here:

  1. Full Topic Label: Made up of both the OpenAlex topic ID and the topic label (ex: "1048: Ecology and Evolution of Viruses in Ecosystems")
  2. Model Score: Model's confidence in the topic (ex: "0.364")

Intended uses & limitations

The model is intended to be used as part of a larger model that also incorporates journal information and citation features. However, this model is good if you want to use it for quickly generating a topic based only on a title/abstract.

Since this model was fine-tuned on a BERT model, all of the biases seen in that model will most likely show up in this model as well.

Training procedure

Training hyperparameters

The following hyperparameters were used during training:

  • optimizer: {'name': 'Adam', 'weight_decay': None, 'clipnorm': None, 'global_clipnorm': None, 'clipvalue': None, 'use_ema': False, 'ema_momentum': 0.99, 'ema_overwrite_frequency': None, 'jit_compile': True, 'is_legacy_optimizer': False, 'learning_rate': {'module': 'transformers.optimization_tf', 'class_name': 'WarmUp', 'config': {'initial_learning_rate': 6e-05, 'decay_schedule_fn': {'module': 'keras.optimizers.schedules', 'class_name': 'PolynomialDecay', 'config': {'initial_learning_rate': 6e-05, 'decay_steps': 335420, 'end_learning_rate': 0.0, 'power': 1.0, 'cycle': False, 'name': None}, 'registered_name': None}, 'warmup_steps': 500, 'power': 1.0, 'name': None}, 'registered_name': 'WarmUp'}, 'beta_1': 0.9, 'beta_2': 0.999, 'epsilon': 1e-08, 'amsgrad': False}
  • training_precision: float32

Training results

Train LossValidation LossTrain AccuracyEpoch
4.80753.66860.38390
3.48673.33600.43371
3.18653.20050.45562
2.99693.13790.46753
2.84893.09000.47464
2.72123.07440.47995
2.60353.06600.48316
2.49423.07370.48467

Framework versions

  • Transformers 4.35.2
  • TensorFlow 2.13.0
  • Datasets 2.15.0
  • Tokenizers 0.15.0

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей