All streams
Search
Write a publication
Pull to refresh
53
0
Илья @proxy3d

нейробиология, нейронные сети, AR/VR

Send message

Самое главное в этой модели как раз не сказали. Она построена на SSM архитектуре (противовес трансформерам), позволяет учитывать через механизм внимания неограниченные окном последовательности. Но самое главное, учитывающая ритмы, что ближе к биологии мозга.

Mamba2, как раз построена из SSM блоков.

Hybrid - это архитектура совмещающая глобальный механизм внимания трансформеров и локальные SSM/Mamba (учитывающая ритмы и т.д.)

Все остальное довесок. У mamba2/ssm есть хорошие примеры синтеза. Тут, добавили дополнения сверху. Но в целом это модель msmba2/Hybrid

Whisper очень плохо справляется с распознаваниями. Лучше остальных, но в целом плохо. Я разбирал его и конечно изначально использовал. Он совершенно не справляется с шумной улицей, с быстрой речью и прочими другими вещами. Они как раз много не учли в своей архитектуре, так как изначально делали не на основе мозга (или может частично), а использовали уже отработанные архитектурные решения. Более того, Whisper не способен отслеживать разные узлы речи (а речь является последовательным графом), чтобы можно было перейти например на уровень слогов, или эмоциональных фраз или синтагм или обобщенный смысл или на уровень слов. Он всегда работает на верхнем уровне, обобщая все узлы в общий смысл. Поэтому нельзя нормально прикрутить механизм внимания, который бы мог детализировать речь на разных уровнях. Как это происходит к пример со зрением (для зрения как раз сделали более схожу архитектуру для зрения SwinTransforem).

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

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

В случае хаотичного процесса, в реальности мы не можем предсказать его. Так как не может получить точное состояние всех процессов. Небольшое отклонение на в значениях на какое-нибудь 10^-6 приводит к совсем другим результатам через некоторое время.

Для примера выше градиенты речи (наклон частоты тона при речи). Кажется похож на нормальное распределение (случайный процесс). Но в реальности случайным процессом не является.

https://t.me/greenruff/2021

В плане выбора из множества слов это означает, что:

  • процесс зависит от начальных условий. То есть от сигналов других зон мозга, а они от внешнего воздействия (окружающий мир) и внутреннего (организма).

  • детерминирован. Детерминированная модель позволяет вам точно рассчитать будущее событие, без участия случайности. Хотя из за сложности системы и начальных условий мы этого не можем сделать. С другой стороны мы можем описать часть этих динамических процессов и опираться на свои начальные значения. Что собственно и делает к примеру механизм внимания (описывает механизм одного из процессов)

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

Как LLM может не ошибаться например в этом случае? Когда выбор слова из множества вероятностей на последнем шаге в LLM случайный и зависит от температуры. Это как сидеть у рулетки и удивляться, почему ставил на Zero, а выпало 34 красное.

Описывал тут https://t.me/greenruff/2103

Там же писал, что для начала надо хоты бы добавить глобальный механизм внимания на этом этапе, аналогичный как при предсказании следующего слова. У нас таламус (и не только он) играет огромную роль на выбор слова, увидел яблоко - захотел есть - и во уже выбор слова в сторону "хочет", а не "интересуется" и пошла цепочка в другую сторону. Нет в мозге случайных процессов. Хаотичные есть, случайных нет.

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

Другой подход: задали вопрос и попросили рассуждать шаг за шагом. Затем два вопроса: С чем согласна? С чем не согласна? И так по рекурсии.

Там в статье по ссылке более детально описано про матрицу W, тесты и подробные объяснения. Коротко, он уменьшает объем памяти на хранение, так как W храниться к кэше KV. Была матрица 6 на 6 и занимала 36 ед. памяти. Стала 4*2 и 2*4 и занимает 16 ед. в памяти. Они заменили WHA на MLA и адаптировали под него RoPE.

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

Не понял про LoRA , у нее стандартный механизм внимания через матрицу W. MLA был предложен не так давно.

Нагрузку снижает прежде всего использование другого подхода на уровне архитектуры
https://planetbanatt.net/articles/mla.html

