the last neural cell
1.14K subscribers
91 photos
8 videos
14 files
116 links
we write about BCI, AI and brain research.

authors:
@kovalev_alvi - visual neural interfaces - UMH, Spain | CEO of ALVI Labs
@Altime - comp neuro phd @ GTC Tübingen

Our chat: @neural_cell_chat
Download Telegram
LLM_interpretability_AI _summary.pdf
71.2 KB
Over the past time I collected some interesting mechanistic interpretability papers - trying to understand the information processing in AI systems.

Since I'm not an expert, I delegated some of the work to AI itself 🙃

Why I find it interesting? Well, the field of "AI neuroscience" is emerging. This, firstly, brings two fields closer together (neuroAI doesn't count). Second, I believe both understanding of AI and the brain can be advanced by testing theories on the systems where everything can be measured and controlled.

Of course, LLMs are far from natural biological nervous systems, but I believe there are fundamental information processing principles that are shared.

💡Some insights:
> Activations in RNNs mirror the statistics of their input data
> Apparently chunking of computations is present akin to brain's hierarchical processing
> "Grandmother cell" are real but sparse, distributed processing is more likely to be happening

Have a look, it's fun 🙂
4🔥2🤓2
This media is not supported in your browser
VIEW IN TELEGRAM
Helix: A Vision-Language-Action Model for Generalist Humanoid Control

Figure сегодня показала своих роботов с новой системой управления. Обязательно посмотрите их отчёт - очень интересно! Видео взял прямиком из твиттера)

Technical report:
https://www.figure.ai/news/helix
5🔥6🤯21
Forwarded from rizzearch
World and Human Action Models towards gameplay ideation

вот и майкрософт, как оказывается, год назад уже смогли зафигачить модель мира на основе мультиплеер пвп bleeding edge от ninja theory (оказывается помимо devil may cry & hellblade они еще вот такое делали). но почему-то решили это отправить nature а не на архив по классике

собрали 28 террабайт датасета траекторий игроков (полмиллиона игровых сессий, 1.4B фреймов при 10Гц, 7+ лет реального времени, еще отфильтровали под конкретную карту примерно год по объему)

обсервейшны (картинки) 300х180х3 и действия маппят в одно и то же пространство токенов, при том для первых обучают сначала ViT-VQGAN в 300м параметров на реконструкцию и perpectual лоссы, а потом и добавляют ган обжектив непосредственно. в качестве ворлд модели выступает отдельный каузальный трансформер который моделирует последовательность токенов обсервейшнов и действий (в качестве них кстати выступают сигналы с контроллеров хбокс геймпада)

назвали это WHAM - World and Human Action Model

самый большой трансформер смогли натренить размером в 1.6B что не оч много но при этом довольно классные на глаз результаты получились (с учетом маленького разрешения фреймов). и присутствует то, что авторы называют persistency, diversity, consistency: генерации соответствуют игровой механике и более-менее геймер интерфейсу, они получаются разнообразными и способны адаптироваться под нововведенные объекты посреди инференса (например если добавить врага или какой-то игровой объект то очень естественно произойдет с ними взаимодействие)

насчет последнего так же они еще релизнули WHAM Demonstrator - как я понял это своеобразная гуишка, которая позволяет удобнее производить такие интервенции в момент генерации + смотреть на каких фреймах может происходить расхождения по разным сценариям с одинакового начального картиночного промпта (то что относится к диверсити)


paper

weights

dataset 75гб


P.S. у нас еще есть другие посты про модели мира - [1] [2] [3]
3🔥2
📚A collection of papers & tools on dynamical systems and deep learning

https://github.com/yantijin/dynamic-systems-DL

It's divided into the following topics:

Differential Equations in Deep Learning

General Architectures
Neural ODEs (ordinary diff. eq.)
Neural SDEs, CSDEs, CDEs...
Normalizing Flows
Applications

Energy based models

Hamilton
Applications
Lagrange

Deep Learning Methods for Differential Equations

Solving Differential Equations
Learning PDEs
Applications
Model Discovery

Deep Control

Model-Predictive-Control

Dynamical System View of Deep Learning

Recurrent Neural Networks
Theory and Perspectives
Optimization
Signals and systems

Software and Libraries

Python
Julia

Websites and Blogs

----
16
ALVI Interface: Towards Full Hand Motion Decoding for Amputees Using sEMG

Мы решили выложить детали нашего интерфейса для людей с ампутацией. Этой работой я очень горжусь и хочу всех поблагодарить за очень крутой результат!

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

Что за система управления?

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

Что сделали, чтобы приблизиться к цели?

