Сообщение Re[7]: Изоморфны ли LLM и цепи Маркова? от 09.11.2024 17:49
Изменено 09.11.2024 17:52 vdimas
V>>По какому "другому"?
N>Ну, генерация может быть разной, тот же GAN и Stable diffusion работают по разным принципам. Следовательно, хотя бы один из этих способов отличается от генерации текста с помощью LLM.
А, ну эт да, от генерации текста общая модель отличается, конечно.
Но опять же — не сильно, а из-за особенностей архитектуры сети (или подсети), ответственной за распознавание изображений — там специфическая сетка.
Но алгоритм верхнего уровня будет сильно похож, если есть намерение сделать речь чат-бота "живой", т.е. разнообразной, с различными оттенками настроений или видов лексики (деловой, неформальный, специфический для предметной области и т.д.), где чат-бот будет "улавливать" оттенки речи собеседника.
В общем, я бы не стал утверждать, Stable Diffusion (SD) не является разновидностью GAN (или не является развитием идеи GAN).
Весь трюк в том, что в случае SD одна сетка выполняет обе роли, т.е. это вопрос кодирования входных выходных данных.
Оба подхода используют итеративный метод уточнения исходного "шума + оценочных параметров", но в случае GAN разделение ролей явное по двум независимым сеткам, а в случае Stable Diffusion разделение только по областям входных и выходных сигналов, бо выходы и входы SD поделены на области, отвечающие за входной/конечный результат и за анализ его "достоверности" / "поправку". Т.е., у SD те же две "внешние" сетки, но с общей "внутренней".
Плюс, это ж разница в годах разработки подходов, а это важно! ))
Если обе сетки используют общие промежуточные слои, то это усложняет обучение, т.е. делает его более затратным, т.к. затраты на обучение зависят от размера сети не линейно, а в некоей степени, заметно большей 2 (для большей сетки больше итераций, помимо квадратичного увеличения стоимости каждой итерации).
Т.е. выгодней обучить две отдельные сетки с условными размерностями N и M, чем одну сетку с размерностью N+M, поэтому алгоритм GAN смотрелся из 1998-го неплохо, а Stable Diffusion выглядел бы в те года маниловщиной.
С другой стороны, общая внутренняя сеть SD ведь оперирует теми же самими данными для двух условных подсеток, которые для случая GAN дублируются, бо обучение обеих сеток происходит на одних и тех же данных. Т.е. SD при том же общем кол-ве нейронов способна быть "умнее" за счёт более эффективного их "переиспользования".
В этом и состоит трюк и это неплохо.
А всякие их саморекламы — откровенный фуфел для обывателя:
Кроме того, стабильная диффузия предназначена для работы в непрерывных скрытых пространствах, в то время как GAN работают в дискретных пиксельных пространствах.
Потому что сетки для распознавания изображений унутре в любом случае переводят входные пикселы в те самые "непрерывные скрытые пространства":
Свёрточная нейронная сеть ... нацеленная на эффективное распознавание образов, входит в состав технологий глубокого обучения. Использует некоторые особенности зрительной коры, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определённого набора простых клеток.
...
Структура сети — однонаправленная, принципиально многослойная.
V>>Другому чем что? Что ты себе уже нарисовал в голове?
N>По другому, чем сабж. В голове я себе много чего рисую, визуализировать пока не научился.
Я просто неправильно тебя понял.
Мне показалось, что твоё замечание "не таким образом" относилось к сеткам генерации изображений и музыки, где на входе некий шум + набор параметров, например, для картинки описание её содержимого, а для песни — описание стиля и слова самой песни.
Там подходы очень похожие — я одно время плотно изучал Suno в бытность их версии движка 2.5, этот движок явно был выполнен с чётким разделением "генератор — проверяющий" (я подробно описывал однажды на этом сайте, т.е. это подход GAN).
Но после выхода их движка 3.0 я уже так сказать не могу. ))
Вполне возможно, что отличия их движков 2.5 и 3.0 примерно такие же, как отличия GAN от SD.
V>>По какому "другому"?
N>Ну, генерация может быть разной, тот же GAN и Stable diffusion работают по разным принципам. Следовательно, хотя бы один из этих способов отличается от генерации текста с помощью LLM.
А, ну эт да, от генерации текста общая модель отличается, конечно.
Но опять же — не сильно, а из-за особенностей архитектуры сети (или подсети), ответственной за распознавание изображений — там специфическая сетка.
Но алгоритм верхнего уровня будет сильно похож, если есть намерение сделать речь чат-бота "живой", т.е. разнообразной, с различными оттенками настроений или видов лексики (деловой, неформальный, специфический для предметной области и т.д.), где чат-бот будет "улавливать" оттенки речи собеседника.
В общем, я бы не стал утверждать, Stable Diffusion (SD) не является разновидностью GAN (или не является развитием идеи GAN).
Весь трюк в том, что в случае SD одна сетка выполняет обе роли, т.е. это вопрос кодирования входных выходных данных.
Оба подхода используют итеративный метод уточнения исходного "шума + оценочных параметров", но в случае GAN разделение ролей явное по двум независимым сеткам, а в случае Stable Diffusion разделение только по областям входных и выходных сигналов, бо выходы и входы SD поделены на области, отвечающие за входной/конечный результат и за анализ его "достоверности" / "поправку". Т.е., у SD те же две "внешние" сетки, но с общей "внутренней".
Плюс, это ж разница в годах разработки подходов, а это важно! ))
Если обе сетки используют общие промежуточные слои, то это усложняет обучение, т.е. делает его более затратным, т.к. затраты на обучение зависят от размера сети не линейно, а в некоей степени, заметно большей 2 (для большей сетки больше итераций, помимо квадратичного увеличения стоимости каждой итерации).
Т.е. выгодней обучить две отдельные сетки с условными размерностями N и M, чем одну сетку с размерностью N+M, поэтому алгоритм GAN смотрелся из 1998-го неплохо, а Stable Diffusion выглядел бы в те года маниловщиной.
С другой стороны, общая внутренняя сеть SD ведь оперирует теми же самими данными для двух условных подсеток, которые для случая GAN дублируются, бо обучение обеих сеток происходит на одних и тех же данных. Т.е. SD при том же общем кол-ве нейронов способна быть "умнее" за счёт более эффективного их "переиспользования".
В этом и состоит трюк и это неплохо.
А всякие их саморекламы — откровенный фуфел для обывателя:
Кроме того, стабильная диффузия предназначена для работы в непрерывных скрытых пространствах, в то время как GAN работают в дискретных пиксельных пространствах.
Потому что сетки для распознавания изображений унутре в любом случае переводят входные пикселы в те самые "непрерывные скрытые пространства":
Свёрточная нейронная сеть ... нацеленная на эффективное распознавание образов, входит в состав технологий глубокого обучения. Использует некоторые особенности зрительной коры, в которой были открыты так называемые простые клетки, реагирующие на прямые линии под разными углами, и сложные клетки, реакция которых связана с активацией определённого набора простых клеток.
...
Структура сети — однонаправленная, принципиально многослойная.
V>>Другому чем что? Что ты себе уже нарисовал в голове?
N>По другому, чем сабж. В голове я себе много чего рисую, визуализировать пока не научился.
Я просто неправильно тебя понял.
Мне показалось, что твоё замечание "не таким образом" относилось к сеткам генерации изображений и музыки, где на входе некий шум + набор параметров, например, для картинки будет описание её содержимого, а для песни — описание стиля и слова самой песни.
Там подходы очень похожие — я одно время плотно изучал Suno в бытность их версии движка 2.5, этот движок явно был выполнен с чётким разделением "генератор — проверяющий" (я подробно описывал однажды на этом сайте, т.е. это подход GAN).
Но после выхода их движка 3.0 я уже так сказать не могу. ))
Вполне возможно, что отличия их движков 2.5 и 3.0 примерно такие же, как отличия GAN от SD.