Они изменили W матрицу внимания MHA, на умножение двух матриц W1*W2 (но меньшего размера). То есть W ~ W1*W2 (чем больше rank размерность матрицу W1 W2, тем точнее будет их перемножение). Это позволило за счет rank регулировать объем необходимой памяти. Кроме того, опираясь же на другие исследования, оказалось что более сильный сигнал при обучении формируется первым и соответствует полезной информации, а слабый сигнал формируется позже и относится к шуму. В итоге, уменьшив rank мы теряем часть информации, но сильный сигнал все равно остается, а вот слабый может потеряться. Это означает что:

  • модель меньше ест памяти (а это главная проблема других LLM)

  • умножение матриц это GPU не проблема и так как они меньше исходной, то в итоге все это быстрее

  • потеря исходной шумной информации приводит к тому, что модель быстрее обучается и имеет меньше шумной информации (хотя вероятно может потерять какие-то детали, но не точно). Что означает более быстрое время обучение и выше точность, особенно если сразу скармливать ей точную информацию.

Вот это и есть главное в этой модели. Так как они адаптировали архитектуру под эту оптимизацию.

Я делал как раз когда несколько разных llm рассуждают. Это аналог moe (того же рассуждения deepseek r1), только лучше. Так как сами сетки являются арбитром и решают какой из них лучше.

https://t.me/greenruff/1757

Конечная задача была простой, использовать несколько специализированных LLM, где одна может дать хороший ответ в рамках физики, другая биологии и так далее. И несколько общий крупных вроде бабок на лавочке - ChatGPT и подобных. Чтобы получать ответ охватывающий множество областей.

По сути в процессе получалась цепочка. Ответ реально лучше, даже на слабых сетках. Из минусов только: жрут они очень много и сразу перегружают развернутые llm одним вопросом. Так как например для 10 llm на 8b параметров всего, ответ занял порядка 10-15 минут, при том что обычно это несколько секунд. А уж сколько внутренних запросов у них, это дикий ужас. Но результат гораздо лучше.

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

Так важным моментом было то, что это

1) отсеивали плохие галлюцинации, так как другие модели сразу говорили что это бред

2) оставляла "положительные" галлюцинации, там где модели считали, что в этом есть логика.

Но там надо было экспериментировать, мне было не до этого. Так как есть какое то оптимальное равновесие этой "толпы", чтобы понять сколько надо скептиков (с низкой температурой), сколько творческих (со средней температурой) и сколько шизоидов (с высокой температурой). Бегло тест показывал, что шизоидов из 10 не более 1, но и скептиков тоже плавно распределить, иначе сложно будет получить на какие-то рассуждения.

Хотел попробовать более детально вместо 10-и использовать только 3-и LLM (жрут меньше на тестах и быстрее), но в итоге опубликовал результат теста и пример и решил потом вернутся к этому. Сейчас было бы конечно интересно попробовать подключить туда не просто большие LLM, а сразу рассуждающие типа Deepseek R1. Но думаю что ответ тогда будет день генерироваться. А у меня таких вопросов нет, чтобы столько ждать.

Вчера полез смотреть, в чем именно отличие архитектуры DeepSeek

https://planetbanatt.net/articles/mla.html

Они и вправду неплохо оптимизировали саму архитектуру за счет изменения матрицы механизма внимания через ее разложение(был MHA  стал MLA ). Где в принципе получаются две более простые матрицы. При этом они сделали их сжатие по rank (размеру матрицу), что отчасти приводит к потере информации. Но теряется как раз менее значимая информация, которая как раз ближе к шуму.

А так же совместили это с RoPE для кодирования позиционирования слов.

Так что теперь понятно, почему компании в штатах начали суетится. Дело не в данных и крутизны модели. Данная архитектура должна быстрее обучаться (так как разложение матрицы отбрасывает слабые значения - то есть шум), съедает гораздо меньше памяти и делает больше упор на вычисления GPU вместо ее размера. Это означает более быстрое обучение модели (откидывает шумные данные), меньше требования к памяти видео карт и их мощности.

