AIERA FrontiersAIERAFrontiers
Все статьи

Как построить карту смысла: проблема семантических полюсов. Часть 2 из 3

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

AIERA Frontiers8 августа 2026 г.12 мин

Ключевые тезисы

  • Семантическая карта не может быть заранее заданным словарём понятий: полюс, привязанный к слову, даёт улучшенный словарь; полюс, привязанный к устойчивой конфигурации представлений, даёт карту, работающую независимо от формулировки.
  • Vector quantization решает проблему дискретизации, но сам по себе не создаёт семантическую структуру: codebook может отлично сжимать представления и при этом не иметь ничего общего с понятиями — нужен тест на семантичность.
  • Двойная проверка карты: одинаковый смысл сохраняется при изменении формы, разный смысл разделяется при сохранении формы; плюс тесты на иерархию, перенос, редактирование и абляцию Layer 1.
  • Дискретный выбор ломает обучение — приходится использовать straight-through estimator, commitment loss и скользящее обновление; главные риски: коллапс (слишком много состояний на один полюс) и мёртвые полюса (из 65 536 используются тысячи).
  • Карта должна платить за себя: полюс — часть вычислительного механизма, а не визуализация; компромисс стабильности и пластичности решается иерархией полюсов (Layer 1/2/3); следующая часть — что делать, когда карта противоречит памяти, и почему это проблема времени.
Аудиоподкаст статьи
aierafrontiers.com/ru/article/semantic-meaning-part2

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

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

Но нарисовать карту просто. Гораздо труднее заставить систему построить её самостоятельно — и сделать так, чтобы эта карта отражала структуру данных, а не превратилась в ещё один набор скрытых векторов с красивым названием.

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

Здесь заканчивается архитектурная схема и начинается инженерия.

Главная идея Семантическая карта не должна быть заранее заданным словарём понятий. Она должна возникать из устойчивых конфигураций представлений и сохранять их между разными формулировками и контекстами.

Карта не даётся заранее

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

кошка       → pole_001
собака      → pole_002
автомобиль  → pole_003

Но такая система почти сразу упирается в ограничение. Человеческие понятия не образуют фиксированный словарь. Одно слово обозначает разные вещи. Разные слова — практически один объект. А одно понятие состоит из подпонятий, которые в одном контексте нужно считать единым целым, в другом — различать.

Возьмём слово «ключ». Физический ключ от двери. Ключ в криптографии. Ключ в базе данных. Ключ музыкального произведения. Ключ как объяснение некоторого вопроса. Если заранее создать один полюс KEY, он окажется слишком грубым. Если создать отдельный для каждого значения — кто решает, где заканчивается одно и начинается другое?

Семантическая карта не может быть словарём. Она должна возникать из самой динамики представлений.

Что представляет полюс

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

Представим, что модель много раз встречает ситуации: человек намеренно меняет состояние объекта с помощью инструмента. Конкретные предложения совершенно разные, но за ними возникает похожая структура отношений. Если она достаточно устойчива, система может сформировать вокруг неё координату.

Такой полюс означает не слово «действие», а устойчивый паттерн отношений. Это принципиально. Если полюс привязан к слову — мы строим улучшенный словарь. Если привязан к конфигурации представлений — появляется карта, работающая независимо от формулировки.

Семантический полюс — не слово, а устойчивая конфигурация представлений
Рис. 1. Семантический полюс — не слово, а устойчивая конфигурация представлений

Но ближайший вектор ничего не гарантирует

Формально всё выглядит знакомо. У нас есть скрытое представление z и набор обучаемых векторов p₁, p₂, …, p_K. Система выбирает ближайший:

z → argmin ‖z − pᵢ‖² → pᵢ*

Это vector quantization. Идея не новая.

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

И вот здесь появляется проблема. Представим, что после обучения мы смотрим на полюса и обнаруживаем: один соответствует «предложениям длиной от 12 до 17 токенов, содержащим числительное». Другой — «текстам, в которых часто встречается двоеточие». Третий — «определённой статистической комбинации синтаксических признаков».

С технической точки зрения всё работает. Семантической карты при этом нет.

