Одним из главных событий в области компьютерной лингвистики и машинного обучения в 2018 году был выпуск BERT от Google AI, который признан лучшим докладом года по мнению североамериканского отделения Ассоциации компьютерной лингвистики (NACL). В этой статье мы расскажем об этой языковой модели и ее возможностях.
Для тех, кто не слышал ранее, BERT — это нейронная сеть, основанная на методе предварительной подготовки контекстных представлений слов, то есть использует двунаправленную модель языка, а также позволяет анализировать целые предложения. В этом случае, учитываются слова, которые идут после данного и через тоже. Этот метод позволяет получать с большим отрывом state-of-the-art результаты в широком спектре задач обработки естественного языка (NLP), но требует больших вычислительных мощностей.
Изначально BERT обучался на 104 языках Википедии (Многоязычный). В дополнение к многоязычной версии Google выпустила BERT на основе английской Википедии и BERT на китайском языке.
В лаборатории нейронных систем и глубокого обучения мы использовали BERT для улучшения NLP-компонентов DeepPavlov — диалоговой библиотеки с открытым исходным кодом для разработки виртуального диалогового помощника и анализа текста на основе TensorFlow и Keras. Мы обучили модель BERT на русской Википедии — RuBERT, значительно улучшив качество русских моделей. И кроме того, интегрировали BERT в решения трех популярных задач NLP: классификация текста, тегирование последовательностей и ответы на вопросы. Более подробно можно прочитать о BERT-моделях DeepPavlov в последних публикациях нашего блога:
Ключевой фишкой данного апдейта стал BERT, обученный лексикону социальных сетей на английском языке. Формальный язык Википедии отличается от обычной разговорной речи, при этом для решения некоторых задач, просто необходимо иметь таковую.
Разговорный BERT обучался на английском языке на открытых данных, полученных из Twitter, Reddit, DailyDialogues, OpenSubtitles, дебатах, блогах и комментариях к новостям Facebook. Эти данные использовались для построения словарного запаса английских субтокенов в англоязычную версию BERT в качестве инициализации для английского разговорного BERT. В результате разговорный BERT показал state-of-the-art результаты в задачах, в которых фигурируют социальные данные.
Вы можете использовать новую модель Insult detection, основанную на разговорном BERT на английском языке. Или любую другую модель на основе BERT, используя простое руководство из документации.
Модель SOTA Insult detection содержит двоичную классификационную задачу для обнаружения оскорблений. Для метрики ROC-AUC (измерение производительности для задачи классификации при различных настройках порогов) данная модель показывает значение 93.89 на данных в сравнении с обычным BERT — 92.55.
Итак, это почти все, что мы хотели рассказать вам о нашем разговорном BERT. И не забывайте, что у DeepPavlov есть форум – задавайте свои вопросы относительно библиотеки и моделей. Будь в деле!
Для тех, кто не слышал ранее, BERT — это нейронная сеть, основанная на методе предварительной подготовки контекстных представлений слов, то есть использует двунаправленную модель языка, а также позволяет анализировать целые предложения. В этом случае, учитываются слова, которые идут после данного и через тоже. Этот метод позволяет получать с большим отрывом state-of-the-art результаты в широком спектре задач обработки естественного языка (NLP), но требует больших вычислительных мощностей.
От формальной речи — к разговорной
Изначально BERT обучался на 104 языках Википедии (Многоязычный). В дополнение к многоязычной версии Google выпустила BERT на основе английской Википедии и BERT на китайском языке.
В лаборатории нейронных систем и глубокого обучения мы использовали BERT для улучшения NLP-компонентов DeepPavlov — диалоговой библиотеки с открытым исходным кодом для разработки виртуального диалогового помощника и анализа текста на основе TensorFlow и Keras. Мы обучили модель BERT на русской Википедии — RuBERT, значительно улучшив качество русских моделей. И кроме того, интегрировали BERT в решения трех популярных задач NLP: классификация текста, тегирование последовательностей и ответы на вопросы. Более подробно можно прочитать о BERT-моделях DeepPavlov в последних публикациях нашего блога:
- 19 entities for 104 languages: A new era of NER with the DeepPavlov multilingual BERT
- The BERT-based text classification models of DeepPavlov
- BERT-based Cross-Lingual Question Answering with DeepPavlov?
Совсем недавно вышел новый релиз библиотеки
Ключевой фишкой данного апдейта стал BERT, обученный лексикону социальных сетей на английском языке. Формальный язык Википедии отличается от обычной разговорной речи, при этом для решения некоторых задач, просто необходимо иметь таковую.
Разговорный BERT обучался на английском языке на открытых данных, полученных из Twitter, Reddit, DailyDialogues, OpenSubtitles, дебатах, блогах и комментариях к новостям Facebook. Эти данные использовались для построения словарного запаса английских субтокенов в англоязычную версию BERT в качестве инициализации для английского разговорного BERT. В результате разговорный BERT показал state-of-the-art результаты в задачах, в которых фигурируют социальные данные.
Как использовать Разговорный BERT в DeepPavlov
Вы можете использовать новую модель Insult detection, основанную на разговорном BERT на английском языке. Или любую другую модель на основе BERT, используя простое руководство из документации.
Модель SOTA Insult detection содержит двоичную классификационную задачу для обнаружения оскорблений. Для метрики ROC-AUC (измерение производительности для задачи классификации при различных настройках порогов) данная модель показывает значение 93.89 на данных в сравнении с обычным BERT — 92.55.
И напоследок
Итак, это почти все, что мы хотели рассказать вам о нашем разговорном BERT. И не забывайте, что у DeepPavlov есть форум – задавайте свои вопросы относительно библиотеки и моделей. Будь в деле!