Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Генерация естественного языка ( NLG ) - это программный процесс, преобразующий структурированные данные в естественный язык . Его можно использовать для создания подробного содержимого для организаций, чтобы автоматизировать настраиваемые отчеты, а также для создания настраиваемого содержимого для веб-приложений или мобильных приложений. Его также можно использовать для создания коротких текстов в интерактивных беседах ( чат-бот ), которые даже могут быть прочитаны системой преобразования текста в речь .

Автоматизированный NLG можно сравнить с процессом, который используют люди, когда они превращают идеи в письмо или речь. Психолингвисты предпочитают термин « языковое производство» для этого процесса, который также можно описать математическими терминами или смоделировать на компьютере для психологических исследований. Системы NLG также можно сравнить с трансляторами искусственных компьютерных языков, такими как декомпиляторы или транспиляторы , которые также производят удобочитаемый код, сгенерированный из промежуточного представления . Человеческие языки имеют тенденцию быть значительно более сложными и допускают гораздо больше двусмысленности и разнообразия выражений, чем языки программирования, что делает NLG более сложным.

NLG можно рассматривать как противоположность понимания естественного языка (NLU): в то время как в понимании естественного языка системе необходимо устранять неоднозначность входного предложения для создания языка машинного представления, в NLG системе необходимо принимать решения о том, как поставить концепцию словами. Практические соображения при построении систем NLU и NLG несимметричны. NLU должен иметь дело с неоднозначным или ошибочным вводом пользователя, тогда как идеи, которые система хочет выразить через NLG, обычно известны точно. NLG необходимо выбрать конкретное самосогласованное текстовое представление из множества возможных, тогда как NLU обычно пытается создать единое, нормализованное представление выраженной идеи. [1]

NLG существует с момента разработки ELIZA в середине 1960-х годов, но коммерческая технология NLG появилась совсем недавно [ когда? ] становятся широко доступными. Методы NLG варьируются от простых систем на основе шаблонов , подобно слияние почты , который генерирует форму письма , к системам , которые имеют сложное понимание человеческой грамматики. NLG также можно выполнить путем обучения статистической модели с использованием машинного обучения , как правило, на большом корпусе текстов, написанных людьми. [2]

Пример [ править ]

Пыльца Прогноз Шотландии системы [3] представляет собой простой пример простой системы NLG , которая может быть , по существу шаблон. Эта система принимает на вход шесть чисел, которые дают прогнозируемые уровни пыльцы в разных частях Шотландии. На основе этих чисел система генерирует краткую текстовую сводку уровней пыльцы в качестве своего вывода.

Например, используя исторические данные за 1 июля 2005 г., программа производит:

Уровни пыльцы травы в пятницу выросли со вчерашнего умеренного до высокого уровня со значениями от 6 до 7 на большей части территории страны. Однако в северных районах уровни пыльцы будут умеренными - 4.

Напротив, фактический прогноз (написанный метеорологом-человеком) на основе этих данных был:

Ожидается, что количество пыльцы останется высоким на уровне 6 на большей части территории Шотландии и даже на уровне 7 на юго-востоке. Единственный рельеф находится на Северных островах и далеко на северо-востоке материковой Шотландии со средним уровнем содержания пыльцы.

Сравнение этих двух показывает некоторые из решений, которые должны сделать системы NLG; они более подробно обсуждаются ниже.

Этапы [ править ]

Процесс создания текста может быть таким же простым, как сохранение списка готового текста, который копируется и вставляется, возможно, связанного с каким-то связующим текстом. Результаты могут быть удовлетворительными в простых областях, таких как машины для гороскопов или генераторы персонализированных деловых писем. Однако сложная система NLG должна включать этапы планирования и объединения информации, чтобы можно было создавать текст, который выглядит естественно и не повторяется. Типичные этапы генерации естественного языка, предложенные Дейлом и Рейтером [1], следующие:

Определение содержания : решение о том, какую информацию упоминать в тексте. Например, в приведенном выше примере с пыльцой вы решаете, следует ли явно указывать, что уровень пыльцы равен 7 на юго-востоке.

