Страница 6 из 17
Однако логический подход сталкивается с серьёзными трудностями, когда возникает необходимость описания неформальных знаний, которые плохо формализуются. Более того, из-за неполноты нашего понимания природы человеческого мышления логический подход всё так же страдает от невозможности полностью описать процесс мышления и принятия решений. Такие феномены, как озарение, интуитивный поиск решения или эмоциональные влияния на принятие решений, не могут быть описаны в рамках логического подхода, хотя они, вне всяких сомнений, являются одним из компонентов человеческого разума.
Тем не менее логический подход составляет основу упомянутой ранее нисходящей парадигмы искусственного интеллекта.
Символьный подход ставит во главу искусственного интеллекта способность человека манипулировать символами (в общем понимании этого термина) при осуществлении своей интеллектуальной деятельности. Тут нужно вспомнить термин «вторая сигнальная система», предложенный русским физиологом Иваном Петровичем Павловым для описания абстрактной системы обозначений, которые используются при мышлении человеком в отрыве от непосредственных ощущений, получаемых всеми сенсорными подсистемами нервной системы. Именно наличие второй сигнальный системы, по мнению некоторых исследователей, отличает разумное существо от животного.
Для упрощения рассмотрим кибернетическую цепочку возникновения реакции человека на стимул из внешней среды на примере зрения. Фотоны различной длины волны попадают на рецепторы сетчатки глаза, где запускают каскад биохимических реакций, результат которых заключается в генерации нервного импульса, идущего по глазному нерву в нервные центры в головном мозге человека. Далее этот импульс диспетчеризуется в ядрах зрительного перекрёста и таламусе, после чего попадает в различные зоны коры головного мозга – первичную зрительную кору, вторичную зрительную кору и т. д., пока след от этого импульса не будет обработан в высших слоях неокортекса, где, как предполагается, и осуществляется манипуляция символами. Именно здесь конкретные каскады биохимических реакций в клетках сетчатки и всех промежуточных нейронах каким-то образом преобразуются в абстрактные символы, имеющие огромное количество ассоциативных связей. И когда человек видит, скажем, кошку, то в его памяти возникают различные образы, именно на символьном уровне связанные с понятием «Feliscatus» («кот домашний», биологическое наименование вида). Человек осознаёт именно эти образы и ассоциативные связи, но никак не осознаёт лежащих в их основе электрофизических и биохимических процессов. Так что разум человека, его интеллект оперирует именно символом «кот домашний», пробегая по отдельным ассоциативным связям, выбор которых зависит от текущего контекста.
Обработка символов построена на выполнении правил различного вида. В дальнейшем мы рассмотрим несколько формализмов, которые конкретизируют и реализуют символьный подход к искусственному интеллекту. Однако все они основаны именно на манипулировании символами как синтаксическими конструкциями. Особенно это касается математических формул, поскольку наибольших успехов символьный подход достиг именно в формальной математике, в таких областях, как автоматическое доказательство теорем, символьная математика, автоматические вывод и рассуждения и т. д. Однако и тут возникает такая же возможность для критики, как и в случае интуитивного подхода, – где возникает сознание, в какой момент интеллектуальная система начинает осознавать себя. И как бы хорошо она ни манипулировала символами, ответить на этот вопрос на сегодняшний день возможным не представляется. Мы ещё вернёмся к этому аспекту в главе про философию сознания и искусственного интеллекта, а пока перейдём к следующему подходу.
Структурный подход, или коннекционизм, исходит из понимания того, что интеллект, разум и сознание являются функцией сложности сети переплетённых и взаимодействующих базовых элементов. Поскольку нервная система человека состоит из нейронов и ряда других специальных клеток, то основой структурного подхода в искусственном интеллекте является использование искусственных нейронных сетей.
Здесь уже упоминалось, что первый искусственный нейрон был разработан Уорреном Мак-Каллоком и Уолтером Питтсом в первой половине XX века. Также в то время Фрэнком Розенблаттом была разработана первая архитектура искусственных нейронных сетей – перцептрон. Фактически это самые первые примеры математических моделей и программных систем, разработанных в духе коннективизма. И здесь необходимо отметить, что в процессе развития перцептронов появились некоторые расширения первоначальной модели, предложенной Ф. Розенблаттом. Самый простой классификатор основан на количестве слоёв в перцептроне: однослойный, с одним скрытым слоем (классический) и многослойный. Все эти типы были в своё время описаны самим Ф. Розенблаттом.
Другая классификация включает: элементарный перцептрон, простой перцептрон, перцептрон с последовательными связями, перцептрон с перекрёстными связями, перцептрон с обратными связями, перцептрон с переменными связями. Первые три класса были описаны Ф. Розенблаттом, а следующие три развиты в дальнейшем при детальной проработке модели искусственных нейронных сетей.
Итак, структурный подход основан на идее о том, что наиболее важной для эмерджентного проявления разума и других подобных функций вплоть до сознания является сетевая структура. Это значит, что моделирование должно затрагивать не только базовые элементы типа нейронов, но и их взаимосвязанные сети. При этом полагается, что сеть элементов как сложная система обладает нелинейными свойствами относительно базовых элементов, а потому при увеличении количества взаимосвязанных элементов сложность модели изменяется нелинейно и зачастую даже непредсказуемым образом, так что при переходе некоторого порога сложности как раз и начинают проявляться те самые эмерджентные эффекты, которых мы так ждём. До сегодняшнего дня главным и фактически единственным представителем структурного подхода являются искусственные нейронные сети.
Эволюционный подход реализует так называемую «искусственную эволюцию» и фактически решает оптимизационную задачу поиска значения целевой функции в заданном пространстве решений с установленными ограничениями. Этот подход содержит большое количество эвристических методов, некоторые из которых используются даже для гарантированного нахождения оптимума для мультимодальных недифференцируемых функций в пространствах высоких размерностей. Важным методом эволюционного подхода являются генетические алгоритмы, которые мы рассмотрим чуть позже. Но здесь также есть несколько других важных методов, в числе которых находятся эволюционное программирование и даже нейроэволюция, когда искусственному отбору подвергаются нейронные сети.
Итак, в рамках эволюционного подхода обычно выделяют следующие технологии и методы: эволюционное программирование, генетическое программирование, эволюционные стратегии, генетические алгоритмы, дифференциальная эволюция и нейроэволюция. Другими словами, а что, если вычислительные процессы могли бы эволюционировать так же, как это делают биологические виды в своей экологической среде? Возможно, получилось бы «выращивать» программы для оптимального решения поставленной задачи? Эволюционное программирование как раз и основано на этой идее.
Если же в качестве объектов отбора выступают сами программы, то получается уже генетическое программирование. Ведь, действительно, программы пишутся на определённом языке программирования и в конечном итоге представляют собой строки символов. Эти строки можно подвергнуть генетическим преобразованиям и отбору. Эта очень мощная идея получила своё развитие в том, что программы начали писать и оптимизировать другие программы, и уже исследователи, запустившие процесс, не могут разобрать и интерпретировать полученные исходные коды, которые работают правильно и часто очень эффективно.
Генетические алгоритмы – это наиболее яркий представитель эволюционного подхода. Сами по себе они опять являются одним из эвристических методов оптимизации для поиска оптимального решения (или, как минимум, субоптимального). Они работают с данными, которые могут быть представлены в виде «хромосом» – последовательностей генов, т. е. списков каких-либо значений, к которым можно применить генетические операции. Здесь главное – чтобы на генах были определены эти самые генетические операции, которые возвращали бы приемлемый результат, имеющий смысл.