Обучение на примерах
Самая распространенная форма машинного обучения называется контролируемым обучением, или обучением с учителем. Алгоритм контролируемого обучения получает набор упражнений, для каждого из которых указан правильный ответ, и должен сформировать гипотезу о том, в чем состоит правило. Обычно система контролируемого обучения стремится оптимизировать соглашение между гипотезой и учебными образцами. Часто также вводится штраф за более сложную, чем это необходимо, гипотезу, в соответствии с принципом Оккама.
Проиллюстрируем это на задаче изучения допустимых ходов в го. (Если вы знаете правила го, вам будет проще следить за ходом рассуждений, если нет — легче проникнуться сочувствием к обучающейся программе.) Допустим, алгоритм начинает с гипотезы:
для всех временных шагов t и для всех местоположений l
допустимо выставить камень на местоположение l в момент времени t.
В позиции, представленной на рис. 22, ход черных. Алгоритм пробует ход А — все хорошо. Б и В тоже. Затем программа пробует совершить ход Г, поставив камень поверх уже лежащего белого камня: он недопустим. (В шахматах или нардах так можно было бы ходить, именно так «съедаются» фигуры.) Ход Д, поверх черного камня, также недопустим. (Недопустим и в шахматах, но допустим в нардах.) На этих пяти учебных примерах алгоритм может построить следующую гипотезу:
для всех временных шагов t и для всех местоположений l
еслиl не занято в момент времени t,
то допустимо выставить камень на местоположение l в момент времени t.
Затем программа пробует ход Е и, к своему удивлению, обнаруживает, что он недопустим. После несколько фальстартов она приходит к выводу:
для всех временных шагов t и для всех местоположений l
еслиl не занято в момент времени t
иl не окружено камнями противника,
то допустимо выставить камень на местоположение l в момент времени t.
(Иногда в го это правило называется запретом самоубийства.) Наконец, она проверяет ход Ж, который в этом случае оказывается допустимым. Почесав затылок и, возможно, еще немного поэкспериментировав, программа останавливается на гипотезе, что Ж годится, несмотря на то что камень окружен, потому что захватывает белый камень на Г и сразу же становится не окруженным.
Как видно из постепенного развития правил, обучение происходит через последовательность модификаций гипотезы, так чтобы она соответствовала наблюдаемым примерам. Обучающийся алгоритм делает это с легкостью. Исследователи машинного обучения разработали всевозможные остроумные алгоритмы быстрого поиска хороших гипотез. В данном случае алгоритм ведет поиск в пространстве логических выражений, представляющих правила го, но гипотезы могут являться и алгебраическими выражениями, представляющими физические законы, вероятностными Байесовыми сетями, представляющими заболевания и симптомы, или даже компьютерными программами, определяющими сложное поведение какой-то другой машины.