Введение

Обработка естественного языка (NLP) — это дисциплина информатики, включающая естественные языки и компьютеры. Он помогает машинам понимать, обрабатывать и анализировать человеческий язык. В наше время NLP легко из-за продвинутой вычислительной мощности, большей доступности больших наборов данных и глубокого обучения. В этой статье рассматривается роль глубокого обучения в области НЛП и широкий спектр его категорий. В этой статье объясняются проблемы, возможности и оценки влияния применения глубокого обучения на проблемы НЛП.

Задний план

Глубокое обучение использует глубокие нейронные сети для обработки огромных объемов данных, чтобы изучить проблему, направленную на решение задачи. Он может решить любую проблему при наличии большого и актуального набора данных. Он также обнаруживает и анализирует важные особенности постановки задачи.

Архитектуры глубокого обучения

Многочисленные архитектуры глубокого обучения были разработаны в различных областях исследований.

  1. Многослойный персептрон

Многослойный персептрон (MLP) имеет как минимум три слоя — входной, скрытый и выходной. Слой передает информацию от предыдущего слоя к следующему слою с помощью нейронов. Нейроны не общаются друг с другом и используют нелинейные функции активации. Каждый узел образует полносвязную сеть, будучи соединенным с другими нейронами следующего слоя. MLP — это простейшая форма нейронных сетей с прямой связью (FNN), которые не создают никакого цикла.

2. Сверточные нейронные сети

CNN внутренне используют свертку в качестве своей математической функции, которая является мерой функциональной совместимости ее входных функций. Он в основном используется, когда данные должны быть представлены в виде 2D или 3D карты. Точки данных на карте представляют корреляцию информации. В CNN изображений пиксели изображения карты данных сильно коррелируют с соседними пикселями. CNN имеют ширину, высоту и глубину. CNN принимает изображение, представленное в виде массива числовых значений. После извлечения признаков основное содержимое изображения захватывается и представляется в выходных данных. Эти функции можно использовать для различных задач, таких как классификация изображений или обнаружение объектов. В случае использования CNN для НЛП входными данными являются предложения или документы, представленные в виде матриц. Каждая строка матрицы связана с элементом языка, таким как слово или символ. Архитектуры CNN используются для различных задач классификации, таких как анализ настроений и категоризация тем.

3. Рекуррентная нейронная сеть

Когда мы подаем выходные данные каждой FNN в качестве входных данных для следующей, будет построена рекуррентная нейронная сеть (RNN). Как и FNN, слои в RNN можно разделить на входные, скрытые и выходные слои. Последовательности входных векторов подаются в качестве входных данных в дискретных временных рамках, по одному вектору за раз. Таким образом, как показано на рис. 2, на каждом временном шаге мы используем параметры текущего скрытого слоя в качестве входных данных для следующего временного шага и делаем прогнозы.

Скрытые слои в RNN несут информацию из прошлого или запоминают эту информацию. Это особенно полезно для входных данных последовательного типа. Сеть с долговременной кратковременной памятью (LSTM) является наиболее широко используемым классом RNN. LSTM фиксируют длительные временные зависимости между входными данными с разных временных шагов. Распознавание речи часто зависит от LSTM.

4. Автокодировщики

Автокодировщики реализуют неконтролируемые методы глубокого обучения и состоят из последовательного моделирования. Они используются в приложениях уменьшения размерности или НЛП. На рис. 3 показана схема автоэнкодера. Они стремятся изучить представление кода для каждого входа, поскольку нет метки, соответствующей каждому входу. Декодер работает аналогично кодировщику, но в обратном порядке, т. е. строит выход на основе закодированного ввода.

5. Генеративно-состязательные сети

GAN представляет собой комбинацию двух нейронных сетей, дискриминатора и генератора и носит итеративный характер. Во-первых, сеть генератора генерирует поддельный образец. Затем сеть дискриминатора пытается решить, является ли этот образец реальным или поддельным. Цель генератора состоит в том, чтобы обмануть дискриминатор так, чтобы он поверил, что сгенерированные генератором выборки реальны. Этот итеративный процесс продолжается до тех пор, пока генератор не создаст выборки, неразличимые дискриминатором. В GAN, после завершения этапа обучения, нет необходимости в сети дискриминации, поэтому мы можем работать только с сетью генерации. В области НЛП сети GAN часто используются для генерации текста.

Основные концепции НЛП

Представление функций

