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