Как японцы инвестировали 500 миллионов долларов в ИИ и провалились

В конце 70-х годов XX века правительство Японии запустило невероятный по масштабности проект. На него была выделена огромная сумма денег, за все время проинвестировали около 500 миллионов долларов! Почему в таком случае мы о них ничего не слышим? Потому что этот проект ждал эпический провал! В этой статье разбираюсь, что там на самом деле произошло

Предпосылки

В сфере айти Япония тогда показывала себя хорошо, но японцам было мало второго места — они хотели обогнать США и стать технологическим лидером. А раз хочешь обогнать, нужно инвестировать. Проект получил название “Компьютеры пятого поколения”, и предполагалось, что этот проект станет основой экономического роста Японии на долгие годы вперед.

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

Японцы же решили, что их процессоры будут построены принципиально на других технологиях:

  • Предполагалось, что новый процессор будет работать на модном логическом выводе. В то время не так давно появился язык логического программирования Prolog, и на него возлагались большие надежды.
  • К тому же, сказали авторы идеи, компьютеры 5 поколения будут многопроцессорными! Неслыханное по тем временам новшество.

Предполагалось, что разработка таких систем займет 10 лет. План был следующий:

  • Начиная с 1978 года на протяжении 3 лет проводим первоначальные исследования;
  • Далее 4 года разрабатываем отдельные модули системы;
  • Затем за последние 3 года готовим прототипы компьютеров.

Так почему же план не сработал?

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

💻 В классическом, императивном программировании, программа для считывания массива — это серия операций:

  • Создай массив и записывай туда числа, которые пользователь введет с клавиатуры
  • Создай пустую переменную, и затем прибавь к ней каждое из чисел массива;
  • Выведи то, что лежит в переменной.

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

📄 В свою очередь, декларативный стиль предполагает, что программист говорит программе то, как должен выглядеть конечный результат, а уже потом она сама “выводит” решение. В случае языка Prolog, программа для суммирования выглядела бы примерно так:

  • Факт 1: массив состоит из ”головы” и ”хвоста”. Голова — это первый его элемент, а хвост — это все остальные
  • Факт 2: “сумма чисел массива М” — это такое число, которое будет равно сумме Г и «сумме чисел массива Х», если Г и Х — это голова и хвост массива М
  • Теперь ответь на запрос, чему равна “сумма чисел массива, введенного с клавиатуры”

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

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

Короче, с софтом получилась беда, программы было дико сложно разрабатывать, так еще и не все из них удавалось переложить с классического подхода на логический.

Так, хорошо, а что с железом?

Японцам мало было создать просто хороший логический процессор, нужно было обязательно сделать его многоядерным. В то время у разработчиков уже было понимание, что иметь несколько ядер лучше, чем одно, но стабильных прототипов все еще не было. Японцы сразу решили — наш компьютер будет с самого начала многоядерным, и логический вывод у нас будет работать параллельно. Разработчики на это ответили - ДА &@#% $!

Почему так? Да потому что мало того что под Prolog было неадекватно сложно программировать, так он еще и не проектировался для параллельных процессоров! Механизм логического вывода, который там использовался, не предполагал такого использования — и пришлось разрабатывать новый язык (исходники Prolog были закрытыми), и решать кучу задач по его оптимизации…

В итоге спустя 10 лет получили машину, которая худо-бедно могла повторять результаты, которые показывали хоть и мощные, но совершенно типовые компьютеры того времени. А потом подъехали по-настоящему параллельные процессоры, и проекту совсем стало худо.

Это компьютер PIM Model-m для параллельного логического вывода. Здоровый, сцуко
Это компьютер PIM Model-m для параллельного логического вывода. Здоровый, сцуко
А это Macintosh, вышедший в 1984 году. Чувствуете разницу?
А это Macintosh, вышедший в 1984 году. Чувствуете разницу?