Для систем НЛП из-за проблем, связанных с атомарным представлением символов, необходимо изучить представления слов. Закодированные входные функции могут быть символами, словами или предложениями. Предпочтительнее обеспечить компактное представление слов, чем разреженное. Подходы Word2vec и doc2vec были предложены как неконтролируемый алгоритм и называются Paragraph Vector (PV). Doc2vec преодолевает недостатки BoW и эффективен в классификации текстов и анализе настроений.

Одновременное представление

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

Непрерывный набор слов

CBOW пытается предсказать слово, учитывая окружающий его контекст. CBOW не зависит ни от последовательного порядка слов, ни от вероятностных характеристик. Эта модель в основном используется в качестве предварительно обученной модели для более сложных задач. Во взвешенном CBOW (WCBOW) векторы получают разные веса в зависимости от их относительной важности в контексте. Оценки TF-IDF являются примером CBOW.

Встраивание на уровне Word

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

Встраивание на уровне символов

CNN успешно использовались для создания вложений на уровне символов и использовались в НЛП. Он может использовать небольшие размеры модели и представлять слова с элементами языка более низкого уровня. Он также использует проблему слова вне словаря (OOV), которая обычно возникает, когда для данного слова нет эквивалентного вектора во встраивании слова. Этот подход страдает слабой корреляцией между знаками и семантическими и синтаксическими частями языка.

Структура Seq2Seq

Seq2seq моделирует ввод, а вывод представляется в виде последовательности. Это используется в таких приложениях, как машинный перевод, суммирование текста, преобразование речи в текст и преобразование текста в речь. Он состоит из кодера и декодера. Кодер берет последовательность входных данных и генерирует промежуточные выходные данные, которые используются декодером для создания серии конечных выходных данных. Это реализовано с использованием рекуррентных нейронных сетей или LSTM. В различных приложениях декодер может использовать больше информации, такой как вектор контекста или векторы внутреннего внимания, для создания более качественных выходных данных. Форсирование учителя — распространенный подход к обучению модели. Как только модель оптимизирована с использованием кросс-энтропийной потери, она может генерировать всю последовательность следующим образом. В приложениях NLP вывод можно улучшить, используя поиск луча, чтобы найти достаточно хорошую выходную последовательность. Во время поиска луча вместо использования argmax для выбора наилучшего вывода мы выбираем K лучших выходов на каждом шаге, генерируем K различных путей для выходной последовательности и, наконец, выбираем тот, который обеспечивает лучшую производительность, в качестве конечного результата.

Обучение с подкреплением в НЛП

У моделей Seq2seq есть две проблемы: (1) погрешность воздействия и (2) несоответствие между измерениями времени обучения и времени тестирования. При принуждении учителя во время обучения модели декодер использует два входа, предыдущее состояние вывода декодера и реальный ввод, чтобы определить его текущее состояние вывода. Однако при тестировании декодер полностью полагается на ранее созданный токен из дистрибутива модели. Поскольку достоверные данные недоступны, такой шаг необходим для прогнозирования следующего действия. Отныне при обучении входные данные декодера исходят из реальных данных, а на этапе тестирования он опирается на предыдущий прогноз. Это создает рост ошибок. Чтобы решить эту проблему, устраните зависимость от истинности в обучении, полагаясь исключительно на распределение модели, чтобы минимизировать потери перекрестной энтропии. Вторая проблема с моделями seq2seq заключается в том, что когда обучение завершается с использованием кросс-энтропийной потери, она обычно оценивается с использованием ROUGE или METEOR. Это приведет к несоответствию между целью обучения и метрикой оценки теста. Эту проблему можно решить с помощью обучения с подкреплением. Модель использует свои прогнозы для создания последовательности действий (последовательности слов). Затем на каждом временном шаге используется жадный алгоритм поиска для определения оптимального действия, и политика обучается предсказывать это конкретное действие.

В обучении актера-критика актером обычно является та же нейронная сеть, которая используется для генерации выходных данных, а критиком является регрессионная модель, которая оценивает, как актер работал с входными данными. Позже актер получает обратную связь от критика и совершенствует свои действия. Серьезной проблемой является огромное пространство действий в приложениях НЛП, что затрудняет выбор правильного действия и делает процесс обучения очень медленным. Это делает процесс поиска лучшей модели актера-критика очень сложным, а конвергенция модели обычно требует множества настроек моделей.

Наборы данных