Все обвязки строятся на том, что LLM знает структуру БД. Я это учитываю конечно и сначала скармливаю ее. Без этого результат еще хуже. Но это не панацея. Как я уже сказал, там несколько проблем на уровне самих LLM.
1) они на больших запросах легко выкидывают детали, особенно после нескольких итераций обработки
2) есть некоторые момент перевода с которыми они просто не справляются и ходят по кругу. Для примера динамические запросы для отчета:
with Roles as (SELECT [SELECT_UNION_BY_NAME] FROM WP_ROLES ts WHERE QMS$DELETED = 0 AND BRANCH_ID = 0 [PARAM_ROLES_FILTER]) select @name = RTRIM(ISNULL@namee, '') + ',[' + [VARS_UNION_BY_NAME] + ']'), @sum_name = RTRIM(ISNULL@sum_namee, '') + ', sum([' + [VARS_UNION_BY_NAME] + '])') [PARAM_VAR] from Roles order by [ORDER_UNION_BY_NAME]

где она не может конвертировать правильно

SELECT string_agg('"' || rservices."SERVICE_NAME" || rservices."SERVICE_ID" || '"', ',') INTO val_name FROM ( SELECT DISTINCT LEFT("S"."SERVICE_NAME", 120) AS "SERVICE_NAME", "S"."SERVICE_ID" FROM "SERVICES" "S" WHERE "S"."QMS_DELETED" AND "S"."BRANCH_ID" = 0 AND "S"."SERVICE_ID" > 0 [SR_SERVICE_ID] ) rservices;

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

И таких проблемных мест очень много там. Так что не верю что там делает LLM. А Миграционные программы из MS SQL в PG я и так использую, которые и без всяких LLM отлично справляются с большой частью данные и заодно еще правильно могут сконвертировать значения некоторых полей. Но вот только он не могут конвертировать хранимые процедуры и функции.

Например тут, при растягивании в слове молоко , вторая О не тянется, так как на уровне звука ЛО это один звук, который мы не может растянуть в данном случае.

https://t.me/greenruff/2007?single

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

На самом деле вы подняли хорошую тему начальной токенизации данных.

У людей там сложнее. Так и буквы и сочетания букв и даже целые слова. То есть все, что встречается чаще всего после обращения звуков в зоне А3 слуховой коры.

Современные модели используют два подхода в основном (если я правильно помню). Они все сводятся к частоте сочетаний букв, по разному правда но итог один и тот же. Но у людей эти сочетания основаны не на тексте, а на связях со звуками. И тут интересно и не до конца понятно. Например, недавно я исследовал речь и оказалось что некоторых "букв" в слове нет, а некоторые звуки это вообще сочетания букв.

Например, я анализировал разное произнесение слова молоко. Оказалось, что в одних случаях есть отдельно звук М и О или Л и О, а в других есть отдельный звук МО и отдельный ЛО. То есть на уровне звука их нельзя разбить на буквы. То есть формально, это должны быть отдельные буквы. Но мозг их связывает с последовательностью М - О. То есть не считает их отдельными буквами, а считает их двумя буквами МО/ЛО.

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

Делал не так давно разбор, как появился тональный и нетональный язык.

https://t.me/greenruff/2034?single

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

Но изначально тональный язык был про:

  • Передачу сигнала в водной среде

  • Для быстрой передачи сигнала на суше, так как использование тона для одного слова позволяет ускорить передачу сигнала

  • Нетонический сигнал, так же был связан со средой и послужил основой для многообразия сложности языка и грамматики. И упор на точность передачи информации, чем на ее скорость.

  • В основе лежит механизм оптимизации затрат энергии на артикуляцию.

Сколько я использую разные LLM, пока ни одна не может нормально справиться со сложными SQL. Хуже только то, что они забывая контекст начинают выкидывать из него детали (какое то сравнение или условие в WHERE и так далее). Ну и самое главное - они справляются с простыми запросами. Тут либо Uber в отчетах врет и хотелось бы посмотреть конкретные примеры и разборы от их разработчика. Либо там SQL очень простой без сложных запросов и хранимых процедур (в чем я сомневаюсь).

