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

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

  • Схема: положительные примеры + отрицательные примеры + базовые знаниягипотеза .

Индуктивное логическое программирование особенно полезно в биоинформатике и обработке естественного языка . Гордон Плоткин и Эхуд Шапиро заложили первоначальную теоретическую основу для индуктивного машинного обучения в логической среде. [1] [2] [3] Шапиро построил свою первую реализацию (систему вывода моделей) в 1981 году: [4] программу на языке Prolog, которая индуктивно выводила логические программы из положительных и отрицательных примеров. Термин « индуктивное логическое программирование» впервые был введен [5] в статье Стивена Магглетона в 1991 году [6].Muggleton также основала ежегодную международную конференцию по индуктивному логическому программированию, представила теоретические идеи предикатного изобретения, Inverse разрешения , [7] и обратное следование. [8] Muggleton первым реализовал обратный вывод в системе PROGOL . Термин « индуктивный » здесь относится к философской (т.е. предлагающей теорию для объяснения наблюдаемых фактов), а не к математической (т.е. доказывающей свойство для всех членов хорошо упорядоченного множества) индукции.

Формальное определение [ править ]

Фоновые знания даются как теория логики B , обычно в виде Хорн , используемый в логическом программировании . Эти положительные и отрицательные примеры приведены в виде конъюнкции и из unnegated и инверсных наземных литералов , соответственно. Правильная гипотеза Н является логическим предложением , удовлетворяющий следующим требованиям. [9]

Необходимость: B ⊭ E + Достаточность: B ∧ час ⊨ E + Слабая консистенция: B ∧ час ⊭ ложный Сильная консистенция: B ∧ час ∧ E - ⊭ ложный {\displaystyle {\begin{array}{llll}{\text{Necessity:}}&B&\not \models &E^{+}\\{\text{Sufficiency:}}&B\land h&\color {blue}{\models }&E^{+}\\{\text{Weak consistency:}}&B\land h&\not \models &{\textit {false}}\\{\text{Strong consistency:}}&B\land h\land E^{-}&\not \models &{\textit {false}}\end{array}}}

« Необходимость » не накладывает ограничения на h , но запрещает любое создание гипотезы, если положительные факты объяснимы без нее. « Достаточность » требует, чтобы любая сгенерированная гипотеза h объясняла все положительные примеры . « Слабая согласованность » запрещает поколение любой гипотезы ч , что противоречит фоновым знаниям B . « Сильная согласованность » также запрещает генерировать любую гипотезу h, которая несовместима с отрицательными примерами , учитывая фоновые знания B ; это подразумевает " Слабую последовательность"; если не приводятся отрицательные примеры, оба требования совпадают. Джероски [10] требует только" Достаточность "(называемая там" Полнота ") и" Сильная согласованность ".

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

Предполагаемые семейные отношения в разделе «Пример»

В следующем известном примере изучения определений семейных отношений используются сокращения

par : родитель , fem : женщина , dau : дочь , g : Джордж , h : Хелен , m : Мэри , t : Том , n : Нэнси и e : Ева .

Все начинается с базовых знаний (см. Рисунок)

,

положительные примеры

,

и тривиальное утверждение верно для обозначения отсутствия отрицательных примеров.

Плоткин [11] [12] " относительное наименьшее общее обобщение (rlgg) " подход к индуктивному логическому программированию должен быть использован для получения предложения о том, как формально определить дочернее отношение dau .

В этом подходе используются следующие шаги.

  • Релятивизируйте каждый положительный пример в буквальном смысле с полным базовым знанием:
    ,
  • Преобразовать в нормальную форму предложения :
    ,
  • Антиунифицируйте каждую совместимую [13] пару [14] литералов:
    • из и ,
    • из и ,
    • из и ,
    • from и аналогично для всех других литералов фоновых знаний
    • from and , и многие другие отрицательные литералы
  • Удалите все отрицательные литералы, содержащие переменные, которых нет в положительном литерале:
    • после удаления всех инвертированных литералов, содержащих другие переменные , остается только вместе со всеми базовыми литералами из фоновых знаний
  • Преобразуйте предложения обратно в форму Horn:

Результирующее предложение Хорна является гипотезой h, полученной с помощью подхода rlgg. Игнорируя основные факты знания, предложение неофициально гласит: « называется дочерью того, если является родителем и является женщиной », что является общепринятым определением.

Что касается вышеуказанных требований, « Необходимость » была удовлетворена, потому что предикат dau не появляется в фоновых знаниях, что, следовательно, не может подразумевать какое-либо свойство, содержащее этот предикат, например положительные примеры. « Достаточность » удовлетворяется вычисленной гипотезой h , поскольку она, вместе с исходными знаниями, подразумевает первый положительный пример , и аналогично h и фоновые знания подразумевают второй положительный пример . " Слабая согласованность " удовлетворяется h , поскольку h выполняется в (конечном)Структура Herbrand, описанная базовыми знаниями; аналогично « Сильная консистенция ».

