Шрифт:
Несмотря на то что вычислители были построены «по заветам» Тьюринга, их стали несправедливо называть фон-неймановскими — по имени одного из американских разработчиков. С тех пор большинство ЭВМ в мире построено по этому принципу.
Однако в 1943 году математики Мак-Каллок и Питтс опубликовали статью, в которой предложили альтернативу тьюринговской машине — вычислитель с принципиально иным типом архитектуры — нейросетевым. Идея была позаимствована у природы, то есть за основу предполагаемой конструкции математики взяли обычный мозг. Было только непонятно, как программировать такие машины. Но в конце 50-х Фрэнк Розенблатт приходит к мысли, что гипотетические нейросети незачем программировать. Их, как и биологический прототип, нужно обучать!
В 1960 году Розенблатт построил первый примитивный нейрокомпьютер, который успешно распознавал некоторые буквы. Автор назвал свое детище персептроном (от англ. perception — восприятие). В газетах появились статьи о том, что искусственный интеллект на подходе. Прошло четверть века. В 1986 году Дэвид Румельхарт придумывает перспективный метод обучения персептрона. Почуяв жареное, встрепенулись военные. В Агентстве перспективных военных исследований США решили, что нейрокомпьютеры — как раз их профиль, и деньги полились рекой. Начался нейросетевой бум…
Тут нужно, пожалуй, пояснить, чем нейрокомпьютеры (персептроны) принципиально отличаются от обычных фон-неймановских машин. Поняв это, вы поймете, чем наш мозг отличается от компьютера.
Чтобы не вдаваться в технические подробности, можно провести аналогию. Допустим, у вас есть функция Y = (7•X + 5)/9. Как получить Y при X = 4? Четыре умножаете на семь. Затем прибавляете пять. Затем делите полученный результат на девять. Последовательность ваших действий является алгоритмом, то есть программой.
Но есть другой способ решить ту же задачу. Можно построить график этой функции. Потом взять линейку и провести вверх перпендикуляр от точки 4 на оси X. Находите точку пересечения функции и этой прямой и получаете искомый результат.
Казалось бы, какая разница между этими двумя способами?
И то и другое — математика: чтобы построить функцию, нужно раз за разом подставлять в формулу разные значения X. Почему бы сразу не подставить нужное, зачем лишний ход — функцию рисовать?…
А представьте себе ситуацию, когда у нас нет формулы, но есть график. Ну, например, нарисуйте на миллиметровке профиль своей любимой девушки. Вы замучаетесь искать функцию (точнее, целый набор функций), который описывает этот профиль. А профиль — вот он!
Так вот, процесс обучения нейросети, например воспитание человека, является своего рода построением готового графика. Ребенку формируют поведенческие стереотипы, учат, как поступать в разных ситуациях, — дают готовый график. Сталкиваясь с необычным и экстраполируя этот поведенческий график в разные стороны, ребенок понимает, как поступать в незнакомых, но схожих ситуациях.
Вашему головному нейрокомпьютеру родители сообщают готовые результаты — какое Y1 при X1. Вы ставите в уме точку. Вам дают вторую пару чисел — X2, Y2, вы ставите вторую точку… Если у вас много-много точек, вы размещаете их в системе координат, соединяете ближайшие, и таким образом у вас оформляется замечательная кривая поведения. Теперь вы можете по любому X выявить Y, не зная никаких формул. Просто бросив взгляд на рисунок.
Интуиция, между прочим, работает так же. Нейросеть у нас в голове обобщает опыт, массив знаний, строит график и по нему выдает готовый результат. Выдает, порой даже минуя сознание; ответ всплывает будто бы ниоткуда, а на самом деле — из подкорковых глубин. Об интуиции мы еще поговорим чуть ниже, а пока нужно разобраться, чем нейросети прогрессивнее тьюринговых (фон-неймановских) машин.
Для работы с машиной Тьюринга всякую задачу нужно формализовать (силуэт любимой превратить в набор функций: прямой нос будет описан линейной функцией, а округлый лоб — гиперболой и так далее). При этом если с винчестером фон-неймановской машины случится какая-нибудь неприятность и хотя бы одна из формул будет повреждена, неверным окажется и конечный результат. В фон-неймановской машине ошибка фатальна.
А вот для графика потеря части данных не играет решающей роли. Если вы нарисовали профиль любимой карандашом и потом какой-то подлец стер резинкой у нее нос или часть лба, вы всегда можете восстановить утраченное, продолжив оставшиеся линии. Так работает природная нейросеть — мозг. По тому же пути идут и ученые. Сейчас они обучают нейросети не только искать закономерности в массивах данных, но и формируют в них ассоциативную память! В нейрокомпьютере каждому слову отводится свое персональное «место». Если слова относятся к одной теме, они близко расположены друг к другу. И компьютер, при задании ему какого-нибудь слова, ассоциативно «вспоминает» слова, ближайшие по смыслу к данному, и таким образом генерирует ассоциации. Это еще один шаг на пути к «нормальному мышлению».
Человеческий мозг — пример хорошей ассоциативной нейросети. В истории было немало случаев, когда какая-нибудь задача решалась человеком во сне, то есть нейросеть сама, без участия сознания выявляла закономерность. Ярчайший пример — Менделеев. Когда он писал учебник «Основы химии», у него имелась большая база данных — все известные на тот момент химические элементы, их свойства, валентность и атомная масса. Менделеев уснул, и было ему видение — периодическая таблица.
Антропологи утверждают, что во время сна мозг потребляет на 10% больше энергии, чем когда мы бодрствуем (мощность мозга около 25 Вт, частота 100 Гц). Связано это с тем, что нейросеть в нашей голове в фазе парадоксального сна выполняет очень важную работу — обрабатывает накопленную днем информацию.