Нужно отличать кластеризацию от семантической организации. И для этого нужен тест.

Важно Vector quantization решает проблему дискретизации, но сам по себе ещё не создаёт семантическую структуру. Codebook может прекрасно сжимать представления и при этом не иметь ничего общего с понятиями, которые мы хотим в нём видеть.

Как проверить, что карта действительно семантическая

Один критерий — устойчивость при перефразировании. Два очень разных выражения, описывающие одну ситуацию, должны активировать близкие полюса.

«Самолёт задержали из-за сильного снегопада».
«Из-за метели рейс пришлось перенести».

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

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

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

Таблица 1. Как проверить, что карта действительно семантическая

ТестЧто проверяемОжидаемое поведение картыЕсли тест провален
ПерефразированиеУстойчивость смысла к изменению формыБлизкие формулировки активируют тот же или близкий полюсКарта кодирует форму текста, а не смысл
Контекстное разделениеРазличение омонимов и многозначных слов«Ключ от двери» и «криптографический ключ» попадают в разные областиКарта слишком грубая или не учитывает контекст
Иерархия понятийСвязи между уровнями абстракции«Такси» связано с «автомобилем» и «транспортом», но не сводится к нимКарта является плоским codebook
ПереносИспользование уже сформированной структурыНовая задача использует существующие полюса, а не создаёт новые для каждой формулировкиПолюса не выполняют функцию устойчивых координат
РедактированиеОтделение семантики от изменяемого знанияИзменение факта не требует перестройки картыКарта хранит факты вместо структуры представлений
Абляция Layer 1Реальную полезность картыУдаление семантического слоя заметно ухудшает хотя бы часть задачПолюса выполняют декоративную функцию

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

Предположим, два состояния очень близки. Где заканчивается один концепт и начинается другой?

автомобиль
автомобиль с водителем
такси
такси бизнес-класса
транспорт
общественный транспорт

Это не набор независимых категорий. Здесь иерархия, частичное совпадение, контекст. Для одного вопроса «такси» — автомобиль. Для другого — коммерческая услуга. Для третьего — элемент транспортной системы.

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

«Кошка» и «мышь» могут быть близки по контексту употребления, но одно не является разновидностью другого. «Автомобиль» и «двигатель» постоянно встречаются вместе, но находятся в отношении часть–целое. Одной евклидовой геометрии недостаточно. Карте нужны не только координаты, но и отношения между ними.

Дискретный выбор ломает обучение

До сих пор всё выглядело относительно спокойно. Но теперь системе нужно выбрать один из K полюсов, а операция выбора недифференцируема. Если выбор изменился с полюса 137 на полюс 138, между ними нет плавного перехода.

Нейросеть привыкла получать сигнал: «измени параметр немного в эту сторону». Дискретный выбор отвечает: «либо этот, либо другой». Градиент на скачке равен нулю почти везде. Обучение ломается.

Приходится использовать приближённые методы.

Straight-through estimator. На прямом проходе система делает настоящий дискретный выбор. При обратном распространении ведёт себя так, будто операция была непрерывной, и пропускает градиент сквозь. Это не точный градиент дискретной операции — это инженерное приближение, позволяющее оптимизатору двигаться в системе с дискретным выбором. Сам по себе он не гарантирует, что сформированные коды семантические. Он лишь делает обучение возможным.

Commitment loss. Если скрытое состояние выбрало полюс, его дополнительно подтягивают к этой точке. Иначе модель научится использовать полюса формально, передавая почти всю информацию через непрерывный канал. Тогда дискретный слой будет присутствовать на схеме, но не участвовать в вычислении. Архитектурно слой существует. Функционально его нет. Это один из самых опасных сценариев.

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

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

Поэтому семантическая карта не заменяет непрерывное представление. Она его координирует. Полюс фиксирует опору. Непрерывное состояние сохраняет нюансы. Именно поэтому в первой статье мы разделили Layer 1 и Layer 2.

От непрерывного пространства представлений к дискретной карте полюсов
Рис. 2. От непрерывного пространства представлений к дискретной карте полюсов
Принцип Полюс должен фиксировать координату, а не уничтожать контекст. Дискретная карта и непрерывное представление должны работать вместе, а не конкурировать друг с другом.

