Шрифт:
В модели Мак-Каллока и Питтса связи имеют фиксированные веса, а результатом пороговой функции может быть 0 или 1, такой нейрон может быть только пороговым классификатором (classifier). Слабость модели MCP в используемой ими пороговой переходной функции, здесь нейроны имеют состояния 0, 1 и поддерживают пороговую логику перехода из состояния в состояние. Каждый нейрон в сети определяет взвешенную сумму состояний всех других нейронов и сравнивает ее с порогом, чтобы определить свое собственное состояние. Пороговый вид функции ограничивает возможности обучения нейронной сети, к тому же модель не учитывает многих особенностей работы реальных нейронов (импульсного характера активности, нелинейности суммирования входной информации и др.). Несмотря на то, что за прошедшие годы нейроматематика ушла далеко вперед, многие взгляды MCP остаются актуальными и поныне.
Мак-Каллок и Питтс продемонстрировали присущий ANN вычислительный потенциал, но чтобы его реализовать, нужен некоторый механизм для манипуляций с сетью. Каким он может быть? В традиционных компьютерах, ограниченных способностью выполнять последовательность команд, таким механизмом служит программирование. Хотя компьютер и является универсальным инструментом, но сам по себе он остается простым программным автоматом, он может выполнять заложенную в него программу, не более того. В связке компьютерного программного обеспечения с аппаратным «железо» – это постоянная часть, программа – переменная, она обеспечивает адаптацию компьютера к задаче.
В ANN по определению нет специального механизма управления, нет и не может быть отдельно существующей внешней по отношению к сети программы, поэтому здесь нужен иной механизм, каким-то образом меняющий сеть, адаптирующий ее к решаемой задаче, превращающий ANN на время решения задачи из универсального механизма, готового к обучению, в специализированный механизм, и этот процесс и принято называть машинным обучением (ML).
Предыстория и первые шаги машинного обучения
Сегодня машинное обучение (Machine Learnung, ML) связывают исключительно с ANN, что совершенно естественно, но не только ANN обучаемы, есть и иные обучаемые автоматы. Впервые мысль об обучении машины сформулировал автор шашечной программы Артур Самюэль (Arthur Samuel, 1901–1990) в далеком 1959 году! В статье, описывающей эксперимент машинной игры, он дал следующее определение ML: «Машинное обучение это научное направление, изучающее подходы к тому, как побудить компьютеры к полезным действиям, не обращаясь к программированию». Спустя 60 лет не остается ничего иного, как восхититься его прозорливостью, хотя ML по Самюэлю имеет мало общего с тем, как понимается обучение сегодня, когда обучается не программа, работающая на машине, как у него, а нейронная сеть, работа которой поддерживается машиной. Предложенный им алгоритм не делил процесс игры на обучение (training) и исполнение (inference), как это делается при обучении ANN, он использовал дерево поиска игровых позиций, достижимых из текущего состояния, с применением алгоритма альфа-бета-отсечения (alpha-beta pruning). Алгоритм отсечения перебирает и оценивает все ветви дерева поиска до тех пор, пока не найдено значение хуже, чем вычисленное для предыдущих ветвей. Этот подход впоследствии часто использовали для программирования различных антагонистических игр, в том числе очень модной одно время машинной игры в шахматы. Суть обучения в данном случае заключалась в том, что веса оценочной функции изменяются в процессе игры. В начальный период истории AI на метод альфа-бета-отсечения возлагались большие надежды, на него делали ставку такие апостолы того времени Аллен Ньюэлл и Герберт Саймон, Джон Маккарти и Марвин Минский.
Этот же метод независимо от них был открыт отечественным ученым А. Л. Брудно (1918–2009), назвавшим его «методом граней и оценок». Будучи изначально математиком, Александр Львович вел в Математическом институте им. В. А. Стеклова АН СССР семинар, содействовавший тому, что у многих его участников позднее возник интерес к электронным вычислительным машинам и кибернетике. В начале 1950-х годов А. Л. Брудно был привлечен член-корреспондентом АН СССР И. С. Бруком к созданию программ для разрабатывавшейся под его руководством ЭВМ М-2. Позже Брудно работал Институте электронных управляющих машин (ИНЭУМ).
Менее известны работы Михаила Львовича Цетлина в области близкой к ML. Цетлин – один из представителей плеяды выдающихся математиков-кибернетиков 50–70-х годов, ученик одного из крупнейших математиков XX века Израиля Моисеевича Гельфанда. Он работал над созданием устройств, которые могли бы демонстрировать целесообразное поведение в случайных средах. Предпосылками исследований стали прежние работы Цетлина, связанные с изучением поведения подопытных животных. Он интерпретировал поведение автомата как поведение животного, контактирующего со средой, которая в зависимости от его поведения наказывала или поощряла, при этом автомат мог обучаться, то есть стремиться к уменьшению числа наказаний за счет изменения своего внутреннего состояния.
Более полувека эта часть научного наследия Цетлина оставалась известна лишь узкому кругу отечественных специалистов, однако в апреле 2018 года вышла работа Гранно Оле-Кристофера, профессора норвежского Университета Агдера, директора Центра исследований в области искусственного интеллекта, имеющая необычный заголовок «Машина Цетлина. Теоретико-игровой бандитский подход к оптимальному распознаванию образов с пропозициональной логикой» (The Tsetlin Machine – A Game Theoretic Bandit Driven Approach to Optimal Pattern Recognition with Propositional Logic). С бандитизмом этот подход, конечно, не имеет ничего общего – это просто метафора. Работы Цетлина стали импульсом к развитию теории многоруких бандитов, названных так по аналогии с «однорукими бандитами», устанавливаемыми в казино: в теории вероятностей задачей многорукого бандита называют задачу, в которой ограниченный набор ресурсов необходимо распределить между противоборствующими сторонами. В своей статье Оле-Кристофер показал, как можно сконструировать самообучаемую машину на предложенных Цетлиным принципах в сочетании с пропозициональной логикой (раздел символической логики, изучающий образованные из простых сложные высказывания и их взаимоотношения).
В СССР еще несколько ученых занимались вопросами машинного обучения, но не нейронных сетей, а иных автоматов. Среди них киевлянин Алексей Григорьевич Ивахненко. В 1965-м году он опубликовал работу с описанием обучающих алгоритмов. Известный оппортунист и диссидент машинного обучения Юрген Шмидхубер, к которому мы еще вернемся, считает Ивахненко не только отцом глубокого обучения, но и метода обратного распространения ошибки (backpropagation). Впрочем, этот метод настолько очевиден, что его автором признают не менее 10 человек. Среди них американских специалистов в области оптимального управления Артура Брайсона и Генри Келли.