1. Использовали 8 электродный браслет для записи мышечных сигнала(EMG)
2. Разработали приложение для виртуальных очков - это позволило нам записывать много данных.
3. Обучили трансформер предсказывать движения пальце по активности мышц,
4. Реализовали быструю систему калибровки интерфейса "на лету", чтобы человек мог видеть результаты и повторять наиболее сложные жесты. Связали очки вр, с компом, с браслетом и с сервером.

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

Видео: https://youtu.be/Dx_6Id2clZ0?si=E4Cw8TTZG2opkdZg

Статья https://arxiv.org/abs/2502.21256v1

Прошлый пост: https://t.me/neural_cell/135
🔥1363
Low-rank RNNs are thought to underly neural manifolds (see works of Ostojic and Langdon), which in turn are linked the population coding of behavioral variables. So this short article about low-rank RNNs might be useful to get familiar with the theoretical basis.

I made a separate post on manifolds underlying neural activity, mostly to show that it's still a hot topic in neuro research.
🤓2
Forwarded from the Turing Machine
Low-rank RNNs in ten minutes

Artificial neural networks are super cool. They are known for all sorts of computational prowesses, and they also happen to model brain processes quite well. Among artificial neural networks, there are recurrent neural networks (RNNs), which contain a pool of interconnected neurons, whose activity evolves over time. These networks can be trained to perform all sorts of cognitive tasks, and they exhibit activity patterns that are quite similar to what is observed in many brain areas... [ Read more ]

A post by Adrian Valente

Follow: @theTuringMachine
🤓5
Разбираемся в генеративных моделях: diffusion

Сейчас почти на каждом шагу можно встретить много разных генеративных моделей. Самый яркий пример — text-to-image/video модели, которые по текстовому описанию генерируют картинку или видео. Давайте погрузимся в термины diffusion и flow matching и разберемся, как это всё работает верхнеуровнево.

Предыстория и контекст

DDPM (Denoising Diffusion Probabilistic Models) стала одним из главных открытий в 2020 году. После этого ученые всерьез начали заниматься диффузиями и немного забросили работы по GAN, хотя их было очень много в то время.

Я прекрасно помню тот момент. Я работал в Huawei над улучшениями качества картинок, и в соседних командах потихоньку люди начинали обращать внимание на normalizing flows и diffusion. Мы тогда обучали U-Net подобные архитектуры и не отвлекались ни на что другое.

Проблема генерации данных

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

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

А как же быть с многомерными картинками? Ответ — никак, но... Невозможно получить распределение картинок, но можно его как-то попытаться смоделировать/аппроксимировать.

Основная идея диффузионных моделей

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

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

Что особенного в диффузии?

Главное отличие заключается в том, что мы трансформируем шум в данные в несколько шагов, вместо одного. То есть мы учим нашу модель двигаться постепенно. Вот тебе 1000 шагов — потихоньку превращай шум в картинку.

И это работает просто и хорошо! Решаются проблемы VAE с размытостью генераций и GAN с нестабильным обучением. Да, процесс стал медленнее, но взамен мы получили стабильность и качество, а сам процесс обучения стал значительно проще.

Как это работает более подробно

В DDPM есть два процесса, прямой и обратный:
- В прямом мы зашумляем картинку, постепенно превращая в шум
- В обратном мы постепенно расшумляем, превращая в картинку

Существуют разные расписания шума, которые влияют на скорость и качество генерации.

Как мы учим модель расшумлять данные

def ddpm_train_step(self, x0):
"""
x0 - исходные данные
"""
batch_size = x0.shape[0]
# Выбираем случайный шаг времени
t = torch.randint(0, timesteps, (batch_size, 1))
# Добавляем шум к исходным данным
x_t, target_noise = add_noise(x0, t)
# Модель предсказывает добавленный шум
predicted_noise = model(x_t, t)
# Учим модель предсказывать правильно
loss = F.mse_loss(predicted_noise, target_noise)
return loss


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

Заключение
Надеюсь было полезно. Для более глубокого погружения - читаем отличный гайд на 80 страниц.

Tutorial on Diffusion Models for Imaging and Vision

В следующий раз поговорим про еще более простой способ.
5🔥832🤓1
Разбираемся в генеративных моделях: Flow matching

Помните, в прошлый раз мы разбирали DDPM, где нужно было делать 1000 шагов для генерации? А что если я скажу, что можно сделать всё то же самое, но в разы проще и быстрее?

Сегодня поговорим про flow matching в его самой простой форме - linear interpolation. Если DDPM показался вам сложным, то тут вы офигеете насколько всё просто.