Структурирование документа : Общая организация передаваемой информации. Например, вы решили сначала описать районы с высоким уровнем пыльцы, а не районы с низким уровнем пыльцы.

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

  • Уровни пыльцы травы на пятницу выросли от умеренных до высоких уровней вчерашнего дня и
  • Уровни пыльцы трав будут от 6 до 7 на большей части территории страны.

в следующее предложение:

  • Уровни пыльцы травы в пятницу выросли со вчерашнего умеренного до высокого уровня со значениями от 6 до 7 на большей части территории страны .

Лексический выбор : объединение слов с понятиями. Например, решение о том, следует ли использовать средний или средний уровень пыльцы при описании 4-го уровня пыльцы.

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

Реализация : Создание фактического текста, который должен быть правильным в соответствии с правилами синтаксиса , морфологии и орфографии . Например, using will будет для будущего времени to be .

Альтернативный подход к NLG - использовать «сквозное» машинное обучение для построения системы без отдельных этапов, как указано выше. [4] Другими словами, мы создаем систему NLG, обучая алгоритм машинного обучения (часто LSTM ) на большом наборе входных данных и соответствующих (написанных человеком) выходных текстах. Подход конца в конец уже , возможно , наиболее успешно субтитров изображения , [5] , который автоматически генерировать текстовый заголовок для изображения.

Приложения [ править ]

Популярные средства массовой информации уделяют наибольшее внимание системам NLG, которые генерируют шутки (см. « Вычислительный юмор» ), но с коммерческой точки зрения наиболее успешными приложениями NLG были системы преобразования данных в текст , которые генерируют текстовые сводки баз данных и наборов данных; эти системы обычно выполняют анализ данных, а также генерацию текста. Исследования показали, что текстовые резюме могут быть более эффективными, чем графики и другие визуальные эффекты для поддержки принятия решений [6] [7] [8], и что тексты, созданные компьютером, могут быть лучше (с точки зрения читателя), чем тексты, написанные человеком. [9]

Первые коммерческие системы преобразования данных в текст производили прогнозы погоды на основе данных о погоде. Первой такой системой, которая была развернута, была FoG [10], которую в начале 1990-х использовало Министерство охраны окружающей среды Канады для составления прогнозов погоды на французском и английском языках. Успех FoG дал толчок другой работе, как исследовательской, так и коммерческой. Недавние приложения включают прогноз Метеорологического управления Великобритании с текстовым расширением. [11]

В настоящее время существует значительный коммерческий интерес к использованию NLG для обобщения финансовых и коммерческих данных. Действительно, Gartner заявила, что NLG станет стандартной функцией 90% современных платформ бизнес-аналитики и аналитики. [12] NLG также коммерчески используется в автоматизированной журналистике , чат-ботах , создании описаний продуктов для сайтов электронной коммерции, обобщении медицинских записей [13] [14] и повышении доступности (например, путем описания графиков и наборов данных для слепых [ 15] ).

Примером интерактивного использования NLG является структура WYSIWYM . Он означает « То, что вы видите, то, что вы имели в виду», и позволяет пользователям видеть и управлять непрерывно отображаемым представлением (вывод NLG) базового документа формального языка (ввод NLG), тем самым редактируя формальный язык, не изучая его.

Системы создания контента помогают людям-писателям и делают процесс написания более эффективным и действенным. Создан инструмент генерации контента на основе веб-майнинга с использованием API поисковых систем. [16] Инструмент имитирует сценарий «вырезать и вставить», когда писатель формирует свой контент из различных результатов поиска. Проверка релевантности необходима для фильтрации нерелевантных результатов поиска; он основан на сопоставлении дерева синтаксического анализа запроса с деревьями синтаксического анализа возможных ответов. [17] В альтернативном подходе высокоуровневая структура текста, созданного человеком, используется для автоматического создания шаблона для новой темы для автоматически написанной статьи в Википедии . [18]

С 2009 года было основано несколько компаний, которые создают системы, преобразующие данные в повествование с помощью методов NLG и AI . К ним относятся Narrative Science, [19] Phrasetech, [20] Arria NLG , Automated Insights , Adzis NLG, [21] Retresco , Narrativa, [22] Visual NLG, [23] Yseop и United Robots. [24] Также существуют решения NLG с открытым исходным кодом, например RosaeNLG, [25] SimpleNLG, [26] The RiTa Toolkit, [27] и Sassbook AI Writer .

Оценка [ править ]

