Сегодня я хотел бы вернуться к тому, что я уже затронул в своей первой статье о Витгенштейне – о связи между языком и мышлением. В своем “Трактате”, Витгенштейн определяет правдивость любого утверждения так. Он говорит, что существует три исхода:
— утверждение правдиво, если оно утверждает возможное и подтверждается на практике;
— утверждение ложно, если оно утверждает возможное и не подтверждается на практике;
— утверждение бессмысленно, если оно утверждает невозможное.
Мне это сразу очень понравилось, видимо потому, что подходило к тому, чему меня учила моя первая профессия (физика) – определять правдивость утверждения экспериментом. Да и каждый из нас старается действовать так же и в повседневной жизни – проверять практикой (хотя бы только мысленно) сказанное.
Проблема в том, однако, что мы не всегда имеем подходящий опыт, а тут же проверить экспериментом сказанное в ходе реальной жизни далеко не всегда возможно. Да и не все в жизни можно проверить экспериментально. Поэтому таким образом отличить правду от лжи и от бессмысленности не получается. И каждый остается при своем мнении.
Чаще всего, мнение это и мировоззрение человека в целом (модель мира в его мышлении) построены так, чтобы он выглядел в своих собственных глазах достойно – в соответствие с системой ценностей той социальной группы, к которой человек принадлежит. Поэтому – без практической проверки каждого утверждения – убедить человека в том, что он неправ (и чтоб он увидел себя негативно в собственных глазах) очень трудно, если вообще возможно. Мало того, чем больше мы пытаемся это сделать, тем более мощную защиту своим взглядам он строит.
Замечено, однако, что мы склонны доверять и принимать сторону тех, кто нам нравится. А уж почему этот человек нам нравится, тут можно долго рассуждать, хотя решение о том, что кто-то нам нравится, мы принимаем в течение первых несколько секунд. Этим пользуются талантливые обманщики и очень неплохо на этом наживаются.
Но вернемся к Витгенштейну. Он, похоже, утверждает, что разум – понятие общественное, не частное. А язык он рассматривает как средство мышления. Действительно, язык позволяет привлекать других к сотрудничеству и таким образом браться за более сложные проблемы. А передавая знания последующим поколениям, мы обеспечиваем возможность технического прогресса, который мы наблюдаем с тех пор, как человек научился говорить, а потом и писать, и особенно после распространения печатного производства, а сейчас – интернета.
Так что в этом смысле можно согласиться с Витгенштейном, что разум каждого из нас – это частица разума того общества, в котором мы живем. Мы не можем избежать влияния на наше мышление со стороны нашего окружения, книг, которые мы читаем, сайтов, которые мы просматриваем.
Русскоязычная wikipedia говорит, что “мышление – это познавательная деятельность человека.” Я склонен с этим согласиться, хотя англоязычная wikipedia определяет мышление шире, говоря, что оно “включает в себя поток ориентированных на цель идей и ассоциаций, которые могут привести к связанному с реальностью заключению.” Тоже согласен.
В Философских Исследованиях, Витгенштейн говорит, что значение слова и предложения определяется его использованием. Мне кажется, что именно так и происходит процесс познания – от отдельных фактов к обобщению. Когда мы слышим чей-то рассказ или просто одно утверждение, мы сравниваем сказанное с теми обобщениями, которые мы уже накопили на основании своего и чужого опыта. Или просто доверяем говорящему, если он нам очень нравится.
Нам часто приходится принимать решения на основании недостаточной или ненадежной информации. Но мы вынуждены действовать, вынуждены принимать решения. Так мы окружаем себя мифами.
После развала СССР, многое из нашего прошлого оказалось мифом. В любой стране существует мифология. Очень редко и не каждому удается ее выявить в себе. А если удается, то избавление от нее может быть очень болезненным процессом. Поэтому мы его избегаем, если не вынуждены и не мотивированы поиском истины.
Но я ушел в сторону от темы. Язык, которым мы пользуемся, “разговаривая” с компьютером, да и сам компьютер не позволяют такой вольности. Что значит верю или не верю сказанному? Раз команда дана, она выполняется – и все. Машина Тьюринга исполняет инструкции. Она не думает. Если бы машины сомневались и перепроверяли наши команды, как бы они принимали решения?
А человек, сомневаясь, все же принимает решение, иногда просто руководствуясь тем, насколько ему нравится командир. Или по каким-то моральным соображениям. Или просто от сочувствия. И такой, казалось бы, нерациональный подход себя оправдывает. Ведь мы выжили. Значит эмоциональное, интуитивное поведение, ощущение “печенкой” дает не такой уж плохой результат. Человеческие эмоции и автоматические решения используют опыт человечества – миллионы лет проб и ошибок. Они были отобраны эволюционно. А у машин нет эволюционной истории. Так что они не могут выйти за пределы конкретных фактов и остается им одно – исполнять команды не думая.
Так было до совсем недавнего времени. Но вот появилось машинное обучение, нейроновые вычислительные сети, глубокое обучение, и даже эволюционные алгоритмы. Это только наиболее популярные из терминов. Все они связаны с разработкой искусственного интеллекта. Область это огромная, быстро развивающаяся. Так что я проведу только одну логическую цепочку, в которой мне довелось работать.
Начнем сверху. Искусственный интеллект включает в себя несколько подходов: статистические методы, традиционное символьное моделирование, и вычислительный интеллект (ВИ). Мы заглянем только в последний.
Дело в том, что его техника отличается от традиционной – основанной на бинарной логике 0/1. Человеческий язык плохо моделируется такой логикой. Мы с вами только что говорили, что смысл сказанного (и подуманного) очень зависит от контекста и того, что человек “на самом деле” хочет сказать – его мотивации и мировоззрения в целом.
ВИ использует другую логику, которая называется нечеткой логикой. Она лучше моделирует человеческое мышление и особенно процесс обобщения, позволяя приписывать каждому элементу не просто 0 или 1, а степень его близости к 0 или 1.
ВИ включает пять направлений, подходов или принципов (терминология еще не установилась): нечеткая логика, нейронные сети, эволюционное моделирование, вычислительное обучение, вероятностные методы.
Значительное подмножество ВИ называется машинным обучением, которое сделало значительный прогресс в практическом использовании за последние десять лет.
Подмножество машинного обучения основано на искусственных нейронных сетях и называется глубоким обучением. Нейронные сети позволяют компьютеру “учиться” решать задачи на примерах. При этом нет необходимости программировать правила решения для каждой задачи. Алгоритм сам составляет/изобретает такие правила. Например, если собрать значительное количество изображений и обозначить каждое как “кот” или “не кот”, то алгоритм сможет научиться находить котов среди других – новых – изображений. Такой подход называется обучением с учителем. Человек при этом выступает в роли учителя, обучающего компьютер человеческому языку.
Но возможно обучение и без учителя, когда алгоритм сам классифицирует изображения (например) и сам решает, по каким признакам проводить классификацию. Естественно, он при этом не называет изображение кота “кот.” Он “изобретает” свой “язык.” И только после того, как классификация проведена, мы можем “перевести” этот новый язык на наш, назвав соответствующие категории (если такие категории существуют в нашем языке). В этом случае уже человек учится у компьютера.
Вот так. Помните, что мы начали с того, что машина просто выполняет инструкции. А пришли к тому, что компьютер сам решает, что делать. Компьютер затем может попросить человека перевести изобретенный им язык на человеческий. Кто тогда будет выполнять чьи инструкции?
Конечно, как я писал в предыдущем блоге, пока это выглядит так, как будто язык компьютера просто ставится в соответствие с предметами реального мира, напоминая подход Витгенштейна в его Трактате: “[человеческий] язык моделирует реальный мир и его структуру; таким образом значение слова/предложения приходит из реального мира.” Это я поставил “человеческий” в скобки, чтобы представить, что сказал бы молодой Витгенштейн о “нечеловеческом” языке.
Но вполне можно представить, что компьютер начнет вводить более тонкие и сложные классификации, “наблюдая” за настроением окружающих его людей, например. Сможет ли он при этом научиться понимать эмоции? Похоже, что сможет. А, поняв, не значит ли это, что компьютер сможет их “испытывать”. Дети часто просто имитируют поведение и эмоции взрослых еще до того, как сами “научаются” их чувствовать. А сможем ли мы отличить имитацию эмоций компьютера от “реального” переживания?
Пока об этой стадии мы можем говорить только теоретически. Дело в том, что такое глубокое обучение быстро усложняется с ростом сложности задач. Но на смену ему, похоже, приходит эволюционное программирование – очень отличающееся от нейронных сетей. Его цель автоматически генерировать компьютерный код (программу), специфический для решения каждой конкретной задачи. Такая программа уже будет выполняться значительно быстрее, чем программа для решения более общей категории задач.
Сегодня наиболее популярным алгоритмом эволюционного программирования является “генетический алгоритм.” Его используют “для решения задач оптимизации и моделирования путём случайного подбора, комбинирования и вариации искомых параметров с использованием механизмов, аналогичных естественному отбору в природе.” Те, кто этим занимается пользуются терминами “наследование”, “мутации”, “отбор”, “скрещивание”.
Звучит знакомо? А помните, как в этой статьи – всего на несколько параграфов выше – мы говорили, что “человеческие эмоции и автоматические решения используют опыт человечества – миллионы лет проб и ошибок. Они были отобраны эволюционно. А у машин нет эволюционной истории. Вот и остается им одно – исполнять команды не думая“, а?
Присылайте свои комментарии в ответ на мою рассылку новостей, и я их помещу здесь.
Если вы не получаете мою рассылку, то подпишитесь через закладку Подпишитесь.