/ Модель

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

Контекст
128 токенов
Лицензия
OpenRAIL
Архитектура
crammedBERT · dense
Опубликована
13 июн 2023

crammed-bert

Заполнение пропусковТекст → текст3 профессии

Англоязычная модель crammed BERT заполняет пропуски в тексте и служит чекпойнтом предобучения для тонкой настройки на задачи понимания языка.

48скачиваний за 30 дней9лайковвеса обновлены13 июн 2023

Бенчмарки

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

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

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

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

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

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

crammed BERT — англоязычная модель семейства BERT, разработанная Jonas Geiping и представленная как один из итоговых чекпойнтов исследования «Cramming: Training a Language Model on a Single GPU in One Day». Она обучена с нуля методом masked language modeling за 24 часа на одном графическом процессоре A6000; архитектура относится к crammedBERT и предназначена для заполнения пропусков в тексте.

Это сырой чекпойнт предобучения для последующей тонкой настройки на прикладные задачи понимания языка, например GLUE. В карточке приведены результаты оценки после такой настройки, но сама модель не является готовым решением для этих задач. Для использования требуются код из репозитория cramming и Transformers.

Модель обучалась на отфильтрованных и отсортированных данных на основе The Pile. Автор отмечает, что последствия этих изменений для данных не проверялись, а сам чекпойнт не тестировался и не подходит для развертывания. Лицензия — OpenRAIL.

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

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

Ограничения

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

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

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

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

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

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

Открыть на Hugging Face

crammed BERT

This is one of the final models described in "Cramming: Training a Language Model on a Single GPU in One Day". This is an English-language model pretrained like BERT, but with less compute. This one was trained for 24 hours on a single A6000 GPU. To use this model, you need the code from the repo at https://github.com/JonasGeiping/cramming.

You can find the paper here: https://arxiv.org/abs/2212.14034, and the abstract below:

Recent trends in language modeling have focused on increasing performance through scaling, and have resulted in an environment where training language models is out of reach for most researchers and practitioners. While most in the community are asking how to push the limits of extreme computation, we ask the opposite question: How far can we get with a single GPU in just one day? We investigate the downstream performance achievable with a transformer-based language model trained completely from scratch with masked language modeling for a single day on a single consumer GPU. Aside from re-analyzing nearly all components of the pretraining pipeline for this scenario and providing a modified pipeline with performance close to BERT, we investigate why scaling down is hard, and which modifications actually improve performance in this scenario. We provide evidence that even in this constrained setting, performance closely follows scaling laws observed in large-compute settings. Through the lens of scaling laws, we categorize a range of recent improvements to training and architecture and discuss their merit and practical applicability (or lack thereof) for the limited compute setting.

Intended uses & limitations

This is the raw pretraining checkpoint. You can use this to fine-tune on a downstream task like GLUE as discussed in the paper. This model is provided only as sanity check for research purposes, it is untested and unfit for deployment.

How to use

import cramming
from transformers import AutoModelForMaskedLM, AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("JonasGeiping/crammed-bert")
model  = AutoModelForMaskedLM.from_pretrained("JonasGeiping/crammed-bert")

text = "Replace me by any text you'd like."
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)

Limitations and bias

The training data used for this model was further filtered and sorted beyond the normal Pile. These modifications were not tested for unintended consequences.

Training data, Training procedure, Preprocessing, Pretraining

These are discussed in the paper. You can find the final configurations for each in this repository.

  • data_budget_hours_24.json is the data configuration
  • train_budget_hours_24.json is the training configuration
  • arch_budget_hours_24.json is the architecture configuration

Evaluation results

When fine-tuned on downstream tasks, this model achieves the following results:

Glue test results:

TaskMNLI-(m/mm)QQPQNLISST-2CoLASTS-BMRPCRTEAverage
84.1/84.687.590.292.053.387.488.958.580.7

These numbers are the median over 5 trials on "GLUE-sane" using the GLUE-dev set. With this variant of GLUE, finetuning cannot be longer than 5 epochs on each task, and hyperparameters have to be chosen equal for all tasks. The numbers are also slightly higher than in the paper, this is the best pretraining checkpoint of the the 5 training runs, whereas the paper has the median pretraining checkpoint.

BibTeX entry and citation info

@article{geiping_cramming_2022,
  title = {Cramming: {{Training}} a {{Language Model}} on a {{Single GPU}} in {{One Day}}},
  shorttitle = {Cramming},
  author = {Geiping, Jonas and Goldstein, Tom},
  year = {2022},
  month = dec,
  eprint = {2212.14034},
  eprinttype = {arxiv},
  primaryclass = {cs},
  publisher = {{arXiv}},
  doi = {10.48550/arXiv.2212.14034},
  url = {http://arxiv.org/abs/2212.14034},
  urldate = {2023-01-10},
  abstract = {Recent trends in language modeling have focused on increasing performance through scaling, and have resulted in an environment where training language models is out of reach for most researchers and practitioners. While most in the community are asking how to push the limits of extreme computation, we ask the opposite question: How far can we get with a single GPU in just one day? We investigate the downstream performance achievable with a transformer-based language model trained completely from scratch with masked language modeling for a single day on a single consumer GPU. Aside from re-analyzing nearly all components of the pretraining pipeline for this scenario and providing a modified pipeline with performance close to BERT, we investigate why scaling down is hard, and which modifications actually improve performance in this scenario. We provide evidence that even in this constrained setting, performance closely follows scaling laws observed in large-compute settings. Through the lens of scaling laws, we categorize a range of recent improvements to training and architecture and discuss their merit and practical applicability (or lack thereof) for the limited compute setting.},
  archiveprefix = {arXiv},
  keywords = {Computer Science - Computation and Language,Computer Science - Machine Learning},
  journal = {arxiv:2212.14034[cs]}
}

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

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

GPU в ailist

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

Нельзя запустить

Архитектура crammedBERT неизвестна transformers в образе рантайма.

Класс архитектуры
ScriptableLMForPreTraining
Ревизия весов
35bf841

0 моделей