Бенчмаркинг — это оценка методов и алгоритмов для проверки их способности изучать определенные закономерности. Бенчмаркинг помогает проверить новый подход по сравнению с другими существующими методами. Наборы эталонных данных обычно принимают одну из трех форм. 1) Первые — это реальные данные. 2) Вторые — синтетические данные, созданные искусственно. Он в основном используется, когда требуемых данных больше, чем доступных данных, или конфиденциальность данных вызывает беспокойство. 3) Третий тип — игрушечные наборы данных, используемые для демонстрации и визуализации. Они создаются искусственно. Эффективность модели глубокого обучения зависит от качества данных. Модель необходимо обучать на данных, связанных с желаемой задачей. Следовательно, для различных машинных доменов, таких как НЛП, создание новых наборов данных имеет решающее значение. Однако это непросто. Данные должны иметь 3 свойства — правильные данные для обучения, достаточные для оценки и точные для работы. Набор обучающих данных используется для обучения модели тому, как находить связи между входными данными и соответствующими выходными данными. Набор тестовых данных используется для оценки интеллекта машины. Подготовка данных, чтобы убедиться, что это просто и понятно для специалистов-людей. Для распространения данных может потребоваться особое разрешение, особенно если мы имеем дело с конфиденциальными или частными данными. Создание правильных наборов данных сложно и очень важно. Вот почему исследователи и разработчики часто выбирают несколько наборов данных для сравнительного анализа.

Глубокое обучение для задач НЛП

Тегирование частей речи

Маркировка частей речи — одна из основных задач обработки естественного языка. Это процесс маркировки слов их категориями частей речи. Набор данных WSJ corpus7 содержит более миллиона токенов и широко используется в качестве эталонной системы маркировки наборов данных. Для задач маркировки последовательностей было предложено большое количество моделей на основе нейронных сетей, например, сети LSTM, двунаправленные сети LSTM, сети LSTM со слоем CRF8 и т. д. Сама маркировка последовательностей включает тегирование части речи, фрагментацию и распознавание именованных объектов.

Анализ

Разбор — это присвоение структуры распознанной строке. Парсинг избирательного округа относится, в частности, к присвоению синтаксической структуры предложению. Жадный синтаксический анализатор выполняет синтаксическую и семантическую сводку контента, используя векторные представления. Недавно модели глубоких нейронных сетей превзошли традиционные алгоритмы. Анализ зависимостей показывает структурные отношения между словами в целевом предложении. При разборе зависимостей фразовые элементы и правила построения фраз не способствуют процессу. Нейронные сети показали свое превосходство в отношении универсальности и снижения стоимости вычисления признаков. Двунаправленные LSTM использовались в анализаторах зависимостей для представления функций. Новая структура управления была введена для нейронных сетей между последовательностями на основе стека LSTM и использовалась при синтаксическом анализе на основе переходов.

Семантическая маркировка ролей

Маркировка семантической роли (SRL) — это процесс идентификации и классификации текстовых аргументов. Это делается для характеристики элементов, чтобы определить, «кто» сделал, «что» с «кому», а также «как», «где» и «когда». Цель SRL — извлечь семантические отношения между предикатом и соответствующими аргументами.

В последнее время подходы к глубокому обучению достигли уровня SRL, не принимая во внимание явное представление синтаксиса. В современных современных методах используется совместное предсказание предикатов и аргументов, новые подходы к представлению слов и модели внутреннего внимания.

Классификация текста

Основной целью классификации текста является присвоение текстовым частям предопределенных категорий для целей предварительной классификации. Простым примером является категоризация данных документов как политических или неполитических новостных статей. Использование CNN для классификации предложений, в котором обучение модели поверх предварительно обученных векторов слов посредством точной настройки, привело к значительным улучшениям в изучении векторов для конкретных задач. RNN использовались для классификации текстов. Архитектура LSTM-RNN использовалась для встраивания предложений с особым преимуществом в определенной задаче веб-поиска. Рекуррентная архитектура в дополнение к максимальному объединению с эффективным методом представления слов демонстрирует превосходство по сравнению с простыми подходами нейронной сети на основе окна.

Извлечение информации

Извлечение информации идентифицирует структурированную информацию из «неструктурированных» данных, таких как сообщения в социальных сетях и онлайн-новости. Извлечение информации имеет подзадачи, такие как распознавание именованных объектов, извлечение отношений, разрешение корреференций и извлечение событий.

Распознавание именованных объектов

