Про книгу А. С. Потапова «Искусственный интеллект и универсальное мышление»

potapov

Как вы, наверное, знаете, термин «Искусственный интеллект» (ИИ) в последнее время стал применяться совсем не в том смысле, как он задумывался изначально. Сейчас под искусственным интеллектом чаще всего понимают в основном интеллектуальные алгоритмы, выполняющие какую-то одну конкретную задачу, такие алгоритмы могут быть довольно сложными и их идеи могут быть взяты из природы (нейронные сети, генетические алгоритмы, алгоритм роя пчел, муравьиной колонии и т.п.) Однако, такие алгоритмы — это совсем не то, чего ожидали от компьютеров еще в 50-60-ых годах прошлого века, когда казалось, что еще чуть-чуть и благодаря компьютеру люди создадут еще один разум. Этого не произошло, и требования к искусственному интеллекту стали постепенно снижаться, так появились термины «сильный ИИ» — ИИ в его первоначальном понимании — и «слабый ИИ» — просто интересные алгоритмы.

Книга А. С. Потапова «Искусственный интеллект и универсальное мышление» представляет собой обзор проблем, возникающих при попытке создания сильного ИИ и попыток их решения с помощью алгоритмов, которые теперь относятся к слабому ИИ. В целом это книга не по алгоритмам и их программированию, в ней нет подробных описаний особенностей алгоритмов, связанных именно с программированием, в ней рассматриваются проблемы в целом, залезая в области биологии, психологии, где-то даже философии.

Книга разделена на четыре части. Первая часть посвящена попыткам понять, что же такое интеллект и мышление, как происходит мышление у людей, животных, чем оно отличается от алгоритмов, выполняемые компьютером. Дать определение термина «интеллект» — это тоже не простая задача, разные ученые понимали под этим термином сходные, но в то же время отличающиеся в деталях понятия. Вы скорее всего знаете про тест Тьюринга, по определению интеллекта, когда компьютер общается с человеком, и человек не должен понять, с ним разговаривает другой человек или комьютер. Но можно ли считать интеллектом поведение животных, например, обезьяны, когда она применяет нестандартные подходы, чтобы получить банан (для примера, сбивает его палкой)? Эдвард Торндайк, который занимался исследованием поведения животных, дал следующее определение интеллекта:

Интеллект — это способность к нахождению действий, позволяющих разрешить проблемную ситуацию, для которого готового ответа нет, в то время как инстинкт (или рефлекс) — это применение известной последовательности действий.

ИИ — это не просто алгоритм, которому на вход подают какие-то величины, а в результате его работы получают результат, ему нужно взаимодействовать с окружающей средой, по крайней мере нужно получать информацию о ней. Поэтому вторая часть книги посвящена способам описания окружающего мира и представлениям знаний. Подобные представления используются в так называемых экспертных системах. Здесь же рассматриваются вопросы взаимосвязи интеллекта и знаний (человек считается умным, если он много знает, но в то же время в тестах на IQ наоборот абстрагируются от знаний), а также способы хранения знаний для использования компьютером.

В этой же части рассматриваются вопросы классической и неклассических логик и попытки их использования на компьютере. Под логикой здесь понимается не привычная нам булевая логика, но и более общие индуктивные и дедуктивные логики, когда из некоторых высказываний нужно вывести какое-то следствие. Именно для этой цели в 1972 году был создан язык логического программирования Пролог.

Рассмотрев вопросы (или скорее нерешенные проблемы) представления знаний, автор переходит к третьей части — к машинному обучению. Начинается эта часть опять с философского вопроса, что считать обучением, и чем обучение компьютера отличается от его программирования:

Если человеку сообщается готовый алгоритм решения задачи конкретного типа, то это тоже называется обучением, тогда как в случае компьютеров это называется всего лишь программированием.

Какая же книга про ИИ обходится без нейронных сетей? И данная книга не исключение, но отличие ее от многих других книг заключается в том, что автор довольно подробно описывает естественную нейронную сеть — мозг — с точки зрения химии и биологии, и рассказывает, какие особенности настоящего мозга не используются в классических нейронных сетях, как эти особенности все-таки пытались перенести в компьютер, и какие трудности при этом возникают. Здесь же рассматривается и основная проблема машинного обучения, которая красной нитью проходит через дальнейшие главы книги — переобучение, когда нейронная сеть хорошо распознает образы, на которых ее учили, но стоит внести малейшие искажения, как она начинает выдавать абсолютно неверный ответ.

В этой же части затрагивается тема памяти, каким образом она работает у живых существ, и как осуществляется выборка из нее нужных в данный момент знаний. Рассказывается о попытках моделирования такой памяти с помощью все тех же нейронных сетей.

После этого рассматриваются вопросы зрения: и естественного, и компьютерного. Здесь же описываются исследования, направленные на изучение обработки увиденного мозгом, и опять же попытки моделирования всего этого на компьютере. В результате выводы делаются не утешительные для сторонников нейронных сетей:

«Вообще, сейчас в компьютерном зрении искусственные нейронные сети не очень популярны, поскольку с помощью обычных алгоритмов удается достичь результатов заметно более эффективным образом».

После чего рассматриваются различные алгоритмы разпознавания, не столько изображений, сколько объектов по их признакам. Проблема выделения признаков для объектов также рассматривается.

Затем в этой главе рассматривается еще несколько интересных тем, но меня тут больше заинтересовали главы, посвященные теории информации, особенно не классической теории информации по Шеннону, а теории согласно которой количество информации можно оценить по размеру минимальной программы, которая может моделировать передаваемые данные. То есть мы не обязаны передавать сами данные, мы можем передать программу, которая будет эти данные генерировать на другом конце провода, и количество информации можно оценивать по размеру такой программы. Т.е. если нам надо передать строку 1111111111111111, то нам достаточно передать очень короткую программу, которая будет всегда будет выдавать только единицы, и количество информации, передаваемой с помощью такой строки будем малым. Если нам надо передать строку 10101010101010, то программа будет чуть сложнее, и количество информации будет уже больше, но тоже немного. А вот для передачи строки, для которой нет явного алгоритма генерации данных, например 10011101000101111001, в программе придется хранить всю эту строку в явном виде, и количество информации будет намного больше. В случае, если объем передаваемых данных заметно больше размера передаваемых дополнительных байт, связанных с запуском/компиляции программы (например, хранения служебной информации в exe-шнике) размер количества информации, оцененной по такой теории примерно соответствует количеству информации по Шеннону, где используются вероятности.

И, наконец, четвертая часть книги посвящена появлению и эволюции интеллекта. Здесь рассматриваются вопросы естественной эволюции в природе, а также алгоритмы, моделирующие ее (генетический алгоритм и алгоритм имитации отжига), а также вопросы самоорганизации. Здесь же рассматриваются эмоции с точки зрения биологии, эволюции и попыток их моделирования.

Еще одна интересная глава посвящена вопросу, что больше влияет на интеллект — врожденные способности или окружающая среда и обучение, также описываются различные исследования на этот счет.

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

В целом книга скорее теоретическая, то есть прочитав ее вы не станете хвататься за компилятор и сразу писать код, реализующие те или иные алгоритмы, даже описанные в книге. Эта книга скорее для ознакомления тех, кто решит заняться темой сильного ИИ в том или ином направлении, чтобы знать, какие исследования уже проводились и какие при этом возникли проблемы.

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

PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

Пожалуйста, оцените запись

УжасноПлохоТак себеХорошоОтлично (Количество голосов: 5, средняя оценка: 4,00)
Загрузка...

Leave a comment

Subscribe without commenting