В чём основная идея? Вместо того чтобы учить модель убирать шум пошагово (как в DDPM), мы учим её находить прямой путь от шума к картинке. Да-да, просто рисуем линию из точки А в точку Б!

Как это работает:

1. Берём шум и настоящую картинку
2. Случайно выбираем точку между ними (это наше t)
3. Просим модель предсказать в какую сторону двигаться из этой точки

И всё! Вот честно - это весь алгоритм. Смотрите какой простой код для обучения:

def train_step(self, x0):
batch_size = len(x0)
z = torch.randn(batch_size, self.dim).to(self.device)
t = torch.rand(batch_size, 1).to(self.device)
xt = (1 - t) * z + t * x0 # линейная интерполяция между шумом и картинкой
pred_field = self.vector_field(xt, t)

true_field = x0 - z # вот оно - направление от шума к картинке
loss = F.mse_loss(pred_field, true_field)
return loss # возвращаем loss, а не x


А генерация ещё проще - просто идём маленькими шажками в нужном направлении:

def sample(self, batch_size=64, steps=100):
dt = 1.0 / steps
x = torch.randn(batch_size, self.dim).to(self.device)
for i in range(steps):
t = torch.ones(batch_size, 1).to(self.device) * i * dt
v = self.vector_field(x, t)
x = x + dt * v
return x


А теперь самое интересное - то что мы тут делаем, по сути решаем обычный дифур!

Наш vector_field это просто производная dx/dt, а в sample мы используем метод Эйлера для решения этого дифура. И тут открывается целое поле для экспериментов - можно использовать любые солверы: Рунге-Кутту, multistep методы и прочие штуки из мира численных методов.

В общем берите любой солвер из scipy.integrate и вперёд! Некоторые из них позволят ещё сильнее уменьшить количество шагов при генерации.

Главные преимущества по сравнению с DDPM:

- Не нужно возиться с расписаниями шума
- Процесс полностью детерминированный (мы же просто решаем дифур!)
- Генерация работает в разы быстрее
- Код настолько простой, что его можно написать за 5 минут

Я сам офигел когда первый раз это запустил - на многих задачах качество получается сравнимое с DDPM, а кода в три раза меньше.

Единственный небольшой минус - модель иногда бывает менее стабильной при обучении, т.к. нет стохастичности как в DDPM. Но это решается правильным подбором learning rate.

Flow Matching Guide and Code: https://arxiv.org/pdf/2412.06264
5🔥421
Давайте я тоже выйду из тени, следуя примеру Александра 👋

Я на обеих фотках справа, это мы забавно поймали Joscha Bach после конференции в моём городке в Германии.

Меня зовут Алексей Тимченко, мы учились вместе с Сашей на программе "Когнитивные науки и технологии" ВШЭ. Там и зародилась идея писать разборы статей и посты, совмещая наши интересы в ИИ и нейронауках.

Сейчас нас разбросало по миру: я осенью закончил вторую магистратуру (уже по вычислительным нейронаукам) в Тюбингене и начал свой PhD в молодом институте Hertie institute for AI in brain health, а Саша разрабатывает vision BCI в Испании.

Во всей этой движухе мной движут вопросы фундаментальной науки. При всей полезности приложений, мне интересно понимать как конкретно устроены объекты, которые мы изучаем. В частности, до PhD я занимался тем как спайки и мозговые ритмы взаимодействуют между собой (фотка с FENS 2024 как раз про это). А в общности, я хочу понимать как динамика мозговых процессов опосредует вычисления, необходимые для выживания. Помимо этого, мне интересно всё смежное: сознание и подходы к нему через естественные науки и философию, BCI, эмерджентность в AI, агентность и модели мира в predictive coding.

Начинаем с малого, однако - с обработки зрительной информации. Во время PhD я постараюсь понять как геометрия естественных стимулов отражается в активности последующих структур: retina, thalamus, superior colliculus и V1. Для этого я буду работать в парадигме computation through low-dimensional dynamics и изучать вызванную стимулами динамику во всех перечисленных структурах. Думаю, придется основательно засесть за топологию и дифф. геометрию, чтобы охарактеризовать эти самые надоедливые нейроманифолды 😵‍💫

Путь интересный и непроторенный, так что буду писать о рандомных вещах в канал. Кстати, дайте знать, насколько интересны разборы фундаментальных концептов и теорий, я люблю погружаться в такие кроличье норы
🔥3284🦄2
Berkeley developed a streaming “brain-to-voice” neuroprosthesis which restores naturalistic, fluent, intelligible speech to a person who has paralysis.

Researchers adopted streaming transducer techniques similar to methods used by popular ASR methods like Siri or Alexa, and repurposed them for personalized brain-to-voice synthesis.