Распознавание именованных объектов (NER) направлено на поиск и классификацию именованных объектов в контексте в заранее определенные категории, такие как имена людей и места.

Извлечение отношений

Извлечение отношений направлено на поиск семантических отношений между парами сущностей. Модель рекурсивной нейронной сети (RNN) была предложена для классификации семантических отношений путем изучения композиционных векторных представлений.

Разрешение базовой ссылки

Разрешение кореферентности включает идентификацию упоминаний в контексте, которые относятся к одному и тому же объекту. Например, упоминания «автомобиль», «Камри» и «оно» могут относиться к одному и тому же объекту.

Извлечение событий

Извлечение событий, распознавание слов-триггеров, связанных с событием, и присвоение меток упоминаниям сущностей, которые представляют собой триггеры событий.

Анализ настроений

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

1) Анализ настроений на уровне документа. Задача состоит в том, чтобы определить, отражает ли весь документ положительное или отрицательное отношение ровно к одному объекту. Для этого была использована архитектура закрытой рекуррентной нейронной сети.

2) Анализ настроений на уровне предложений. Анализ настроений определяет положительность, отрицательность или нейтральность мнения, выраженного в предложении. Рекурсивные автоматические кодировщики использовались для прогнозирования меток тональности на уровне предложений.

3) Анализ настроений на уровне аспектов: Анализ настроений на уровне аспектов напрямую нацелен на мнение, с предположением о существовании настроения и его цели. Анализ тональности на уровне аспекта обычно включает классификацию тональности аспекта и извлечение аспекта. Первый определяет мнения по различным аспектам (положительные, нейтральные или отрицательные), а второй определяет целевой аспект для оценки в контексте. Для этого предлагаются LSTM на основе внимания.

Машинный перевод (МТ)

Это одна из областей НЛП, на которую сильно повлияли достижения в области глубокого обучения.

  1. Традиционный машинный перевод

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

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

В отличие от традиционного статистического машинного перевода, NMT основан на сквозной нейронной сети. Это означает, что нет необходимости в обширной предварительной обработке и выравнивании слов. Последовательность входных токенов подается в сеть. Как только он достигает маркера конца предложения (EOS), он начинает генерировать выходную последовательность. Выходная последовательность генерируется тем же рекуррентным образом, что и входная последовательность, пока не достигнет токена конца предложения. Одним из основных преимуществ этого подхода является то, что нет необходимости указывать длину последовательности; сеть учитывает это автоматически.

3. Вопрос Ответ

Ответы на вопросы (QA) — это более подробная версия информационного поиска (IR). В IR желаемый набор информации должен быть извлечен из набора документов. В QA ищутся конкретные ответы, как правило, те, которые можно вывести из доступных документов.

  1. Ответы на вопросы, основанные на правилах: «Бейсбол» — одна из первых работ по обеспечению качества. Система бейсбола состоит из (1) чтения вопроса, (2) поиска слов в вопросе в словаре, (3) синтаксического (POS) анализа слов. рассматриваемый вопрос, (4) анализ содержания для извлечения входного вопроса и (5) оценка релевантности ответа на входной вопрос.
  2. Ответы на вопросы в эпоху глубокого обучения. Смартфоны (Siri, Ok Google, Alexa и т. д.) являются распространенными примерами систем контроля качества, с которыми многие взаимодействуют ежедневно. Если раньше такие системы использовали методы, основанные на правилах, то сегодня их основной алгоритм основан на глубоком обучении. Система пытается выбрать в базе данных предложение, в котором есть ответ на вопрос, а вектор признаков представляет каждую пару вопрос-предложение. Сверточные нейронные сети для кодирования пар предложений «вопрос-ответ» в виде векторов фиксированной длины независимо от длины входного предложения. Вместо использования мер расстояния, таких как косинусная корреляция, они включают нелинейный тензорный слой для согласования релевантности между вопросом и ответом.
  3. Визуальный ответ на вопрос: учитывая входное изображение, визуальный ответ на вопрос (VQA) пытается ответить на вопрос об изображении на естественном языке. VQN решает множество проблем, таких как обнаружение объектов, сегментация изображений, анализ настроений.

Обобщение документа

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

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

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

Диалоговые системы

