Какие стратегии искусственного интеллекта полезны для обобщения?

8

Если у меня есть параграф, я хочу подвести итог, например:

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

Лучше суммировать как:

Сегодня они ходили по магазинам в торговом центре и покупали одежду.

Какова лучшая стратегия ИИ для автоматизации этого процесса, если она есть? Если нет, то это потому, что это будет зависеть от наличия вначале внешнего информационного ресурса, который будет информировать любой алгоритм? Или это потому, что проблема носит контекстуальный характер?

dynrepsys
источник

Ответы:

6

В следующем посте есть немного математики, которая, я надеюсь, поможет лучше объяснить проблему. К сожалению, этот сайт SE не поддерживает LaTex:

Обобщение документов - очень большая проблема в исследованиях ИИ. Один из способов решения этой задачи в настоящее время называется «экстрактивным обобщением». Основная стратегия заключается в следующем: разделите этот документ на предложения, и мы представим в качестве резюме подмножество предложений, которые вместе охватывают все важные детали в посте. Присвойте предложение , , переменную , где указывает, что предложение было выбрано, а означает, что предложение пропущено. Тогда тогда и только тогда, когда были выбраны оба предложения. Мы также определим важность каждого предложения для предложенияi1inzi{0,1}zi=1zi=0zizj=1wiiи условия взаимодействия между предложениями и .wi,jij

Пусть - векторы признаков предложения . показывает, насколько важно включить это предложение (или темы, охватываемые им), в то время как указывает количество совпадений между предложениями в нашем резюме. Наконец, мы помещаем все это в проблему минимизации:xiiwi=w(xi)wi,j=w(xi,xj)

maximize ziiwiziwi,jzizjs.t. zi=0 or 1

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

Этот дизайн, на мой взгляд, отражает фундаментальные проблемы при обобщении текста и может быть расширен во многих отношениях. Мы обсудим это немного, но сначала нам нужно полностью указать функции . может быть функцией только предложения , но это также может зависеть от места предложения в документе или его контекста (находится ли предложение в начале абзаца? название? Какова его длина? В нем упоминаются какие-либо собственные существительные? и т. д.)wwi=w(xi)i

wi,j=w(xi,xj) является мерой подобия. Он измеряет, сколько будет повторений, если мы включим оба предложения в предложение. Это можно определить, посмотрев на общие слова между предложениями. Мы также можем извлечь темы или понятия из каждого предложения и посмотреть, сколько из них являются общими, и использовать языковые функции, такие как местоимения, чтобы увидеть, расширяется ли одно предложение на другое.

Чтобы улучшить дизайн, во-первых, мы могли бы сделать извлечение ключевой фразы, т.е. определить ключевые фразы в тексте и выбрать для определения вышеупомянутой проблемы с точки зрения тех, а не пытаться выбрать предложения. Эта проблема аналогична тому, что делает Google для суммирования новостных статей в результатах поиска, но я не знаю деталей их подхода. Мы могли бы также разбить предложения дальше на понятия и попытаться установить семантическое значение предложений (Понзо и Фила - люди P1 и P2, торговый центр - это место P, P1 и P2 отправились в место P во время T (день ). Вид транспорта прогулочный .... и тд). Для этого нам нужно использовать семантическую онтологию или другие базы данных здравого смысла. Тем не менее, все части этой последней проблемы семантической классификации открыты, и я еще не видел, чтобы кто-то достиг ее удовлетворительного прогресса.

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

Я надеюсь, что этот ответ объяснил основные проблемы, которые необходимо решить, чтобы добиться хороших систем суммирования. Это активная область исследований, и вы найдете самые последние статьи в Google Scholar, но сначала прочитайте страницу Википедии, чтобы узнать соответствующие термины.

жесткий
источник