Я сейчас мигрирую с Microsoft SQL Server на PostgreSQL, и могу сказать что LLM на сложных запросах безумно тупят. Вы получите на выходе совсем не то, что было изначально. Опять же речь про сложные процедуры с кучей деталей. К простым вопросов нет. То есть когда идут отличия на уровне SQL команд, вот тут начинается сложность и LLM совсем не справляются, даже если указывать им возвращаемые ошибки. И я говорю про сильные LLM.

Почему LLM выбирают слова случайно, а мозг – осознанно?
Почему LLM выбирают слова случайно, а мозг – осознанно?

Только сегодня как раз закончил описывать в чем ОДНА из проблем галлюцинаций LLM https://t.me/greenruff/2090

Разбирал работу таламуса и там как раз связи привели к тому, что в LLM выбор слова происходит случайно через top-k/nucleus sampling, а в мозге через механизм внимания. Где модуляция сигнала происходит от ядер таламуса (фильтрация важной информации) и ряда зон мозга. То есть выбор слова из множества не случайный, а зависит от того какое слово в множестве будет усилено.

Странно, что я раньше не додумался до такого очевидного. Только когда буквально по клеткам и связям досконально разобрал сигналы. Хотя сейчас это кажется очевидным. Ведь новое слово выбирается на основе механизма внимания. Так почему конкретное слово из этого множества должно опираться только на диапазон вероятностного распределения, который задается температура? Нет и не должно там быть случайного выбора. Все тот же механизм внимания, только теперь не к выбору последовательности слов, а к конкретному слову из множества слов на выбор. Пришел сильный сигнал от эмоциональной нейронки? Значит выбор будет в пользу эмоционального слова. Пришел выбор от зрительной? значит выбор будет в пользу слова близкого к зрительному образу и так далее. Зависит от того какие дополнительные модели (зоны мозга) будут оказывать влияние на выбор механизма внимания при выборе слова из множества.

В мозге есть механизм, аналогичный обратного распространения ошибки. Так как это просто механизм минимизации энтропии. Весь мозг механизм на том, чтобы минимизировать энтропию.
1) Ингибирующие интернейроны - через механизм торможения и усиления, влияют локально и глобально на различные нейроны. Модулируя их сигнал и влияя на него. Так же там есть специальные клетки, которые доставляют питание. И они нацелены минимизировать затраты на энергопотребление, чтобы снизить энтропию.

2) в мозге все кишит механизмом обратной связи. В нем есть и аналоги dropout или batch normalization. При чем именно dropout или batch normalization - это урезанные версии биологических механизмов. Я сейчас заменяю некоторые механизмы в некоторых зонах на их урезанные аналоги в виде dropout.

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

Я уже молчу про то, что в нейронках пока не реализованы релейные нейроны. Это особые нейроны, которые могут переключаться в два режима под воздействием механизма внимания. Первый обычный и второй импульсный. Эти нейроны, в отличие от привычным нам - не искажают сигнал. То есть он был на входе 1, и на выходе он будет 1. 1 -1 -1- 1 - 1 (а у обычных нейронов тут будут веса). У него особенность в том, что механизм внимания (Ингибирующие интернейроны) усиливают или ослабевают сигнал и получаем например так 1 - 1 - 1 - 0.5 (торможение сигнала) - 0.5 - 0.5.. Этот механизм играет огромную роль, так как играет роль фильтра. Это Таламус. Второй его особенностью является импульсный режим, когда он усиливает сигнал за счет его повторения был 1 и стал 1 1 1 1 при этом за то же самое время. Это позволяет мозгу обратить внимание на данный сигнал. А так же создает тета ритму ( 1 1 1 1 это 4 сигнала на время T) и гамма ритмы - повторение тета ритмов. А ритмы играют важную роль в сихронизации данных и выделении важных фрагментов (то что сделано в трансформерах на уровне выделения ключевых слов - это те самые ритмы через косинусы и синусы задающие позицию на вход в трансформер).

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

