Часто читаю разные статьи про ИИ — и каждый раз, до прочтения статьи, ждёшь от неё конкретных инструкций, после которых любая команда программистов сможет сесть и написать ИИ. Но в итоге — ничего нового обычно не нахожу. Поэтому решил написать нечто подобное сам. Хотя тут больше будет про то, почему ещё не написан и когда же будет таки написан.
Сразу скажу, что мне интересен «ИИ аналогичный человеческому» (далее просто ИИ). Т.е. такой, с которым будет интересно общаться, и который будет полезен в каких-то областях. Например, приходишь домой и говоришь: «Джарвис, проверь — не вышла ли новая серия ТБВ ?», « — Вышла, сэр!», « — Ну скачай», « — Готово».
Как известно, умного человека можно обучить любой профессии, а вот стиральную машину не получится сделать умным киборгом. Поэтому в плане ИИ — лучше сразу сделать хорошо и по максимуму, «чтобы два раза не вставать», т.е. не переделывать, а значит надо сделать максимально «умный» ИИ, подсмотрев способности и суть работы человеческого мозга и повторив их. Других путей я не вижу хоть и очень долго обдумывал (может кто-то другой видит — пусть напишет). Почти всё, что может человек, считаю можно перевести в формулы и программный код, за исключением понятий красота (аудио-, визуальная и поэтическая), юмор, философия, религия, удовольствия и ряд эмоций. Ну, нам пока и этого «почти всего» хватило бы от бездушной железяки в виде компьютера.
У человеческого мозга есть одна «суперспособность», без которой ИИ никак не обойтись, но для реализации которой, к сожалению, сегодняшнего домашнего компьютера нам явно не хватит: представьте мысленно батут и рядом бассейн с водой, в оба мысленно бросьте по кирпичу, по очереди. Наверняка многие при этом мысленно «увидели» что на батуте кирпич подпрыгнул? А в воде — брызги и потом волны? Так мозг «на лету» моделирует полноценную физику, которая не во всех «топовых» играх реализована из за трудоёмкости вычислений. С такой скоростью всё это моделировать — это пока удел суперкомпьютеров. Книголюбы вообще чуть ли не фильм мысленно смотрят когда интересную книгу читают. Рано или поздно ИИ тоже так сможет — читать книгу и тут же, на лету, её визуализировать. Тогда снять фильм, причем в 3D, сможет любой человек просто продиктовав компьютеру свой сценарий, а при просмотре человек сможет «двигать камеру» и смотреть этот фильм с любых ракурсов и редактировать.
Итак, одно узкое место мы выяснили — моделирование полноценной физики в объёме решаемой задачи. Объёмы эти разные, но чем больше объём, тем более упрощённо человек мысленно моделирует там физику.
Когда программа ИИ будет написана и впервые запущена — её надо будет долго обучать, как новорожденного ребёнка, потому что опыт и знания с помощью строк кода ему не передать. Это потом, после обучения, можно будет копировать программу ИИ вместе с базой накопленных ею знаний.
ИИ всегда должен считать, что он имеет форму человека, может двигаться как человек и что он находится в виртуальной комнате, оборудованной компьютером для доступа в интернет, иначе нам трудно будет его обучать, а ему трудно или даже невозможно будет понимать людей.
Обучать ИИ проще всего поместив его в виртуальную реальность, которая будет копией нашей реальности, хотя бы в масштабе небольшого городка. На первом этапе вообще — просто большой дом со стандартным набором комнат, помещений и предметов, включая детскую комнату с игрушками.
Ещё скажу про неочевидный, но очень важный момент – человеку только кажется, что он видит реальный мир, на самом деле он оперирует всегда в мысленной копии реального мира, в некоей мысленной 3D VR. Пока глаза открыты — эта копия в мозгу человека фотореалистична и объёмна, а когда закрыты — она мысленно строится по памяти усилием воли. У кого-то она и при закрытых глазах яркая и стабильная, у меня она смутная и расплывчатая, приходится напрягаться. По словам Теслы — он придуманные объекты видел так же ярко, как реальные, даже не мог отличить где реальные а где нет, ему приходилось запоминать что он придумал а что нет.
Весь путь создания ИИ я вижу таким:
1. Одна из крупных контор на мощном сервере создаёт виртуальную реальность где есть целый город (далее городок) с полноценной физикой и химией. В этот городок исследователи попадают одев очки VR и перчатки (а лучше костюм).
2. Отдельной программой создаётся в том же городке 3D-модель андроида, с телом почти как у человека (чтобы конечности так же двигались и чтоб ходить мог, а не летать сквозь стены, чтоб предметы мог брать и т.п.). Вспомните Google — они в виртуальном городке обкатывали гугломобили, так же надо для начала обкатывать и обучать ИИ. Заодно можно с удивлением вспомнить строки «Создал бог человека по образу и подобию своему…» — а не попали ли мы в некую вселенскую рекурсию ?
3. Для этого 3D-андроида пишется программа ИИ (далее просто программа). В программе надо будет реализовывать всё что может человек, а для этого надо смотреть как дети с малых лет себя ведут и закладывать в программу все их способности. Основное чем заняты дети — распознаванием 3д моделей всех предметов окружающего мира и выяснением физических характеристик (крутят в руках предметы, пробуют на вкус, кидают, в общем изучают и запоминают характеристики и свойства). В VR-городке андроиду будет проще — т.к. там распознавать 3д модели не надо, их форму и свойства можно брать из локации и из базы напрямую. Умение распознавать 3д модели по изображению пригодится андроиду с ИИ чуть позже — когда он начнёт смотреть фильмы, или когда выйдет в реальный мир в реальном робототеле с видеокамерами вместо глаз (тогда ему придётся самому создавать мысленные 3д модели неизвестных ему ранее предметов — глядя на них, беря их в руки если возможно).
Итак, сначала в городке — ИИ научится ходить, брать и ставить на место предметы. Далее надо ему уметь распознавать речь и говорить самому. Затем он будет учится копировать действия людей — бегать, выполнять примитивную мех.работу и т.д.
Я считаю, что каждое слово либо имеет либо 3д форму объекта (существительные), либо являются описаниями действий в 3д реальности (глаголы), поэтому любой ИИ, работающий без моделирования 3D VR заранее обречён на непонимание человеческой речи.
4. У человека есть способность мысленно прокручивать свои и чужие действия чтобы понять как лучше действовать — значит и ИИ должен иметь такую возможность — т.е. он «мысленно» создаёт небольшую копию окружающей его VR, мысленно прорабатывает там разные действия и выбирает то, которое приводит к нужному результату. Например, скажут ему «собери кирпичи в корзину» — он это сделает «мысленно» копии VR, затем в той VR в которой мы с ним общаемся. Причём, обдумает как сделать — быстро, а вот сделает заданное действие не мгновенно, т.к. модель его тела обладает массой, а значит инерцией — она помешает слишком резво бегать и мы будем видеть все действия.
5. Человек помнит не только 3д модели и характеристики всего что видел, но и всё что связано с каждым предметом, мы это называем словом «опыт» — андроиду понадобится много памяти для такой же способности. В этом плане объём человеческого мозга поражает, и не только объём, но и скорость, с какой мозг вытаскивает нужные воспоминания по ключевым образам.
6. Человек первым делом обращает внимания на изменения, происходящие вокруг него. Если на него едет машина — человек мысленно прокручивает что дальше произойдёт и принимает решение уйти с траектории движения машины. ИИ должен действовать аналогично — каждую секунду просчитывать что будет дальше (на несколько секунд вперёд) и предпринимать действия чтобы скорректировать ситуацию в нужную сторону. Иногда ИИ как и человек должен делать паузу и просчитывать будущее на несколько часов, дней, месяцев и лет вперёд, чтобы выявить возможные проблемы или вред постороннему человеку от своих действий. Этот пункт обкатывается сейчас в беспилотных гугломобилях.
7. Понадобится много дополнительного программирования на тему того, чтобы ИИ мог общаться с людьми не на примитивном уровне, а полноценно, мог их понимать, мог им отвечать, понимать задания и выполнять задания. На эту тему надо целую отдельную книгу писать. Очень сложный и интересный пункт. Я бы поучаствовал, если доживу.
8. Чтобы андроид мог полноценно читать всё что написано людьми (книги, статьи и т.п.) придётся расширить городок до виртуальной планеты, а то и до виртуальной солнечной системы, или научить его самому моделировать нужный участок планеты про который идёт речь в книге или статье. И тут надо помнить что есть книги художественные и фантастические, а есть учебники. Придётся, на этапе обучения ИИ, выбирать что можно скармливать ИИ, а что нет.
9. Дальше можно выпускать такого обученного специалистами андроида с ИИ в интернет, а потом и в реальный мир (если смогут к тому времени ему сделать подходящее физическое тело). И то, это просто будут глаза и руки, а сам ИИ останется в своём виртуальном мире. Тут есть риск что через интернет злые люди «испортят» ИИ, его «неокрепший ум», это надо будет учитывать и проверять, искать варианты защиты (навскидку они есть — вес слов разработчиков должен всегда сильно превышать вес слов других людей).
По сути всё человечество занято тем, что заносит в память своего мозга 3D модель доступного им окружающего мира. Людей много, поэтому в целом модель охватывает всю планету. Коллективно люди действуют и взаимодействуют. ИИ будет скорее всего один (ну может два, три, десять? ведь каждому нужен суперкомпьютер для независимой работы). В одиночку ИИ не сможет для себя построить подробную модель всей планеты и не сможет натворить бед в масштабах всей планеты. Чем больше у ИИ база знаний — тем медленнее он с ней будет работать. Люди ещё очень долго будут оставаться сильнее чем ИИ во многих областях, т.к. могут коллективно действовать в реальном мире и могут использовать миллионы компьютеров для решения разных частных задач.
Ну вот, после такой статьи, если у вас есть лишний суперкомпьютер, можно садится и начинать писать программу ИИ, предварительно написав софт виртуальной реальности с полноценной физикой в объёме хотя бы большой комнаты с детскими игрушками. А без суперкомпьютера лучше даже не начинать — получится настолько убогий ИИ, что с ним будет не интересно. Если объём VR равен комнате — представьте себе ребёнка, который вырос в этой комнате и внешний мир видел только на плоских картинках — много ли толку будет от такого ребёнка? Общаться с ним взрослым не интересно, важную работу — не поручишь. Вот и с таким ИИ будет так же.
Я допускаю, хоть и с неохотой, что предложенный мной путь программирования и обучения ИИ на определённом этапе может упереться в непреодолимые трудности. Опасение вызывает область абстрактного мышления — человеческий мозг легко пользуется такой способностью для решения некоторых задач, но как это полноценно запрограммировать в ИИ — придётся подумать.
Для непрограммистов и гуманитариев хочу уточнить один момент — в финале, когда всё получится — ИИ всётаки останется бездушной программой, не осознающей себя как «живое Я, существующее в локальной точке бесконечной вселенной», но в остальном это будет хороший помощник человеку во всех его делах, что то вроде Джарвиса из «Железного Человека». У него не будет желаний, чувств и эмоций кроме запрограммированных заранее.
И ещё на тему страхов, которые иногда раздуваются в СМИ: моё мнение — навредить могут только программисты, которые в отдельно взятом ИИ сотрут запрет вреда человеку и прикажут вредить кому то. Ну вредить-то они и без ИИ могут — например написав вирус. И разрушительный эффект от действий человеческих вредителей будет даже выше вреда от ИИ. Т.к. у человека фантазии, опыта и средств в этих недобрых делах явно больше.
В древних восточных текстах, кстати, есть описания «ума», как он работает. Там он сравнивается с обезьянкой, которая постоянно прыгает от одного предмета к другому. Ещё есть сравнение с чем то бесформенным, которое принимает форму того предмета, о котором человек думает. Наверно именно поэтому человек не может слушать речь сразу нескольких человек — т.к. речь каждого рисует свою картину, а как ум может принять форму одновременно нескольких разных картин? Или например попробуйте одной рукой «рисовать в воздухе» круги, а другой — треугольники. Не получится, т.к. ум может сосредоточится только на одной фигуре и начать её транслировать конечностям — в итоге обе руки будут рисовать одну и ту же фигуру.
Обучать ИИ в начале пути должны люди, которые имеют своих детей, плюс педагоги. Что то придётся программным путём внедрять в ИИ, а что то ИИ должен сам для себя в некоей базе сохранять.
Ребёнок не может сидеть спокойно — ему всегда что то интересно, причём всё новое. Взрослый может сидеть спокойно — он про всё знает, что видел и что было когда то интересно, да и перевешивает набор бытовых проблем и задач, которые надо решать. Получается, ИИ должен с помощью наставников «поиграть» в VR со всеми доступными объектами, записав себе в базу их свойства, потом должен пройти аналог школы — математику, русский язык, физику, химию и т.п. Затем можно дать ему высшее по ряду «специальностей». Если какие то области ИИ не изучит с помощью преподавателей, то он будет в них дилетантом, как обычный человек. Самостоятельно изучать ему будет трудно, т.к. по каждой теме очень много литературы, книги рассчитаны на людей, у ИИ часто будут появлятся вопросы.
Чем больше ИИ всего изучит с помощью людей, тем труднее ему будет использовать накопленную базу знаний — т.к. время поиска по базе увеличивается. Можно обучить ИИ до уровня 18-тилетнего, а дальше копировать на несколько машин и обучать каждый ИИ по своей «специальности». Потом, при необходимости, эти несколько ИИ смогут даже общаться между собой — задавать друг другу вопросы по специальности.
Путь создания ИИ я вижу долгим, трудным, но интересным.