Читаем Верховный алгоритм полностью

Во времена Хебба еще не умели измерять силу синапсов и ее изме­нения, не говоря уже о том, чтобы разбираться в молекулярной биологии синап­тических процессов. Сегодня мы знаем, что синапсы возникают и развиваются, когда вскоре после пресинаптических нейронов возбуждаются постсинаптические. Как и во всех других клетках, концентрация ионов внутри и за пределами нейрона отличается, и из-за этого на клеточной мембране имеется электрическое напряжение. Когда пресинаптический нейрон возбуждается, в синаптическую щель выделяются крохотные пузырьки с молекулами нейротрансмиттеров. Они заставляют открыться каналы в мембране постсинаптического нейрона, из которых выходят ионы калия и натрия, меняющие напряжение на мембране. Если одновременно возбуж­дается достаточное количество близко расположенных пресинаптических нейронов, напряжение подскакивает и по аксону постсинаптического нейрона проходит потенциал действия. Благодаря этому ионные каналы становятся восприимчивее, а также появляются новые, усиливающие синапс каналы. Насколько нам известно, нейроны учатся именно так.

Следующий шаг — превратить все это в алгоритм.

Взлет и падение перцептрона

Первая формальная модель нейрона была предложена в 1943 году Уорреном Маккаллоком57 и Уолтером Питтсом58. Она была во многом похожа на логические вентили, из которых состоят компьютеры. Вентиль ИЛИ включается, когда как минимум один из его входов включен, а вентиль И — когда включены все. Нейрон Маккаллока–Питтса включается, когда количество его активных входов превышает определенное пороговое значение. Если порог равен единице, нейрон действует как вентиль ИЛИ. Если порог равен числу входов — как вентиль И. Кроме того, один нейрон Маккаллока–Питтса может не давать включаться другому: это моделирует и ингибирующие синапсы, и вентиль НЕ. Таким образом, нейронные сети могут совершать все операции, которые умеет делать компьютер. Поначалу компьютер часто называли электронным мозгом, и это была не просто аналогия.

Однако нейрон Маккаллока–Питтса не умеет учиться. Для этого соединениям между нейронами надо присвоить переменный вес, и в результате получится так называемый перцептрон. Перцептроны были изобретены в конце 1950-х Фрэнком Розенблаттом59, психологом из Корнелльского университета. Харизматичный оратор и очень живой человек, Розенблатт сделал для зарождения машинного обучения больше, чем кто бы то ни было. Своим названием перцептроны обязаны его интересу к применению своих моделей в проблемах восприятия (перцепции), например распознавания речи и символов. Вместо того чтобы внедрить перцептроны в компьютерные программы, которые в те дни были очень медлительными, Розенблатт построил собственные устройства: вес был представлен в них в виде пере­менных резисторов, как те, что стоят в переключателях с регулируемой яркостью, а для взвешенного обучения использовались электромоторы, которые крутили ручки резисторов. (Как вам такие высокие технологии?)

В перцептроне положительный вес представляет возбуждающее соединение, а отрицательный — ингибирующее. Если взвешенная сумма входов перцептрона выше порогового значения, он выдает единицу, а если ниже — ноль. Путем варьирования весов и порогов можно изменить функцию, которую вычисляет перцептрон. Конечно, много подробностей работы нейронов игнорируется, но ведь мы хотим все максимально упростить, и наша цель — не построить реалистичную модель мозга, а разработать обучающийся алгоритм широкого применения. Если какие-то из проигнорированных деталей окажутся важными, их всегда можно будет добавить. Несмотря на все упрощения и абстрактность, можно заметить, что каждый элемент этой модели соответствует элементу нейрона:

Чем больше вес входа, тем сильнее соответствующий синапс. Тело клетки складывает все взвешенные входы, а аксон применяет к результату ступенчатую функцию. На рисунке в рамке аксона показан график ступенчатой функции: ноль для низких значений входа резко переходит в единицу, когда вход достигает порогового значения.

Представьте, что у перцептрона есть два непрерывных входа x и y (это значит, что x и y могут принимать любые числовые значения, а не только 0 и 1). В таком случае каждый пример можно представить в виде точки на плоскости, а границей между положительными (для которых перцептрон выдает 1) и отрицательными (выход 0) примерами будет прямая линия:

Дело в том, что граница — это ряд точек, в которых взвешенная сумма точно соответствует пороговому значению, а взвешенная сумма — линейная функция. Например, если вес x — 2, вес y — 3, а порог — 6, граница будет задана уравнением 2x + 3 = 6. Точка x = 0, y = 2 лежит на границе, и, чтобы удержаться на ней, нам надо делать три шага вперед для каждых двух шагов вниз: тогда прирост x восполнит уменьшение y. Полученные в результате точки образуют прямую.

Перейти на страницу:

Похожие книги