В реальности, самые крутые нейросети по работе с изображениями копируют работу биологии. Просто у них нет ограничений размеров, энерго-эфективности. Например, Swin Trasformer реализует пространственную графовую модель механизма внимания, как это сделано у людей. Механизм внимания - attention, так это основа всех биологических слоев. Ингибирующие интернейроны, это клетки модулятора. Это и есть механизм внимания. Он не изменяет сигнал напрямую. а модулирует его через торможение или усиление.. Выступает в роли регулятора.
Он модулирует активность нейронов, усиливая или ослабляя их реакцию на определенные входы за счет влияния на апикальные дендриты пирамидальных клеток.

Таким образом- информация не уничтожается не убирается, но отдельная важная усиливается или ослабляется.

Тоже самое касается самих трансформеров в целом. Там можно все механики разобрать и показать как они копируют биологические.

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

Можно убрать какие то зоны. Можно улучшить какие-то, так как они все развиваются по нескольким сценариям. Так как мы не ограничены тут физическими размерами зон мозга и энергоэффективностью. Но сами механики, все равно остаются те же самые.

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

Поэтому я указал на разницу в самом механизме. Который говорит о том, что сетки еще долго будут развиваться. То что у них есть задел в итоге обойти человека по всем параметрам - это да. Вопрос в энергоэффективности только.

Например, я сейчас переношу на нейронные сети архитектуру кохлеарного ядра. Оно первично у слуха, и выделяет закономерности в интенсивности сигнала. Позволяя усиливать/ослаблять интервалы, выделять паузы. помогает дальше для определения в пространстве истопника звука (в других зонах). И вот уже буквально тут есть архаичная реализация зоны VCN и DCN. VCN - для анализа низких частот, а DCN высоких частот. DCN немного сложнее, требует больше ресурсов, так как ее задача как раз помогать определять сигнал в пространстве по интенсивности. На ней основана эхолокация. У человека DCN слабо развита, не было потребности. А VCN вообще очень простая, так как требовалось лишь быстро сделать анализ интенсивности самым простым способом. Мозг не развивал у людей, так как нет потребности и нет места для роста этого участка (не в ущерб другим зонам). У нейронных моделей таких ограничений нет, и можно сразу эту часть проектировать сложной, на уровне эхолокации. Что позволяет искусственному слуху лучше распознавать не только речь, но звуки, которые он до этого не слышал (звуки эхолокации дельфинов, летучих мышей, сов).

Так что, нейронные сети будут развиваться и вероятно в будущем обойдут людей по всем параметрам. Но, при рассмотрении механизмов работы зон мозга и LLM, последние пока реализовали лишь несколько базовых вещей. Важных, но не достаточных для возведения их пока на Олимп.

Здесь дело не первом попавшемся ответе.

У человека есть механизм разделения на локальные и глобальные маршруты. Когда вы просите быстро ответить, то лимбическая система доминирует (сильное волнение) и выдаётся ответ локального маршрута (эмоциональная , сигнальная речь).

Для генерации глобальных маршрутов мозгу нужно больше времени и дофамин (мотивация), который усиливает переключение на глобальные маршруты. Которые как раз и связаны с глубокими знаниями человека, связью различных зон мозга.

В случае LLM, причина другая. У нее всегда глобальные маршруты. (Сейчас пробуют сделать аналог через longformer). И причина llm, в том что она случайно выбирает вариант. В то время как у человека это вариант не случайный, а зависит от влияния других зон мозга или лимбической системы. Получается такая хаотичная система, но не случайная. Хаотичная, потому что предсказать ее нельзя (мы не знаем все состояния сигналов в мозге). Но при этом, и не случайная, так как значение лежит в определенном пространстве вариантов возможных связей с другими зонами мозга.

Так что разница тут огромная , хотя результат кажется схожим.

Пока не будет доработан механизм внимания.

https://t.me/greenruff/2078?single

Говорить о следующем шаге мало смысла.

Так же , речь подобно зрению имеет графовую структуру, но последовательную. Я недавно проводил исследования, пытаясь связать паузы с когнитивными способностями речи, но провал. Зато оказалось, что речь имеет графовую модель, чего сейчас нет у современных LLM.

https://t.me/greenruff/2064?single

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

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

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity