Об ИИ без мифов. Путеводитель по истории Искусственного Интеллекта - Черняк Леонид
Шрифт:
Интервал:
Закладка:
Предшественники коннекционизма
Предтечей коннекционизма был ассоцианизм – учение, рассматривающее мозг как действующий набор элементов, объединенных ассоциативными связями. Ассоцианизм – это совокупность психологических концепций и школ, сформировавшихся в XVIII–XIX веках, его приверженцы считали ассоциации идей главным или даже единственным механизмом, обеспечивающим работу сознания. У человека ассоциация может возникать при обнаружении подобия в предметах, имеющих одинаковые свойства или признаки, в их близости в пространстве и во времени. Впрочем, ассоциации может вызывать не только близость, но и контраст. Первые соображения о значении ассоциаций были выдвинуты Платоном и Аристотелем, но через пару тысяч лет картезианская школа, прежде всего в лице Локка и Гоббса, затормозила развитие ассоцианизма вплоть до начала XVII века. Он возродился в появившихся тогда учениях о психике, где мозг представлялся в виде машины, запечатлевающей следы внешних воздействий, причем так, что стимулирование одного из следов автоматически влечет за собой возникновение следующего. Начало новому этапу в развитии ассоцианизма положил голландский философ Бенедикт Спиноза (Benedictus de Spinoza, 1632–1677), его продолжателями стали англичане Джордж Беркли (George Berkeley, 1685–1753) и Дэвид Гартли (David Hartley, 1705–1757), они создали систему взглядов, называемую материалистическим ассоцианизмом. Последующие успехи в биологии и нейрофизиологии, достигнутые в конце XIX – начале XX века, вызвали взрыв интереса к ассоцианизму в трудах Германа Гельмгольца (Hermann Helmholtz, 1821–1894) – в его исследованиях органов чувств, Чарльза Дарвина – при объяснении эмоций, И. М. Сеченова – в учении о рефлексах головного мозга, И. П. Павлова – в его учении об условных рефлексах. Итогом всестороннего изучения ассоциаций в мозговых процессах стало появление ассоциативной психологии.
Пионерами современной науки, изучающей нейронную природу мозга, стали работавшие независимо друг от друга Александр Бэн (Alexander Bain,1818–1903) и Уильям Джеймс (William James, 1842–1910). Шотландский философ, психолог и педагог Александр Бэн в 80-е годы XIX разработал нейронную модель мозга, считая его состоящим из группировок нейронов (neural groupings). Бэна называют «отцом нейронных сетей», поскольку ему удалось показать то, как ассоциативные структуры, состоящие нейронных группировок, могут осуществлять функцию памяти и, более того, в развитие положений ассоцианизма ему удалось представить вычислительные способности такого рода структур. Американца Уильяма Джеймса (William James, 1842–1910), в большей мере интересовали психологические аспекты работы мозга. Позже существенный вклад в нейрофизиологию мозга внес Чарльз Шеррингтон (Charles Sherrington, 1857–1952), лауреат Нобелевской премии по физиологии и медицине в 1932 году за открытия, касающиеся функций нейронов.
Интересно отметить занятное совпадение, косвенным образом связывающее деятельность Бэна с AI. Оказывается, это он в 1876 году основал альманах Mind, где через три четверти века Тьюринг опубликовал свою статью Computing Machinery and Intelligence.
История современного коннекционизма
Новая история коннекционизма делится на два этапа. Они не равны по продолжительности и между ними лежит разрыв по времени, равный двум десятилетиям. Первый, более короткий, продлился всего 20 лет, от середины 40-х годов до середины 60-х, а второй стартовал в начале 80-х годов и продолжается до нашего времени. Главными действующими лицами первого этапа, обеспечившими становление коннекционизм как научного направления, были всего несколько человек. Это вышеупомянутые Уоррен Мак-Каллок и Уолтер Питтс. Еще Фрэнк Розенблатт (Frank Rosenblatt, 1928–1971), он попытался первым реализовать идеи коннекционизма на практике в устройстве, названном им персептроном. И, наконец, канадский физиолог и нейропсихолог Дональд Хебб (Donald Hebb, 1904–1985), он первым предложил работающий алгоритм обучения ANN. Упрощенно их деятельность можно представить в виде последовательности: Мак-Каллок и Питтс, создают модель ANN, Хебб распространяет принципы машинного обучения на ANN, а Розенблатт пытался материализовать коннекционизм.
(window.adrunTag = window.adrunTag || []).push({v: 1, el: 'adrun-4-390', c: 4, b: 390})Совместно эти немногочисленные действующие лица первого этапа заложили фундамент для развития коннекционизма, но в силу ряда обстоятельств они не смогли противостоять наступлению временного спада активности в этом направлении, который по аналогии с «зимой AI» назвали «зимой коннекционизма», продлившейся более 20 лет. Наступление этой зимы обычно связывают с выходом книги Марвина Минского и Сеймура Паперта (о нем в Главе 9) «Персептроны» (Perceptrons: an introduction to computational geometry, 1970), где идеи коннекционизма были подвергнуты серьезной критике. Нельзя сказать, что позиция Минского и Паперта не имела право на существование, дальнейшее показало, что взгляды основоположников коннекционизма изрядно страдали механистичностью, но справедливости ради надо сказать, что главная причина наступления зимы коннекционизма, конечно же, в отсутствии технологий для полноценной материализации их замыслов. Если бы нашлись соответствующие технологии, развитие пошло бы иным путем.
Итак, коннекционизм начался с работ Уоррена Мак-Каллока и Уолтера Питтса, их считают основателями нейрокомпьютинга, поскольку они первыми показали как простые цепочки нейронов, объединенные в группы, оказываются способными к вычислению логических функций. Результатом работы дуэта MCP стала констатация того факта, что таблицы истинности любой сложности могут быть собраны из нейронов, они показали достаточные условия для воспроизведения логических функций средствами ANN. Предложенная ими в 1940 году простая модель нейрона (simple threshold model) реализует функцию, называемую threshold function, или activation function, она воплощается в устройстве threshold gate. На русский язык название функции переводится как функция активации нейрона, она определяет выходной сигнал, а ее значение определяется входным сигналом или набором входных сигналов. Обычно в этом качестве используется нормализуемая сигмоидная функция активации. Нейрон, выполняющий сигмоидную функцию, называют threshold neuron, или пороговый нейрон.
В модели Мак-Каллока и Питтса связи имеют фиксированные веса, а результатом пороговой функции может быть 0 или 1, такой нейрон может быть только пороговым классификатором (classifier). Слабость модели MCP в используемой ими пороговой переходной функции, здесь нейроны имеют состояния 0, 1 и поддерживают пороговую логику перехода из состояния в состояние. Каждый нейрон в сети определяет взвешенную сумму состояний всех других нейронов и сравнивает ее с порогом, чтобы определить свое собственное состояние. Пороговый вид функции ограничивает возможности обучения нейронной сети, к тому же модель не учитывает многих особенностей работы реальных нейронов (импульсного характера активности, нелинейности суммирования входной информации и др.). Несмотря на то, что за прошедшие годы нейроматематика ушла далеко вперед, многие взгляды MCP остаются актуальными и поныне.
Мак-Каллок и Питтс продемонстрировали присущий ANN вычислительный потенциал, но чтобы его реализовать, нужен некоторый механизм для манипуляций с сетью. Каким он может быть? В традиционных компьютерах, ограниченных способностью выполнять последовательность команд, таким механизмом служит программирование. Хотя компьютер и является универсальным инструментом, но сам по себе он остается простым программным автоматом, он может выполнять заложенную в него программу, не более того. В связке компьютерного программного обеспечения с аппаратным «железо» – это постоянная часть, программа – переменная, она обеспечивает адаптацию компьютера к задаче.
В ANN по определению нет специального механизма управления, нет и не может быть отдельно существующей внешней по отношению к сети программы, поэтому здесь нужен иной механизм, каким-то образом меняющий сеть, адаптирующий ее к решаемой задаче, превращающий ANN на время решения задачи из универсального механизма, готового к обучению, в специализированный механизм, и этот процесс и принято называть машинным обучением (ML).