Настольный интеллект

Исхитрись-ка мне добыть
То-Чаво-Не-может-быть!
Запиши себе названье,
Чтобы в спешке не забыть!
А не выполнишь к утру —
В порошок тебя сотру,
Потому как твой карахтер
Мне давно не по нутру!
Недавний прорыв нейросети ChatGPT (продвинутый чат-бот на языковой модели GPT-3.5) в полуразумные сущности привлек массовое внимание и вызвал восхищение первых пользователей. Получил некоторые сведения об объеме "того-чего-не-может-быть". Но сначала напомню недавнее
> Как мы выяснили ранее, интеллект невозможно "напечатать с матрицы"
Так уж и выяснили, "я так хочу" — не более того.
А уж про напечатать — даже смешно, скопировать сотню гигабайт уже сейчас не представляет трудности в домашних условиях.
Мозг гроссмейстера во время матчевой партии предельно нагружен — по метаболизму и томографии понятно — значительная часть его интеллекта занята шахматными вычислениями.
Сейчас обычный бытовой писюк играет на уровне чемпиона мира выделяя на эту задачу порядка 10 Гигабайт памяти. Упаковать образ памяти — еще в разы меньше.
То есть существенную часть интеллекта шахматного гроссмейстера можно упаковать в несколько гигабайт. Дополните прочими интеллектуальными задачами, которые у гроссмейстера слабо представлены — по остаточному принципу. Я накинул еще порядок на всякий случай и получил 100 Гигабайт.
А на днях колега kvisaz процитировал
Мнение эксперта о больших языковых моделях
Меня определенно удивили возможности, продемонстрированные большими языковыми моделями. Оказалось, что где-то между 60 миллиардами параметров и 175 миллиардами параметров есть фазовый сдвиг, что делает языковые модели супер впечатляющими.
Наброшенные мной 100 гигабайт тоже лежат в интервале между 60 и 175 миллиардами. Но что такое "параметры" было неясно. В оригинале
somewhere between 60B parameters and 175B parameters
- та же неопределенность. В других публикациях
Архитектура модели GPT −3
Из всего этого "профессионализма" видно, что "параметрами" нейрофилологи ;-) кличут весовые коэффициенты в узлах нейросети. Не мудрствуя лукаво эти коэффициенты - обычные 32- или 64-разрядные числа с плав.запятой - множат на выходные сигналы, тоже числа, т.е. это 4 или 8 байт каждый. Как бы 400..800 Гигабайт, которые при упаковке уменьшатся в разы. Т.е. оценка была реалистичной снизу. Но оценка чего ?
Цитруемая kvisaz'ем беседа начинается с описания "игры Шеннона" - фактически тест намного более сложный, чем тест Тьюринга,
Я также сказал, что компьютеры все еще не очень хороши, и что это понятно: игра «завершена ИИ»: действительно играть в игру «на человеческом уровне» означало бы решить все остальные проблемы ИИ и продемонстрировать человеческий интеллект. . Чтобы понять, почему это так, учтите, что игра влечет за собой завершение любого текстового префикса, в том числе очень длинного, включая диалоги, включая все возможные префиксы разговоров, включая каждое описание опыта, которое может быть выражено человеческим языком, включая каждый ответ на каждый вопрос. которые можно задать по любой теме или ситуации, включая высшую математику, включая философию и так далее. Короче говоря, чтобы хорошо сыграть, нужно понять текст, понять ситуацию, описанную в тексте, представить себя в ситуации, а потом уже реагировать. Это действительно имитирует человеческий опыт и мышление.
Именно в этом свете интервьюируемый и увидел "фазовый сдвиг" (острожно не назвал "прорыв", но явно существенное продвижение).
И тут еще одна арифметическая тонкость. На самом деле 64 бита, и даже 32 для каждого "параметра" - это сильно избыточная точность. Она если и нужна, то в слое, который здесь назван bottleneck - "бутылочное горлышко". В самой большой сети Табл.1 это 12 тыс.узлов, на выходах из которых 12 т*64 (~1 млн.) бит, что по порядку величины подозрительно напоминает словарный запас (точнее - словарь словосочетаний) более-менее начитанного человека "включая каждое описание опыта, которое может быть выражено человеческим языком, включая каждый ответ на каждый вопрос, которые можно задать по любой теме или ситуации, включая высшую математику, включая философию и так далее".
Вообще же сотня миллиардов 64-битных коэффициентов (порядка 1 терабайта) - это явно избыточный объем. В первом приближении бОльшую их часть можно укоротить до 8 бит, т.е. одного байта. Тут конечно потребуется чуток другая арифметика, не классическое умножение-сложение с плав.запятой. Однако и выигрыш о-го-го: 100 гигабайт - это память хоть и большая, однако упихиваемая в ATX корпус силами одного геймера...
Но и это еще не все !
В ячейке "количество слоев" для "продвинутой" сети я увидел 96. И сразу вспомнил статью, с описанием структуры белкового мозга. Это не континуум из нейронов связанных "каждый с каждым". В частности кора состоит из т.н. "колонок", внутри которых собственно нейроны и связаны. И количество слоев в колонке - около 100(*) !
То есть подбирая параметры сети, чтобы работала похоже на человеческий ИИ, разработчики вышли на похожие же численные характеристики структуры.
* Что объясняет и время типичной человеческой реакции. Время срабатывания белковых нейронов одного слоя - 2..3 мс, соответственно результат работы 100 слоев проявляется через 200..300 мс (0.2..0.3 секунды)
|
</> |