Как и в других областях науки, исследователям NLG необходимо проверить, насколько хорошо работают их системы, модули и алгоритмы. Это называется оценкой . Существует три основных метода оценки систем NLG:

  • Оценка на основе задач (внешняя) : дайте сгенерированный текст человеку и оцените, насколько хорошо он помогает ему выполнять задачу (или иным образом достигает своей коммуникативной цели). Например, систему, которая генерирует сводные медицинские данные, можно оценить, предоставив эти сводки врачам и оценив, помогают ли эти сводки врачам принимать более обоснованные решения. [14]
  • Человеческие оценки : дайте сгенерированный текст человеку и попросите его оценить качество и полезность текста.
  • Метрики : сравнивайте сгенерированные тексты с текстами, написанными людьми на основе тех же входных данных, используя автоматические метрики, такие как BLEU , METEOR и ROUGE .

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

В последнее время исследователи оценивают, насколько хорошо человеческие оценки и показатели коррелируют с оценками (прогнозируемыми), основанными на задачах. Работа ведется в контексте мероприятий с разделением задач « Вызовы поколений» [28] . Первоначальные результаты показывают, что человеческие рейтинги в этом отношении намного лучше, чем метрики. Другими словами, человеческие рейтинги обычно предсказывают эффективность задачи, по крайней мере, до некоторой степени (хотя бывают исключения), в то время как оценки, полученные на основе показателей, часто плохо предсказывают эффективность задачи. Эти результаты предварительные. В любом случае человеческие рейтинги - самый популярный метод оценки в NLG; это контрастирует с машинным переводом , где широко используются метрики.

См. Также [ править ]

  • Автозаполнение
  • Автоматизированная журналистика
  • Автоматическая перефразировка
  • Генераторы марковского текста
  • Теория смыслового текста
  • Генеративное искусство § Литература

Ссылки [ править ]

  1. ^ a b Дейл, Роберт; Рейтер, Эхуд (2000). Построение систем генерации естественного языка . Кембридж, Великобритания: Издательство Кембриджского университета. ISBN 978-0-521-02451-8.
  2. Перейти ↑ Perera R, Nand P (2017). «Последние достижения в области создания естественного языка: обзор и классификация эмпирической литературы». Вычислительная техника и информатика . 36 (1): 1–32. DOI : 10.4149 / cai_2017_1_1 .
  3. ^ R Turner, S Sripada, E Reiter, I Davy (2006). Создание пространственно-временных описаний в прогнозах пыльцы. Труды EACL06
  4. ^ "E2E NLG Challenge" .
  5. ^ "DataLabCup: Image Caption" .
  6. Перейти ↑ Law A, Freer Y, Hunter J, Logie R, McIntosh N, Quinn J (2005). «Сравнение графического и текстового представления данных временных рядов для поддержки принятия медицинских решений в отделении интенсивной терапии новорожденных». Журнал клинического мониторинга и вычислений . 19 (3): 183–94. DOI : 10.1007 / s10877-005-0879-3 . PMID 16244840 . 
  7. ^ Gkatzia D, лимон О, Рейзер В (2017). «Преобразование данных в текст улучшает процесс принятия решений в условиях неопределенности» (PDF) . Журнал IEEE Computational Intelligence Magazine . 12 (3): 10–17. DOI : 10,1109 / MCI.2017.2708998 .
  8. ^ "Текст или графика?" . 2016-12-26.
  9. ^ Reiter E, Шрипада S, Хантер J, Ю. J, Дэви I (2005). «Выбор слов в прогнозах погоды, генерируемых компьютером». Искусственный интеллект . 167 (1-2): 137–69. DOI : 10.1016 / j.artint.2005.06.006 .
  10. ^ Голдберг Е, Driedger Н, Киттредж R (1994). «Использование обработки естественного языка для составления прогнозов погоды». Эксперт IEEE . 9 (2): 45–53. DOI : 10.1109 / 64.294135 .
  11. ^ S Sripada, N Burnett, R Turner, J Mastin, D Evans (2014). Создание тематического исследования: NLG удовлетворяет спрос метеорологической отрасли на качество и количество текстовых прогнозов погоды. Материалы INLG 2014
  12. ^ «Нейронные сети и современные платформы бизнес-аналитики будут развивать данные и аналитику» .
  13. Перейти ↑ Harris MD (2008). «Построение крупномасштабной коммерческой системы NLG для EMR» (PDF) . Труды Пятой Международной конференции по поколению естественного языка . С. 157–60.
  14. ^ a b Portet F, Reiter E, Gatt A, Hunter J, Sripada S, Freer Y, Sykes C (2009). «Автоматическое создание текстовых резюме из данных неонатальной интенсивной терапии» (PDF) . Искусственный интеллект . 173 (7–8): 789–816. DOI : 10.1016 / j.artint.2008.12.002 .
  15. ^ http://www.inf.udec.cl/~leo/iGraph.html
  16. Галицкий, Борис (2013). Инструмент веб-майнинга для помощи в написании творческих текстов . Достижения в области информационного поиска. Конспект лекций по информатике . Конспект лекций по информатике. 7814 . С. 828–831. DOI : 10.1007 / 978-3-642-36973-5_95 . ISBN 978-3-642-36972-8.
  17. ^ Галицкий В, де ла Роса JL, Dobrocsi G (2012). «Вывод семантических свойств предложений путем добычи синтаксических деревьев синтаксического анализа». Инженерия данных и знаний . 81–82: 21–45. DOI : 10.1016 / j.datak.2012.07.003 .
  18. ^ Sauper, Кристина & Barzilay, Regina (2009). «Автоматическое создание статей в Википедии: подход с учетом структуры». Труды ACL .
  19. ^ [1]
  20. ^ [2]
  21. ^ [3]
  22. ^ [4]
  23. ^ [5]
  24. ^ [6]
  25. ^ [7]
  26. ^ [8]
  27. ^ [9]
  28. ^ Вызовы поколения 2009

