- BrainTools - https://www.braintools.ru -

Эксперимент: заставляем трансформер читать палиндромы через Чебышёва и комплексные экспоненты

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


Архитектура Transformer (на которой работают нейросети от GPT-4 до LLaMA) обрабатывает все слова одновременно, следовательно, два предложения вида: «Cat eats mouse» и «Mouse eats cat» для нее равнозначны. Вот тут и приходит на помощь позиционное кодирование. В статье «Attention Is All You Need» (2017) исследователи из команды Google предложили использовать знаменитую тригонометрическую систему для кодирования положения слов. В своей работе я протестировала данную концепцию на других базисах и проанализировала результаты.

Методы исследования:

  1. Только контент: модель не видит порядок слов;

  2. Контент + линейный базис: модель видит только порядковый номер слова;

  3. Контент + Фурье: волновые колебания, значения меняются плавно;

  4. Контент + комплексные экспоненты: кодирование слова углом поворота вектора, чем дальше слово в предложении, тем сильнее повернут вектор;

  5. Контент + полиномы Чебышева: ортогональные полиномы, часто используемые в теории приближений.

Все вычисления и графики делались на языке Python (PyTorch + matplotlib).

Fall leaves as soon as leaves fall

Первая тестовая фраза, вынесенная в заголовок, знаменательна тем, что это палиндром и слово «fall» здесь встречается как существительное и как глагол. Это делает проверку интереснее: как поможет позиционное кодирование отличить эти слова?

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

Расшифровка цветов:

  • 🔴 Ярко‑красный (1.0) — Точное совпадение. Векторы идентичны (главная диагональ).

  • 🔸 Оранжевый / Розовый (0.3 — 0.7) — Связь через смысл. Модель узнала одинаковые слова, но позиция развела их в пространстве.

  • Бежевый / Белый (0.0) — Нейтральность. Между словами нет ни лексической, ни позиционной связи.

  • 🔵 Голубой / Синий (-0.2…-0.5) — Отторжение. Базис активно расталкивает и изолирует слова.

Тепловая карта скалярного произведения 1

Тепловая карта скалярного произведения 1

Проведем небольшой анализ и сделаем пару замечаний.

  • Первый график получился полностью симметричным (осевая и центральная симметрии [1]), так как модель воспринимала все слова одинаково уникальными. Одинаковые в написании, но разные по смыслу слова «fall» не различимы.

  • На втором графике видно, как убывает цвет от красного к синему (что означает уменьшение схожести векторов) при удалении положения слова от начала. Снова слова «fall» в начале и конце фразы одинаковы.

  • Третий график имеет более стабильное и плавное изменение цвета. Модель уловила некоторую связь между словами «fall» и «leaves», но интересующая нас пара (два «fall» ) так и осталась неразличимой.

  • Базис из комплексных экспонент изолировал слово «fall» от «leaves», а также не стал считать нашу пару (сущ. и глагол «fall») полностью идентичными.

  • Полиномы Чебышева тоже уловили несовпадение между этими словами. Заметим, что первое «fall» и «leaves» связаны меньше, чем последнее «fall» и «leaves». Это можно объяснить устойчивостью грамматической конструкции «leaves fall» (подлежащее + сказуемое). Отсутствие симметрии говорит о направленности базиса Чебышева: он отличает начало предложения и его конец.

Never odd or even

Здесь нас, помимо палиндрома, будет интересовать связь слов «odd» (нечетный) и «even» (четный). Базисы и цвета аналогичны предыдущему примеру. Результат изображен на картинке ниже.

Тепловая карта скалярного произведения 2

Тепловая карта скалярного произведения 2

Перейдем к анализу результатов.

  • На первом графике слова «odd» и «even» моделью были распознаны как нейтральные (то есть связи нет). Но она нашла такие артефакты как «or» и «odd», а также развела по разные стороны «never» и «odd».

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

  • Появление синусов и косинусов укрепило уверенность в связи «or» и «odd», а также добавила «or» и «never». Но, увы, разница между «odd» и «even» была утеряна.

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

  • И вот наконец‑таки были разделены слова «odd» и «even» полиномами Чебышева. Также модель увидела сходство, вероятно из‑за одинаковых букв, слов «never» и «even».

Вывод

На примере двух интересных фраз была показана работа разных моделей и их сравнение. Можно заметить, что некоторые свойства базиса «передаются» тепловой карте скалярного произведения (например, базис Фурье и плавность цветов; линейный базис и «убывание»). Любопытные результаты продемонстрировало применение полиномов Чебышева: они превзошли синусы/ косинусы по разделению антонимов. Насколько известно автору, базисы Фурье и экспонент превалируют в современных моделях из‑за их бесконечной периодичности. Это делает их удобнее на «длинных дистанциях» (см., напр., On the Interchangeability of Positional Embeddings in Multilingual Neural Machine Translation Models [2]), но на коротких многочлены Чебышева показали себя лучше (см., напр., Kolmogorov‑Arnold Networks: A Critical Assessment of Claims, Performance, and Practical Viability [3]).

Автор: Ir1na

Источник [4]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/34669

URLs in this post:

[1] симметрии: http://www.braintools.ru/article/3088

[2] On the Interchangeability of Positional Embeddings in Multilingual Neural Machine Translation Models: https://doi.org/10.48550/arXiv.2408.11382

[3] Kolmogorov‑Arnold Networks: A Critical Assessment of Claims, Performance, and Practical Viability: https://arxiv.org/abs/2407.11075

[4] Источник: https://habr.com/ru/articles/1072510/?utm_campaign=1072510&utm_source=habrahabr&utm_medium=rss

www.BrainTools.ru

Rambler's Top100