Мёртвые полюса

Пусть у нас 65 536 полюсов. Распределение данных неравномерно. Некоторые области встречаются постоянно, другие крайне редко. Через некоторое время:

pole 001 → 18 400 000 активаций
pole 002 → 12 700 000
...
pole 48192 → 3
pole 48193 → 0
pole 48194 → 1

Часть полюсов практически перестала участвовать. Мы можем написать на схеме «65 тысяч семантических координат», но фактически используются несколько тысяч. Иллюзия ёмкости.

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

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

Классическая проблема continual learning: как научиться новому, не разрушив старое. Для семантической карты она особенно остра, потому что карта должна быть стабильнее текущего контекста. Иначе она превращается в ещё один быстро меняющийся скрытый слой.

Возможно, карте нужен разный темп жизни. Быстрый уровень реагирует на контекст текущего диалога. Средний адаптируется к локальным сдвигам. Медленный хранит устойчивые семантические координаты. Разные типы информации требуют разной скорости обновления.

Семантическая карта между стабильностью и пластичностью
Рис. 3. Семантическая карта между стабильностью и пластичностью

Таблица 2. Инженерные проблемы семантических полюсов

ПроблемаЧто происходитВозможный механизмГлавный риск
Дискретный выборНельзя напрямую передать обычный градиент через выбор полюсаStraight-through estimatorПриближённый градиент может вести к нестабильному обучению
CollapseСлишком много состояний притягиваются к одним полюсамCommitment loss, ограничения на использование картыПотеря различий между понятиями
Мёртвые полюсаЧасть координат почти никогда не активируетсяПереинициализация по областям плохого покрытияРазрушение уже сформированной структуры
DriftПолюса слишком быстро перемещаются вслед за даннымиМедленное обновление, EMAПотеря устойчивых координат
Катастрофическое забываниеНовые данные изменяют старую картуРазные темпы обновления, защита стабильных полюсовНовое знание вытесняет старое
Пограничные состоянияОбъект одновременно близок к нескольким понятиямSoft assignmentКарта снова становится почти непрерывной
Контекстная зависимостьОдин и тот же объект меняет смысл в разных контекстахContext-conditioned routingУсложнение маршрутизации
Масштаб картыОдин уровень не способен одинаково хорошо представлять общие и конкретные понятияИерархия полюсовРост сложности и связей
Ключевой компромисс Слишком пластичная карта забывает старую структуру. Слишком стабильная карта не умеет формировать новые координаты. Полюсам нужен собственный темп изменений.

Контекст усложняет выбор

Пусть система видит: «банк закрыли». Без дополнительного контекста невозможно определить, речь о финансовом учреждении или о береговой структуре. Полюс нельзя выбрать по одному слову. Нужна последовательность:

банк + счёт + кредит + проценты   → финансовый контекст
банк + река + берег + вода       → другое значение

Выбор полюса зависит от состояния контекста. Семантическая карта не заменяет attention — она должна взаимодействовать с ним.

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

Мягкий выбор и его пределы

Когда состояние находится примерно одинаково далеко от двух полюсов, жёсткий выбор заставляет выбрать один. Но контекст может находиться на границе. Вместо единственного полюса можно использовать мягкое распределение:

автомобиль
   ├── 0,65 → транспорт
   ├── 0,25 → личный транспорт
   └── 0,10 → коммерческая услуга

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

Но если каждый объект одновременно принадлежит десяткам полюсов, дискретность теряет смысл. Вместо одной координаты — распределённое непрерывное состояние. Нужен баланс: достаточно компактный выбор, но не настолько жёсткий, чтобы уничтожить пограничные случаи. Обучаемая система координат с контролируемой неопределённостью.

Граница Если мягкий выбор превращается в распределение по десяткам полюсов, дискретная карта постепенно возвращается к непрерывному латентному пространству. Поэтому вопрос не в максимальной дискретности, а в правильной степени дискретности.

Карта должна платить за себя

Предположим, все эксперименты показывают: полюса устойчивы, мёртвых мало, перефразирование сохраняет координаты, контекст различает омонимы. Можно ли сказать, что мы получили семантическую память?

