Слишком сложные! мы теряем контроль над машинами

Споры об опасности ИИ, как и «умных» автомобилей по большому счету, довольно часто заканчиваются одним и тем же доводом — столь же несложным, сколь и поразительно сложным: мы не в состоянии осуществлять контроль автомобили, по причине того, что не в состоянии их осознать! Принять данный довод на веру готовы немногие. Мы привыкли и здравый суть диктует нам, что выстроенные нами устройства известны нам и подконтрольны до последнего винтика, байта, транзистора. А также в случае если устройство сверхсложное — ну, заберите ПК, что большинством пользователей понимается, само собой разумеется, лишь поверхностно — постоянно найдётся эксперт, талантливый его электрическую/логическую схему растолковать.

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

Слишком сложные! мы теряем контроль над машинами

Нам потребуется какая-нибудь среда разработки — и, надеюсь, вы простите меня за то, что, как и в прошлые разы, я выберу BASIC. Уверен, далеко не все читатель «Компьютерры» сейчас силён в программировании, а бейсиковский текст легко понять кроме того неспециалисту, и одновременно с этим возможностей этого языка в полной мере хватит для ответа поставленной задачи. Так что вооружимся интерпретатором GW-BASIC (оригинал 30-летней давности возможно найти в Сети; под MS Windows он запускается из командной строчка, под Linux через dosbox) и вобьём в него следующую несложную программу (в случае если BASIC не нравится, в комментариях к колонке — благодарю читателям! — имеется версии на C и Ruby).

10 RANDOMIZE
20 DIM DNA[2000]
30 LENGTH=10
40 POSITION=1
50 M=RND
60 IF M 70 DNA[POSITION]=M
80 RESULT=0
90 FOR I=1 TO POSITION
100 IF DNA[I]=0 THEN RESULT=RESULT-1 ELSE RESULT=RESULT+1
110 NEXT I
120 IF RESULT10 THEN GOTO 50
130 POSITION=POSITION+1
140 IF POSITION 150 PRINT CODE:
160 FOR I=1 TO LENGTH
170 PRINT DNA[I] ;
180 NEXT I

Имеете возможность верить, имеете возможность проверить, но эта тривиальная программка из двух десятков строчков — сущность, аналог сложнейших совокупностей эволюционного либо, как ещё говорят, генетического программирования. Само собой разумеется, я очень сильно упростил структуру, но принцип остался тем же: эта программа сама ищет ответ для предложенной ей задачи. Я поручил ей сгенерировать произвольное число в диапазоне от 0 до 10 и сделать это за десять шагов, начав с нуля и случайным образом прибавляя либо вычитая на каждом шаге единичку. В случае если на каком-то шаге промежуточный результат выходит за ограничения (оказывается меньше 0 либо больше 10), программа повторяет ход, исправляя себя.

По окончании того, как задача решена, «придуманный» метод распечатывается на экране — в виде единиц и последовательности нулей: эта последовательность — сама по себе программа, в которой ноль свидетельствует инструкцию «вычесть из результата 1», а единица свидетельствует «прибавить к результату 1». В случае если угодно, о результате работы возможно думать как о спирали ДНК, по которой живая клетка сооружает молекулу белка — лишь отечественная «клетка» сооружает не белок, а число от 0 до 10.

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

Слишком сложные! мы теряем контроль над машинами

Запустите её и проанализируйте выдачу. Любой раз вы получите новую последовательность руководств, но пока протяженность результата ограничена каким-то разумным числом (в отечественном примере числом десять, см. строчок 30), осознать его нетрудно. Сгенерированную последовательность легко «выполнить» в уме — прибавляя либо отнимая по единичке за ход. Но давайте усложним задачу: пускай «придумываемая» программа содержит уже не десять, а сто руководств. Как много времени займёт у вас анализ этого кода? Проанализировать его «в лоб», т.е. «прогнать» в уме, уже не так легко. Но, пока ещё возможно попытаться применить математические способы сокращения сложности — так как мы знаем, что вся последовательность составлена всего из двух вычитания: и инструкций сложения.

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

Но и это ещё не предел. В неестественных нейросетях, к примеру, нет той строгой последовательности потока команд, которая свойственна неестественной генетике. В нейросетях все элементы схемы (либо по крайней мере большая их часть) трудятся в один момент, так что кроме того для создателя нейросети уяснить суть происходящего в ней сложно. Не нереально, нет, возможно постараться обрисовать нейросеть сложнейшей совокупностью уравнений. Но фактически уже на несложных пересечениях с биологией (вспомните цифровую модель червя Caenorhabditis elegans) это чуть ли осуществимо.

Слишком сложные! мы теряем контроль над машинами

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

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

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

БИТВА ЗА ТАЧКУ! Чудесным образом ПОПАЛИСЬ ТАЙНЫЕ ЛЕГО Автомобили! БИТВА ЗА КОНТЕЙНЕРЫ В БРИК РИГС (Brick Rigs)


Похожие статьи: