Восстановление текста из LaBSE эмбеддинга с помощью дообученной GPT2

Jan 09, 2023 09:24


В репозитории vector2text я выложил код эксперимента с управлением авторегрессионной генерацией русского текста в декодерной модели. Код самодостаточен, то есть из внешних зависимостей там только torch, transformers и sentence-transformers. Также отмечу, что предлагаемый подход не требует модификации внутренностей классов transformers.GPT2Model. ( Read more... )

генеративная модель, gpt-2, генерация текста

Leave a comment

Comments 3

p2004r January 9 2023, 14:45:16 UTC
Супер! Это лучше чем все эти диффузии, потому что имитирует работу с онтологией предметной области. Причем "латентной"!

То есть теперь можно учить модель делать ответ-эмбендинг и потом его "интерпертировать" в текст доносящий эмбендинг-смысл

Reply

kelijah January 9 2023, 15:00:28 UTC
Да :) Вот хочу попробовать поделать всякие сложения-вычитания-интерполяции векторов эмбеддингов текстов и посмотреть, что при этом получается с генерацией текста. Вдруг там что-то интересное.

Плюс одна из задумок - перейти в чатботе на работу с эмбеддингами, в частности поделать эксперименты с RL.

Но есть, кажется, еще кое-какие потенциальные применения подхода, и их надо будет тоже потыкать. Главное - затравка имеет фиксированную длинну в 1 токен, поэтому может GPT будет лучше работать на всяких задачах prompt2text. В том числе при генерации стихов.

Также может быть цепочка "текст=>LaBSE вектор=>генерация текста" будет работать как необычный перефразировщик, по аналогии с использованием переводчика "ru=>en=>ru". Тоже надо проверять, пока чисто спекулятивно.

Reply

p2004r January 9 2023, 17:05:37 UTC

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

То есть если эмбендинг поднять до уровня "условных glove", то там вообще компоненты простой структуры целые "предметные области" должны накрывать и возможно можно "заставить отвечать как биохимик" например :)))

Reply


Leave a comment

Up