Диалоговые системы быстро становятся основным инструментом взаимодействия человека с компьютером, отчасти благодаря их многообещающему потенциалу и коммерческой ценности. Из-за высокой стоимости знающих человеческих ресурсов компании часто обращаются к интеллектуальным диалоговым машинам. Диалоговые системы обычно основаны на задачах или не основаны на задачах. Несмотря на полезные статистические модели, используемые в бэкенде диалоговых систем, большинство развернутых диалоговых систем полагаются на дорогостоящие ручные и ручные функции для работы. Глубокое обучение облегчает создание сквозных диалоговых систем, ориентированных на задачи, которые обогащают структуру для обобщения разговоров за пределами аннотированных диалоговых ресурсов для конкретных задач.

Системы, основанные на задачах. Структура диалоговой системы, основанной на задачах, обычно состоит из следующих элементов:

Понимание естественного языка (NLU). Этот компонент занимается пониманием и интерпретацией разговорного контекста пользователя путем присвоения составной структуры произнесенному высказыванию.

Диспетчер диалогов (DM):созданное NLU представление будет обрабатываться диспетчером диалогов, который исследует контекст и возвращает разумный семантически связанный ответ.

Генерация естественного языка (NLG):компонент генерации естественного языка (NLG) создает высказывание на основе ответа, предоставленного компонентом DM.

Общий конвейер выглядит следующим образом: модуль NLU (то есть семантический декодер) преобразует выходные данные модуля распознавания речи в некоторые элементы диалога. Затем DM обрабатывает эти элементы диалога и предоставляет подходящий ответ, который передается в NLG для генерации ответа. Недавние диалоговые системы, ориентированные на выполнение задач, были разработаны на основе глубокого обучения с подкреплением, которое дало многообещающие результаты в отношении производительности, адаптации предметной области и создания диалогов.

Системы, не связанные с задачами

В отличие от диалоговых систем, основанных на задачах, цель разработки и развертывания диалоговых систем, не основанных на задачах, состоит в том, чтобы дать машине возможность вести естественный диалог с людьми. Как правило, чат-боты относятся к одному из следующих типов: методы на основе поиска и генеративные методы. Модели, основанные на поиске, имеют доступ к информационным ресурсам и могут давать более краткие, беглые и точные ответы. С другой стороны, генеративные модели имеют то преимущество, что могут давать подходящие ответы, когда таких ответов нет в корпусе. Однако, в отличие от моделей, основанных на поиске, они более склонны к грамматическим и концептуальным ошибкам, возникающим из их генеративных моделей. Методы на основе поиска выбирают подходящий ответ из ответов-кандидатов. Методы, основанные на поиске, обычно используют либо однооборотное сопоставление ответов, либо многооборотное сопоставление ответов. В первом типе текущий запрос (сообщение) используется исключительно для выбора подходящего ответа. Модель пытается выбрать ответ, учитывающий весь контекст, чтобы гарантировать согласованность разговора. Для создания векторов контекста и ответов была предложена модель на основе LSTM. Генеративные модели не предполагают наличия предопределенных ответов. Новые ответы создаются с нуля и основаны на обученной модели. Генеративные модели обычно основаны на моделях последовательности для последовательности и отображают входной запрос на целевой элемент в качестве ответа. В общем, разработка и реализация диалогового агента, способного общаться на человеческом уровне, очень сложна. Для этой цели машина обычно обучается на больших корпусах разговоров. Для количественной оценки состязательная оценка первоначально использовалась для оценки качества генерации предложений и использовалась для оценки качества диалоговых систем. Несмотря на значительный прогресс в области искусственного интеллекта и большое внимание, уделяемое диалоговым системам, в действительности успешные коммерческие инструменты, такие как Siri от Apple и Alexa от Amazon, по-прежнему в значительной степени зависят от функций, созданных вручную. Спроектировать и обучить диалоговые машины, управляемые данными, по-прежнему очень сложно, учитывая сложность естественного языка, трудности проектирования фреймворка и сложный характер доступных источников данных.

Вывод

В этой статье мы представили всесторонний обзор наиболее выдающихся работ в области обработки естественного языка с использованием глубокого обучения. Мы предоставили категоризированный контекст для представления различных основных концепций, аспектов и приложений НЛП и подчеркнули наиболее значительные проведенные исследования в каждой связанной категории. Глубокое обучение и НЛП — две наиболее быстро развивающиеся темы исследований в настоящее время. Есть надежда, что в связи с этим быстрым прогрессом новые эффективные модели вскоре заменят нынешние передовые подходы.

Эта статья представляет собой обзор приведенной ниже статьи IEEE —

https://arxiv.org/pdf/2003.01200.pdf