Общее определение отношения бабушки, а именно. , невозможно изучить с помощью описанного выше подхода, поскольку переменная y встречается только в теле предложения; соответствующие литералы были бы удалены на 4-м шаге подхода. Чтобы преодолеть этот недостаток, этот шаг должен быть изменен таким образом, чтобы его можно было параметризовать с помощью различных буквальных эвристик после выбора . Исторически реализация GOLEM основана на подходе rlgg.

Система индуктивного логического программирования [ править ]

Индуктивная логическое программирование системы представляет собой программу , которая принимает в качестве входных логических теорий и выводит правильную гипотезы H теории WRT Алгоритм системы ILP состоит из двух частей: поиск гипотез и выбор гипотез. Сначала выполняется поиск гипотезы с помощью процедуры индуктивного логического программирования, затем с помощью алгоритма выбора выбирается подмножество найденных гипотез (в большинстве систем одна гипотеза). Алгоритм выбора оценивает каждую из найденных гипотез и возвращает те, которые имеют наивысшую оценку. Пример функции оценки включает минимальную длину сжатия, когда гипотеза с наименьшей сложностью Колмогорова имеет наивысшую оценку и возвращается. Система ILP является завершенной, если и только если применимы любые теории входной логики.любая правильная гипотеза H относительно этих входных теорий может быть найдена с помощью соответствующей процедуры поиска гипотезы.

Поиск гипотез [ править ]

Современные ILP системы , такие как Progol, [6] Славься [15] и Imparo [16] найти гипотезу H , используя принцип обратного следования [6] для теорий B , E , H : . Сначала они строят промежуточную теорию F, называемую теорией мостов, удовлетворяющую условиям и . Затем они обобщают отрицание мостовой теории F с анти-следствием. [17]Однако операция анти-следствия, поскольку она сильно недетерминирована, является более затратной в вычислительном отношении. Следовательно, поиск альтернативной гипотезы может быть проведен с использованием вместо этого операции обратного подчинения (анти-подчинения), которая менее недетерминирована, чем анти-влечение.

Возникают вопросы о полноте процедуры поиска гипотезы конкретной системы ПДОДИ. Например, процедура поиска гипотезы Прогола, основанная на правиле вывода обратного следования, не является полной на примере Ямамото . [18] С другой стороны, Imparo завершается как процедурой предотвращения вывода [19], так и своей расширенной процедурой обратного включения [20] .