Нет. Остаётся последний тест: может ли модель использовать карту для новых вычислений?

Если полюса просто фиксируют то, что модель и без них вычисляла, они — дополнительная визуализация. Но если система использует полюс как промежуточное состояние для нового вывода — ситуация меняется. Карта становится не описанием модели, а частью её вычислительного механизма.

Именно поэтому главный эксперимент — не про кластеризацию. Можно построить красивую визуализацию, раскрасить точки по категориям, увидеть кластеры. И всё это почти ничего не доказывает. Гораздо содержательнее эксперимент на переносе: обучить модель, сформировать карту, изменить формулировки, добавить новые комбинации известных понятий, проверить, использует ли модель старые полюса, измерить качество. Если карта — устойчивая координатная система, новая задача должна использовать существующую структуру, а не создавать новый полюс для каждого предложения.

И ещё один тест — редактирование. Если архитектура действительно разделяет устойчивую семантическую координату и изменяемое знание, то смена факта в графовой памяти не требует переобучения слоя полюсов. Изменяется только соответствующий участок памяти. Одна из причин существования отдельной карты — сделать структуру вычисления стабильнее фактического содержимого.

И, наконец, абляция. Что произойдёт, если убрать карту? Если после удаления Layer 1 качество почти не изменится — карта была декоративной. Это, пожалуй, самый важный тест.

В инженерии новый слой не получает право на существование потому, что красиво выглядит. Он должен давать что-то, чего существенно труднее получить без него. Иначе проще оставить хорошо масштабируемый Transformer. Предлагаемая архитектура не должна доказывать, что Transformer плох. Она должна доказать, что дополнительная структура иногда стоит своей цены.

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

Одна карта или несколько

Семантика не имеет одного масштаба. Есть очень общие понятия: объект, событие, время, причина. Есть промежуточные: транспорт, экономика, программирование. Есть конкретные: модель процессора, конкретный API, конкретный препарат.

Если разместить всё в одной плоской карте, она станет либо слишком грубой, либо чудовищно большой. Естественнее использовать несколько уровней:

абстрактные полюса
       │
доменные полюса
       │
локальные полюса

Один объект одновременно имеет координату на нескольких уровнях. Tesla Model 3 — автомобиль, электромобиль, транспорт, физический объект. Это уже больше похоже на иерархическую семантическую систему, чем на обычный codebook.

И если полюса связываются между собой, возникает граф. Если граф становится большим — он превращается в отдельную структуру. Мы возвращаемся к Layer 3. Layer 1 отвечает: «в какой системе координат мы находимся?» Layer 3: «какие конкретные сущности и связи существуют?» Layer 2: «что происходит с ними прямо сейчас?» Три разных режима вычисления.

Три режима вычисления: семантические координаты, контекст и изменяемая память
Рис. 4. Три режима вычисления: семантические координаты, контекст и изменяемая память
Три уровня Layer 1 отвечает за систему координат. Layer 2 — за текущее нейросетевое вычисление. Layer 3 — за изменяемое знание и связи между сущностями.

Пока это гипотеза

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

Но теперь у нас есть конкретный объект исследования. Не «понимание». Не «сознание машины». А обучаемая дискретная структура, которая должна сохранять устойчивые координаты смысла и использовать их в последующих вычислениях. Это можно реализовать. И сломать. В инженерии это хорошая новость.

Вопрос, который сложнее всех предыдущих

Допустим, мы научились строить устойчивую карту. Полюса не вымирают, сохраняются при перефразировании, контекст разделяет значения. Layer 2 использует координаты.

Остаётся вопрос: что делать, когда карта противоречит памяти?

Семантический слой говорит: X является частью Y. Графовая память содержит: X не является частью Y. Что побеждает? Модель получает текст, противоречащий старой информации. Менять полюс? Менять граф? Сохранять обе версии? Учитывать источник? Добавлять временную координату?

Семантическая карта сама по себе не решает проблему знания. Она создаёт место, где эту проблему можно формализовать. Память должна не просто хранить связи — она должна различать факт, источник, время и степень доверия.

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