Лучше всего эпический провал описывает одна из цитат с конференции, которую провели в 1988 году по завершении одного из этапов проекта:

Большинство представленных на конференции приложений были интересны потому, что они были «X, сделанным на логическом программировании» — а не потому, что они были «X, сделанным лучше, чем раньше»

один из докладчиков

Грустно, и точка.

Ретроспектива: так почему все-таки все оказалось так плохо?

Причин тому несколько:

- В отличие от исследователей из американской DARPA, которая давала немного денег, но зато на разные проекты, японцы решили пойти ва-банк. Все просто решили, что будут делать параллельные компьютеры на Прологе — но никто не задумался, может не стоит выделять столь огромные бюджеты только лишь на одну идею?

- Вторая проблема — это менталитет японцев. Когда стало понятно, что проект “не летит”, нужно было сообщить руководству, что проект не летит, и предложить изменить концепцию. В то время в японской культуре такое поведение считалось абсолютно неприемлемым, и лучше всего это иллюстрируют слова Кадзухиро Фучи, который отвечал за весь проект компьютеров 5 поколения:

Японцы — это народ, который решает те задачи, которые на него возложены, лучшим образом

Кадзухиро Фучи

Заметьте, не ставит задачи лучшим образом, не оценивает их перспективы, а именно решает. Если начальник сказал, что пишем на Прологе — значит, пишем, ему лучше знать.

Если бы в Японии тех лет была распространена культура индивидуализма, если бы поощрялась частная инициатива, и если бы исполнители оценивали трезво результаты своей работы — возможно, в таком случае удалось бы быстро исправить проблему. Но получилось то, что получилось, и словосочетание “компьютеры 5 поколения” навсегда закрепилось в истории как пример того, как можно потерять много денег меньше чем за 10 лет.

👉 Мораль из этой истории будет простая: не стоит класть все яйца в одну корзину, даже если ты могучая страна с развитой экономикой и огромными ресурсами. Особенно не стоит, если эта корзина окажется дырявой, а тебе об этом будет некому сказать.

Источники информации для глубокого погружения:

- The History of Artificial Intelligence — обзорная статья от Вашингтонского университета

The Japanese Challenge — Описание проекта по состоянию на 1984-год в New York Times

P. S.: А еще у меня есть Telegram-канал) Если вам интересен подобный контент — подписывайтесь, туда пишу в первую очередь) Ссылка: https://t. me/skrn_ai

3939
17 комментариев

Вторая проблема — это менталитет японцев. Когда стало понятно, что проект “не летит”, нужно было сообщить руководству, что проект не летит, и предложить изменить концепцию.Да, в России все по-другому конечно, низы могут спокойно донести верхам, что идея чет не очень :)

6
Ответить

Тут проблема еще чуть шире. Людям выделили 500 миллионов на проект. Какая мотивация заканчивать раньше срока? Финансирование-то бюджетное, зарплата капает потихоньку, куда рыпаться?

1
Ответить

Комментарий недоступен

6
Ответить

Спасибо. Кроме содержания, ещё и стиль изложения на высоте. Прямо как у хорошей беллетристики.

5
Ответить

Никита, интересную историю затронули!
Но первый же небольшой фактчекинг, из Вашей же последней ссылки показал, что у Вас некорректные выводы/понимание)
Already, Japanese spending on research and development is running at about $25 billion a year, four times the level of a decade ago. That represents 2.4 percent of the nation's gross national product - a percentage equal to the American commitment - and the plan is to raise it to 3 percent.
В статье упоминается, о том, что в целом на R&D Япония тратит порядка 25 миллиардов долларов год. Бегло пролистал, что-то там про 40 исследователей было касаемо именно того, что называют ''artificial intelligence''
Удачи и находите ещё интересные темы)!

4
Ответить

Спасибо за замечание, скорректировал информацию) Действительно, с суммой ошибка вышла, какой стыд 🥲

2
Ответить