Реализации [ править ]

  • 1BC и 1BC2: наивные байесовские классификаторы первого порядка:
  • ACE (комбинированный двигатель)
  • Алеф
  • Атом
  • Claudien
  • DL-Learner
  • DMax
  • FastLAS (быстрое обучение на основе наборов ответов)
  • ФОЛЬГА (индуктивное обучение первого порядка)
  • Голем
  • ILASP (Индуктивное изучение программ с набором ответов)
  • Импаро [19]
  • Inthelex (Ученик инкрементальной теории из примеров)
  • Лайм
  • Метагол
  • Mio
  • MIS (Система вывода моделей) Эхуда Шапиро
  • ПРОГОЛ
  • RSD
  • Warmr (теперь входит в ACE)
  • ProGolem [21] [22]

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

  • Здравый смысл
  • Формальный анализ концепции
  • Индуктивное мышление
  • Индуктивное программирование
  • Индуктивная вероятность
  • Статистическое реляционное обучение
  • Изучение пространства версий

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

  1. ^ Плоткин Г.Д. Автоматические методы индуктивного вывода , докторская диссертация, Эдинбургский университет, 1970.
  2. ^ Шапиро, Эхуд Ю. Индуктивный вывод теорий из фактов , Отчет об исследовании 192, Йельский университет, факультет компьютерных наук, 1981. Перепечатано в J.-L. Лассез, Г. Плоткин (ред.), Computational Logic, MIT Press, Кембридж, Массачусетс, 1991, стр. 199–254.
  3. Перейти ↑ Shapiro, Ehud Y. (1983). Алгоритмическая отладка программ . Кембридж, Массачусетс: MIT Press. ISBN  0-262-19218-7
  4. ^ Шапиро, Эхуд Ю. " Модель системы вывода ". Труды 7-й международной совместной конференции по искусственному интеллекту - Том 2. Morgan Kaufmann Publishers Inc., 1981.
  5. ^ Люк Де Рэдт. Перспектива индуктивного логического программирования. Семинар по текущим и будущим тенденциям в логическом программировании, Шейкертаун, появится в Springer LNCS, 1999. CiteSeerX : 10.1.1.56.1790
  6. ^ a b c Muggleton, SH (1991). «Индуктивное логическое программирование». Вычислительная техника нового поколения . 8 (4): 295–318. CiteSeerX 10.1.1.329.5312 . DOI : 10.1007 / BF03037089 . 
  7. ^ Muggleton SH и Buntine W. « Машинное изобретение предиката первого порядка путем инвертирования разрешения », «Труды 5-й Международной конференции по машинному обучению, 1988.
  8. ^ Muggleton, SH (1995). «Инвертирующий вывод и Прогол». Вычислительная техника нового поколения . 13 (3–4): 245–286. CiteSeerX 10.1.1.31.1630 . DOI : 10.1007 / bf03037227 . 
  9. ^ Muggleton, Стивен (1999). «Индуктивное логическое программирование: проблемы, результаты и проблема изучения языка в логике» . Искусственный интеллект . 114 (1–2): 283–296. DOI : 10.1016 / s0004-3702 (99) 00067-3 .; здесь: Раздел 2.1
  10. ^ Джероски, Сашо (1996), «Индуктивное логическое программирование и открытие знаний в базах данных», в Файяд, UM; Пятецкий-Шапиро, Г .; Smith, P .; Утурусами Р. (ред.), Достижения в области обнаружения знаний и интеллектуального анализа данных , MIT Press, стр. 117–152.; здесь: Раздел 5.2.4
  11. ^ Плоткин, Гордон Д. (1970). Мельцер, Б .; Мичи, Д. (ред.). «Заметка об индуктивном обобщении». Машинный интеллект . 5 : 153–163.
  12. ^ Плоткин, Гордон Д. (1971). Мельцер, Б .; Мичи, Д. (ред.). «Еще одно замечание по индуктивному обобщению». Машинный интеллект . 6 : 101–124.
  13. ^ т.е. использование одного и того же символа предиката и отрицательного / отмененного статуса
  14. ^ в общем: n -набор, когда даны n положительных примеров литералов
  15. Перейти ↑ Ray, O., Broda, K., & Russo, AM (2003). Гибридное абдуктивное индуктивное обучение . В LNCS: Vol. 2835. Материалы 13-й международной конференции по индуктивному логическому программированию (стр. 311–328). Берлин: Springer.
  16. Перейти ↑ Kimber, T., Broda, K., & Russo, A. (2009). Индукция при неудаче: изучение связанных теорий Хорна . В LNCS: Vol. 5753. Материалы 10-й международной конференции по логическому программированию и немонотонным рассуждениям (стр. 169–181). Берлин: Springer.
  17. ^ Yoshitaka Ямамото, Катсое Inoue и Кодзи Iwanuma. Обратное подчинение для полной пояснительной индукции . Машинное обучение, 86 (1): 115–139, 2012.
  18. ^ Акихиро Ямамото. Какие гипотезы можно найти с обратным следствием? В индуктивном логическом программировании, страницы 296–308. Спрингер, 1997.
  19. ^ a b Тимоти Кимбер. Изучение определенных и нормальных логических программ путем индукции при неудаче . Кандидатская диссертация, Имперский колледж Лондона, 2012 г.
  20. ^ Дэвид Тот (2014). Импаро завершается обратным отнесением . arXiv: 1407.3836
  21. ^ Магглетон, Стивен; Сантос, Хосе; Тамаддони-Нежад, Алиреза (2009). «ProGolem: система, основанная на относительном минимальном обобщении» (PDF) . ILP .
  22. ^ Сантос, Хосе; Нассиф, Хусам; Пейдж, Дэвид; Магглетон, Стивен; Штернберг, Майк (2012). «Автоматическая идентификация особенностей белок-лигандных взаимодействий с использованием индуктивного логического программирования: тематическое исследование связывания гексозы» (PDF) . BMC Bioinformatics . 13 : 162. DOI : 10,1186 / 1471-2105-13-162 . PMC 3458898 . PMID 22783946 .   

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

  • Muggleton, S .; Де Раэдт, Л. (1994). «Индуктивное логическое программирование: теория и методы» . Журнал логического программирования . 19–20: 629–679. DOI : 10.1016 / 0743-1066 (94) 90035-3 .
  • Lavrac, N .; Дзероски, С. (1994). Индуктивное логическое программирование: методы и приложения . Нью-Йорк: Эллис Хорвуд. ISBN 978-0-13-457870-5. Архивировано из оригинала на 2004-09-06 . Проверено 22 сентября 2004 .
  • Наглядный пример установления связи между дедушкой и бабушкой системой Atom . http://john-ahlgren.blogspot.com/2014/03/inductive-reasoning-visualized.html