Дальнейшее чтение [ править ]

  • Дейл, Роберт; Рейтер, Эхуд (2000). Построение систем генерации естественного языка . Кембридж, Великобритания: Издательство Кембриджского университета. ISBN 978-0-521-02451-8.
  • Эванс, Роджер; Пивек, Пол; Кэхилл, Линн (2002). «Что такое NLG?». Нью-Йорк, США. бумага
  • Гатт, Альберт; Крамер, Эмиэль (2018). «Обзор современного состояния генерации естественного языка: основные задачи, приложения и оценка» . Журнал исследований искусственного интеллекта . 61 : 65–170. arXiv : 1703.09902 . DOI : 10.1613 / jair.5477 .
  • Рейтер, Эхуд (16 января 2018 г.). "Как мне узнать о NLG?" .

Внешние ссылки [ править ]

  • Специальная группа ACL по вопросам генерации ( SIGGEN )
  • SIGGEN - часть антологии ACL (содержит исследовательские работы NLG)
  • Портал ACL NLG (содержит список ресурсов NLG)
  • «Почти полный» список систем NLG Бейтмана и Зока теперь поддерживается в виде Wiki с множеством визуализаций и обзорных таблиц, доступных по запросу.
  • Блог Эхуда Рейтера о генерации естественного языка
  • RosaeNLG RosaeNLG - это библиотека NLG с открытым исходным кодом (MIT), написанная на JavaScript на основе механизма шаблонов Pug (поддерживает любой язык и в настоящее время поставляется с ресурсами для английского, французского, немецкого и итальянского языков)
  • KPML - универсальная система генерации естественного языка с графическим пользовательским интерфейсом для разработки и грамматиками разного размера для китайского, чешского, голландского, английского, французского, немецкого, греческого, японского, португальского, русского и испанского языков.
  • SimpleNLG - библиотека Java с открытым исходным кодом для поддержки NLG (только на английском языке)
  • SimpleNLG-EnFr - Адаптация библиотеки Java с открытым исходным кодом для SimpleNLG, которая добавляет поддержку французского языка.
  • Cerebellum - Генератор символьных языковых моделей для английского, грузинского, венгерского, японского, русского, турецкого, словацкого, чешского и латыни
  • Storykube использует искусственный интеллект для поддержки всего процесса создания новостей (от сбора данных до генерации текста) и проверки фактов.
  • Интерактивное мультимедийное объяснение для обслуживания и ремонта оборудования - статья, описывающая испытательный стенд для согласованных мультимедийных объяснений (COMET)