Дополнительные источники информации
Превосходное общее введение а проблематику машинного обучения приведено в [105]. В [97] описаны программы машинного обучения для самых различных областей, начиная от инженерного проектирования и закачивая медициной, биологией и музыкой. Результаты современных исследований в области машинного обучения публикуются в литературе по искусственному интеллекту; наиболее известными из этих источников являются журналы Machine Learning (Boston: Kluwer) и Artificial Intelligence (Amsterdam: North-Holland), а также сборники материалов ежегодных конференций ICML (International Conference on Machine Learning - международная
Глава 18.Машинное обучение
конференция по машинному обучению), ECML (European Conference on Machine Learning - европейская конференция по машинному обучению) и COLT (Computational Learning Theory - теория компьютерного обучения). Значительное количество классических статей по машинному обучению включено в [75], [98] и [99]. В [59] приведены результаты изучения важности технических достижений в области машинного обучения и перспектив применения этого направления искусственного интеллекта для разрешения традиционного противоречия в философии науки.
Большое количество наборов данных для проведения экспериментов с новыми методами машинного обучения приведено в электронном виде в репозитарии UCI (Калифорнийский университет, г. Ирвин; http: //www. ics.aci.edu/~mlearn/ MLReposirory.html).
Приведенный в данной главе пример реляционных описаний, сформированных с помощью обучения (раздел 18.3), основан на идеях, которые воплощены в одной из первых обучающихся программ ARCHES [169]. Программа, приведенная в разделе 18.4, которая формирует описания на основе атрибутов, представляет собой упрощенную версию алгоритмов обучения типа AQ, Семейство AQ обучающихся программ было разработано Михальски (Michalak!) и его сотрудниками (см., например, [96]). Широко известной программой для формирования правил вывода в результате обучения является CN2 [31].
Одним из наиболее широко применяемых подходов к обучению является логический вывод деревьев решения; этот метод известен также под названием TDIDT (Тор-Down Induction of Decision Trees - нисходящий логический вывод деревьев решения), предложенный в [128]. На разработку метода обучения TDIDT большое влияние оказала одна из первых программ Куинлана. (Quinlan) ID3 - Iterative Dichotomizer 3 [127], поэтому алгоритм логического вывода дерева решения часто называют просто ID3. Тема логического вывода деревьев изучалась также вне проблематики искусственного интеллекта Брейманом (Breiman) и его сотрудниками [23], которые независимо открыли несколько относящихся к этой теме механизмов, включая отсечение поддеревьев дерева решения. Метод отсечения дерева с минимальной ошибкой был предложен в [114] и усовершенствован в результате введения ш-оценки в [27]. Формула т-оцсшш Выла выведена в [26] с использованием байесовской процедуры оценки вероятности. В [47] приведены результаты подробного экспериментального сопоставления различных методов усечения дерева. Кроме отсечения, в основной алгоритм логического вывода дерева решения необходимо внести другие усовершенствования для того, чтобы он мог применяться в качестве практичного инструментального средства в сложных приложениях, связанных с обработкой реальных данных. Несколько подобных усовершенствований наряду с результатами первых экспериментов, в которых качество знаний, полученных в результате машинного обучения, превзошло качество знаний экспертов-людей, представлены в [28] и [128]. Результаты исследования в области структуризации деревьев решения для улучшения их наглядности приведены в [145].
Необходимо также упомянуть некоторые из наиболее интересных исследований и подходов к машинному обучению, которые не описаны в этой главе.
Одной из первых попыток реализации идей машинного обучения является обучающаяся программа, которая играет в шашки, описанная в [137]. Эта программа постоянно совершенствовала применяемую функцию оценки позиции благодаря опыту, полученному в сыгранных ею партиях.
В [104] предложена идея пространства версий, которая представляет собой попытку повысить эффективность поиска среди альтернативных описаний понятия.
Б процессе активного обучения ученик исследует свою среду, выполняя действия и получая поощрения и наказания из этой среды [155]. В ходе обучения таким действиям, которые приводят к максимальному увеличению количества поощрений, сложность состоит в том, что поощрение и наказание могут запаздывать, поэтому не всегда ясно, какие именно действия послужили причиной успеха или неудачи.
Часть II. Применение языка Prolog в области искусственного интеллекта
При обучении на основе конкретных ситуаций, которое относится к обучению по принципу формирования рассуждений об определенных случаях [76], ученик рассуждает об указанном случае, сравнивая его с аналогичными предыдущими случаями.
Одним из важных направлений исследований в области обучения являются нейронные сети (представленные также в [105]), которые позволяют в определенной степени имитировать обучение биологических объектов. Обучение происходит в результате корректировки числовых весовых коэффициентов, связанных с искусственными нейронами сети. Нейронные сети никогда не были в фокусе исследований по искусственному интеллекту, поскольку они не допускают явного символического представления полученных результатов обучения. Гипотезы, сформированные в ходе нейронного обучения, могут обеспечивать очень качественное прогнозирование, но людям их трудно понимать и интерпретировать.
Одним из интересных подходов к обучению является обучение на основе объяснения (например, [106]); этот подход известен также под названием аналитического обучения. В данном случае обучающаяся система использует исходные знания для "объяснения" предъявленного примера с помощью дедуктивного процесса. В результате исходные знания преобразуются в форму, допускающую более эффективное использование. Один из методов обобщения на основе объяснения реализован в видепрограммы в главе 23 этой книги вкачестве своего рода упражнения по метапро-граммированию.
Некоторые обучающиеся программы обучаются по принципу самостоятельного совершения открытий. Они открывают новые понятия в результате исследований, проводя свои собственные эксперименты. Знаменитым примером программы такого рода является AM (Automatic Mathematician - автоматический математик) [88]. Например, программа AM начала свою работу с понятий множества и мультимножества (множества, допускающего вхождение одинаковых элементов), открыла понятия числа, сложения, умножения, простого числа и т.д. В [149] приведен сборник статей по использованию машинного обучения для научных открытий.
Средства формальной логики используются в качестве языка гипотез в одном из подходов к обучению, получившим название индуктивного логического программирования (Inductive Logic Programming - ILP), который рассматривается в следующей главе этой книги.
Математическая теория обучения известна также под названием COLT (Computational Learning Theory - теория компьютерного обучения) [71].Этот подход направлен на получение ответов на следующие вопросы: "Каким должно быть количество примеров для того, чтобы они позволили добиться некоторой заданной точности логически выведенных гипотез? Каковыми являются различные теоретические показатели измерения сложности обучения для разных классов языков гипотез?"
Глава 18. Машинное обучение