Немного философствования на тему искусственного интеллекта: мое опровержение эксперимента Китайская комната😉
(Скорее для программистов, и для интересующихся).
В 1980 г. философ Джон Серл заявил о принципиальной невозможности сильного искусственного интеллекта, то есть наделённого осознанием, пониманием того, что он делает, способностью самостоятельно принимать решения.
Для подтверждения этой мысли он предложил следующий мысленный эксперимент.
Человека, не знающего китайский, сажают в закрытую комнату. Через щель в двери ему иногда поступают вопросы на китайском в виде табличек с иероглифами. У человека есть книга с подробными инструкциями, что делать при поступлении того или иного иероглифа, и свои таблички с иероглифами. В конце каждой инструкции человек должен засунуть ответный иероглиф в щель(гусары, молчать)😉 в щель двери.
Человеку снаружи, задающему вопросы, может показаться, что отвечающий понимает китайский. Тогда как отвечающий действует по инструкции и не понимает ничего.
Эксперимент, по мнению Серла, должен был показать, что машина, как и человек в комнате, всегда будет действовать по инструкциям, смысла которых не понимает. Таким образом, у машины никогда не появится сознания.
Теперь мои возражения)
Сознания у машины не появится, если программисты фиговые😉 но если немного подумать...
Для начала продолжим аналогию с человеком. Если инструкция в комнате фиговая, то он так ничего и не поймёт) А если написать хорошую инструкцию с самоучителем китайского, с картинками. С обязательной инструкцией выучить китайский перед началом работы. С описанием на родном языке того, что собственно он делает: он отвечает на вопросы. С классификацией вопросов и обобщенными шаблонами ответов, на родном языке. Будет ли после такой инструкции человек понимать, что делает? Думаю, да.
Программа для искусственного интеллекта тоже может быть такой, как и инструкция, и наделить машину сознанием.
Раскрою мысль. У человеческого сознания есть три отличительные черты:
-рефлексия, способность мониторить свои действия, анализировать их, давать оценку. Это и есть «понимать, что ты делаешь».
-понятийный аппарат: наличие обширной сети понятийных связей между самыми различными объектами, например, между морковкой и иероглифом, обозначающим морковку. И более абстрактные понятия, например истина и ложь.
-адаптивность поведения: способность менять программу действий для достижения результата. Отсюда кстати вытекает способность самостоятельно принимать решения.
Так вот, технологии программирования способны наделить этими свойствами машину уже сейчас.
Давно уже в программировании есть мета-языки, например, html, xml.
С помощью мета-языка можно описать почти все человеческие понятия и связи между ними. А также набор инструкций для машины, который легко переводится в машинный код. Подобных программ, а точнее говоря, библиотек и фреймворков, уже полно. Что и даёт кстати машине «понимание» того, что она делает. Осталось только дело техники: расписать на мета-языке понятийный аппарат человека, это дело техники, программисты прекрасно справятся, с привлечением разных экспертов. Пример: машину можно будет спросить, вась, а что такое синхрофазотрон, и она вам в подробностях распишет, ещё и морковку возможно приплетет) через связи в понятийном аппарате.
Теперь насчёт такого свойства, как рефлексия. Надо сказать, что сохранение результатов работы программ в памяти реализовано уже давно. Техника называется журналирование, или логгирование. Правда, пока понятны эти логи пока только человеку. Но при наличии того самого мета-языка можно осуществлять журналирование на «понятном» машине языке. Если каждый вызов программы увязать с результатом, то машина способна и дать «оценку» своим действиям. Кстати, Винда уже давно способна оценивать такой результат своей работы, как сбой, и сообщать об этом, расширить это дело техники. Снова пример: можно будет спросить машину, а что ты делала вчера в 16:00, и она ответит: заносила китайский в свою базу знаний, результат: стопятьсот новых иероглифов выучено.
Это ли не понимание своих действий? Рефлексия в чистом виде.
Об адаптации поведения и вытекающем из него принятии решений. Техника замены программного кода самой программой известна уже очень давно. Не буду много расписывать. Просто скажу, что если будет интеллектуальная программа на мета-языке, понятном самой машине, если будут упомянутые журналы результатов работы, если увязать все это с упомянутым понятийным аппаратом, то остаётся простая вещь: планировщик задач, который запускает нужную программу в нужный момент(уже есть такие, все знают наверное). Остаётся только добавить ему возможность модификации кода программ, в том числе и самого себя.
Вывод: на мой взгляд, машины можно наделить сознанием, осознанностью, пониманием уже достаточно скоро. И все они смогут. «Сильный» искусственный интеллект возможен😉