Введение в курс

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

David Cecchini

Data Scientist

Текстовые данные доступны в интернете

Примеры текстовых данных в интернете: новостные статьи, крупные интернет-компании и др.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Применение машинного обучения к текстовым данным

Четыре задачи:

  • Анализ тональности
  • Многоклассовая классификация
  • Генерация текста
  • Нейронный машинный перевод
Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Анализ тональности

Два эмодзи: улыбающееся лицо и недовольное лицо

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Многоклассовая классификация

Примеры классов жанров фильмов: фантастика, мелодрама и др.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Генерация текста

Пример машинно-генерируемого текста в мессенджере: приложение предлагает варианты ответов на входящее сообщение.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Нейронный машинный перевод

Пример перевода португальской фразы «Vamos jogar futebol esse domingo?» на английский: «Let's play soccer this Sunday?»

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Рекуррентные нейронные сети

Развёрнутое представление архитектуры RNN: веса между словами разделяются. Слова подаются в модель последовательно, и на последнем шаге модель формирует итоговый прогноз класса.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Модели «последовательность в последовательность»

Многие к одному: классификация

Архитектура RNN для задач классификации: модель делает прогноз только на последнем слове.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Модели «последовательность в последовательность»

Многие ко многим: генерация текста

Архитектура модели генерации текста. Модель разделена на две части: входной текст и сгенерированный текст. На этапе ввода прогноз делается только на последнем шаге; на этапе генерации — на каждом шаге, причём каждый прогноз служит входом для следующего.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Модели «последовательность в последовательность»

Многие ко многим: нейронный машинный перевод

Архитектура нейронного машинного перевода с энкодером и декодером для входного и выходного языков соответственно. Энкодер обучает языковую модель входного языка, декодер — выходного. Финальное состояние энкодера передаётся декодеру, который не получает других входных данных.

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Модели «последовательность в последовательность»

Многие ко многим: языковая модель

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

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Давайте потренируемся!

Рекуррентные нейронные сети (RNN) для языкового моделирования с Keras

Preparing Video For Download...