![google logo](https://neurohive.io/wp-content/uploads/2018/07/google-logo1.jpg)
A LITE BERT (ALBERT) — это оптимизированная версия BERT от Google. Разработчики использовали два метода для снижения количества параметров нейросети: параметризация векторных представлений и обмен весов между слоями нейросети. По результатам экспериментов, ALBERT обходит самую полную версию BERT на задачах GLUE, RACE и SQuAD. Аналогичная версия BERT-large в ALBERT имеет в 18 раз меньше параметров и может быть обучена в 1.7 раз быстрее.
Увеличение размера модели на этапе предобучения векторных представлений слов часто результирует в улучшение качества предсказаний. Несмотря на это, обучение крупных моделей имеет очевидный недостаток — ограниченность вычислительных ресурсов. Это вытекает в увеличение времени на обучение модели и увеличения требований к объему памяти. Чтобы избавиться от этих проблем, исследователи из Google разработали 2 техники для оптимизации размера BERT. ALBERT масштабируется лучше, чем стандартный BERT. Чтобы модель выдавала более устойчивые результаты была использована self-supervised функция потерь, которая фокусируется на согласованности слов внутри предложения. Это помогает модели генерировать более связный текст для входных текстов, которые состоят из нескольких предложений.
![](https://neurohive.io/wp-content/uploads/2019/09/Snimok-ekrana-2019-09-30-v-13.15.06-570x140.png)
Методы уменьшения размера модели
Существующие решения для снижения размерности модели являются параллелизация модели и управление памятью. Эти методы справляются с проблемой ограниченности памяти. Однако они не повышают устойчивость модели к увеличению и уменьшению размера.
Что внутри ALBERT
ALBERT основана на архитектуре стандартного BERT, но модифицирована с помощью двух методов для снижения количества параметров. Методы включают в себя:
- Матрица векторных представлений слов делится на две маленькие матрицы: размер скрытых слоев напрямую отделяется от размера векторов (factorized embedding parameterization);
- Нейросеть передает параметры между слоями, чтобы параметры не росли с увеличением глубины нейросети (cross-layer parameter sharing)
Уменьшение параметров выступает как регуляризатор нейросети и стабилизирует обучение нейросети.
Результаты экспериментов
Ниже видно, что при значительном сокращении размера ALBERT выступает либо сравнимо, либо лучше BERT. Везде в качестве метрики использовалась точность.
![](https://neurohive.io/wp-content/uploads/2019/09/Snimok-ekrana-2019-09-30-v-13.16.19-570x128.png)