This approach resulted in significant improvements in the decoding speed of the brain-to-voice neuroprosthesis compared to prior approaches with longer delays.

Researchers also show continuous long-form brain-to-voice synthesis, robustness to model-generated auditory feedback, and out-of-vocabulary brain-to-voice synthesis.
🔥71
Introduction | Smart stimulation patterns for visual prostheses

Я уже рассказывал, что начал работать над визуальными кортикальными имплантами. В этой области долгие годы используются одни и те же стандартные паттерны стимуляции — обычно 10-50 импульсов через несколько электродов за 100-200 мс. Такой подход далек от естественной активности мозга, но стабильно вызывает фосфены.

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

Я подготовил обзор четырех важных статей в этой области.

Towards biologically plausible phosphene simulation — использует in silico модель V1 коры для создания дифференцируемого симулятора фосфенов.
https://doi.org/10.7554/eLife.85812

Human-in-the-Loop Optimization — на синтетических данных ретинальных протезов разработан метод сжатия тысяч параметров стимуляции до 13 через байесовскую оптимизацию.
http://arxiv.org/abs/2306.13104

MiSO: Optimizing brain stimulation — на реальных записях Utah-массива (96 электродов) из PFC макаки создана система предсказания нейронных состояний от мультиэлектродной стимуляции.
https://openreview.net/forum?id=Gb0mXhn5h3

Precise control with dynamically optimized electrical stimulation — на ex vivo сетчатке мыши разработан алгоритм временного дизеринга( стимуляруем с небольшими задержками)
https://doi.org/10.7554/eLife.83424

Следующий пост будет с review. https://t.me/neural_cell/271
5🔥3
Review | Smart stimulation patterns for visual prostheses

🔘Towards biologically plausible phosphene simulation

tl;dr: Differentiable PyTorch simulator translating V1 stimulation to phosphene perception for end-to-end optimization
- Fully differentiable pipeline allowing optimization of all stimulation parameters via backpropagation
- Based on many experimental data.
- Bridges gap between electrode-level stimulation and resulting visual perception

link: https://doi.org/10.7554/eLife.85812

🔘Human-in-the-Loop Optimization for Visual Prostheses

tl;dr: Neural encoder + Preference bayesian optimization.
- Train deep stimulus encoder (DSE): transform images -> stimulation.
- Add "patient params" 13 values as additional input into DSE.
- Uses Preferential Bayesian Optimization with GP prior to update only "patients" params using only binary comparisons
- Achieves 80% preference alignment after only 150 comparisons despite 20% simulated noise in human feedback

link: https://arxiv.org/abs/2306.13104

🔘MiSO: Optimizing brain stimulation for target neural states

tl;dr: ML system that predicts and optimizes multi-electrode stimulation to achieve specific neural activity patterns
- Utah array on monkey PFC
- One-two electrode stimulation with fixed frequency/amplitude
- Collect paired (stim, signals) data across multiple sessions
- Extract latent features using Factor Analysis (FA)
- Align latent spaces across sessions using Procrustes method
- Train CNN to predict latent states from stim patterns
- Apply epsilon-greedy optimizer to find optimal stimulation in closed-loop

link: https://www.nature.com/articles/s41467-023-42338-8

🔘Precise control with dynamically optimized electrical stimulation

tl;dr: Temporal dithering algorithm exploits neural integration window to enhance visual prosthesis performance by 40%
- Uses triphasic pulses at 0.1ms intervals optimized within neural integration time window (10-20ms)
- Implements spatial multiplexing with 200μm exclusion zones to prevent electrode interference
- Achieves 87% specificity in targeting ON vs OFF retinal pathways, solving a fundamental limitation of current implants

link: https://doi.org/10.7554/eLife.83424

my thoughts
The field is finally moving beyond simplistic zap-and-see approaches. These papers tackle predicting perception, minimizing patient burden, targeting neural states, and improving power efficiency. What excites me most is how these methods could work together - imagine MiSO's targeting combined with human feedback and efficient stimulation patterns. The missing piece? Understanding how neural activity translates to actual perception. Current approaches optimize for either brain patterns OR what people see, not both. I think the next breakthrough will come from models that bridge this gap, perhaps using contrastive learning to connect brain recordings with what people actually report seeing.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥21🤯1🤓1
the last neural cell pinned «Introduction | Smart stimulation patterns for visual prostheses Я уже рассказывал, что начал работать над визуальными кортикальными имплантами. В этой области долгие годы используются одни и те же стандартные паттерны стимуляции — обычно 10-50 импульсов…»