Система диалога человек-машина и обработка естественного языка

задняя часть NLP

предисловие

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

NLP и человеко-машинный диалог

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

с участием НЛП

  • Слова: грамматика, семантика, прагматика.

  • Фразы (предложения): грамматика, семантика, прагматика.

  • Текст: Грамматика, Семантика, Прагматика.

Исследования слов и фраз относительно зрелы, и основные исследования сосредоточены на периоде после 2000 года. Исследования по главе незрелые, и основные исследования относятся к периоду после 2010 года.

Синтаксическое дерево:

  • DG

  • CFG

  • PCFG

  • LPCFG

Общие алгоритмы:

  • искать С

  • динамическое программирование Д.

  • Алгоритм классификации C

  • аннотация последовательности S

  • Алгоритм оптимизации О

Основная структура диалога между человеком и машиной

  • NLU: Понимание пользовательского ввода и преобразование естественного языка в структурированное представление.

  • ДМ: Системное решение.

  • NLG: Генерация естественного языка, которая преобразует структурированные представления в естественный язык.

Поэтому, согласно основной структуре, он разделен на три основных модуля, а именно NLU, DM и NLG.

понимание естественного языка

Понимание естественного языка состоит из трех частей:

  • Распознавание домена в основном предназначено для определения типов задач, таких как бронирование конференц-залов, покупка билетов на поезд, заказ еды и т. д.

  • Идентификация намерения, идентификация используется для намерения, такого как подтверждение пользователя, отклонение.

  • Заполнение слота, извлечение важной информации, связанной с задачей, такой как бронирование встречи, слот может быть определен как место встречи и время встречи.

Пользователь вводит «У меня завтра встреча в компании», и результат после обработки понимания естественного языка (классификация предложений, маркировка последовательности) таков:

Domain:会议室预定Intent:提供信息Slots:{Time:明天;Location:公司}

Исследовательский статус понимания естественного языка:

  • Метод, основанный на правилах, регулярные выражения, является трудоемким, менее гибким и менее переносимым.

  • Статистические методы, моделирование индивидуально и совместно. Раздельное моделирование изучает распознавание предметной области, распознавание намерений и заполнение слотов по отдельности и использует для их реализации машины опорных векторов, сверточные нейронные сети, деревья решений, условные случайные поля и рекуррентные нейронные сети, при этом происходит накопление ошибок.

Этапы разработки:

  1. Определите метки на основе требований задачи.

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

  3. Пишите регулярные выражения или создавайте модели для обучения моделей.

  4. Завершены исследования и разработки NLU.

  5. Итеративная оптимизация.

Управление диалогом

Основной фрейм модуля управления диалогами выглядит следующим образом:

  • Пользователь вводит «рестораны возле Вудаокоу», и после обработки NLU получается намерение = ask, slots={location: Wudaokou}.

  • Модуль отслеживания состояния диалога выводит slots={position: Wudaokou}.

  • Кандидатами на действия являются поиск ресторана и уточнение требований.

  • Политика сортирует действия-кандидаты.

  • Выполнение действия выполняет действие в соответствии с последовательностью действий для обновления состояния взаимодействия.

  • Произведено NLG, чтобы ответить: «Есть ли другие потребности?»

  • Пользователь продолжает печатать.

генерация естественного языка

Что касается модуля генерации естественного языка NLG, типичная генерация концепции в текст состоит из трех частей:

  1. Выбор контента выбирает соответствующий контент из входных данных и определяет структуру выходного текста.

  2. Планирование предложений, которое определяет лексическое содержание отдельных предложений.

  3. Выражение, которое отображает выбранное предложение на выходе.

Традиционная практика включает в себя:

  • Вероятностная контекстно-свободная грамматика

  • n-грамм

  • Обнаружение свойства

  • Пороговая фильтрация

  • текстовый фильтр

На основе глубокого обучения:

  • RNN

  • LSTM

  • seq2seq

  • encoder-decoder

Требуется несколько сотен тысяч обучающих выборок.

Вопросы и мысли

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

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

  • Диалоговые системы, включающие машинное обучение или глубокое обучение, требуют большого количества обучающих выборок, и нет возможности пропустить этап маркировки человеком.

  • Три модуля NLU, DM и NLG в основном вызываются в виде библиотек в виде инженерных вызовов.Если они вызываются в виде сервисов, это будет тяжелее, и это будет более хлопотно, если это связано с обновлениями , с участием многопроектных команд.

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

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

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

  • Что касается маркировки образцов, необходимо разработать удобную для пользователя систему маркировки, удобную для использования бизнес-персоналом или этикетировщиками.


Этот официальный аккаунт фокусируется на искусственном интеллекте, чтении и мыслях, беседах о математике, информатике, распределенном, машинном обучении, глубоком обучении, обработке естественного языка, алгоритмах и структурах данных, глубине Java, ядре Tomcat и т. д.