Forwarded from Sinекура
Хочется наслаждаться летом, но вместо этого постоянно дедлайн форсмажором погоняет. Нынешний форсмажор так и вовсе изрядно подрывает веру в человечество; с другой стороны, в итоге пришлось взять в руки шашки и попрограммировать самостоятельно, чем-то это даже и приятно.
В общем, несмотря ни на что (подобно Гомеру и Борхесу), наслаждаться летом всё равно стараюсь! И в этом направлении даже кое-что получается. :) Но писать много новых постов пока вряд ли буду, давайте вместо этого сегодня продолжим начатый в прошлый раз ностальгический обзор моего блога из Synthesis AI, который сейчас переезжает на мой сайт.
Driving Model Performance with Synthetic Data — большая серия, которая во многом потом вошла в книгу "Synthetic Data for Deep Learning" (естественно, в сильно расширенном виде). Здесь посты уже становятся побольше и посвящены разным вещам, так что перечислю их отдельно; серию я иллюстрировал через Мерилин Монро, но, кажется, в последнем посте что-то пошло не так.)
Part I: Augmentations in Computer Vision — про аугментации, Albumentations и всё такое прочее; самый простой, но и самый полезный на практике вид синтетических данных
Part II: Smart Augmentations — про то, как делать более умные аугментации, а именно о том, как автоматически настраивать лучшие возможные композиции аугментации, и о Mixup; состязательных аугментаций тогда ещё, кажется, не придумали, но они бы тоже попали именно сюда
Part III: Domain Adaptation Overview — какие бывают варианты того, как модель, обученную на одном виде данных, приспособить к другому; пути здесь (в 2021 году было) по сути два: refinement данных или adaptation самой модели
Part IV: Gaze Estimation and GANs — про статью от Apple, которая когда-то была фактически первым успешным примером именно synthetic-to-real data refinement: как GAN'ом перерисовать картинку так, чтобы синтетические картинки стали более реалистичными (и могли потом использоваться для gaze estimation, оценки направления взгляда)
Part V: Synthetic-to-Real Refinement — дальнейшее развитие этой идеи, обзор других подходов, тоже в то время почти неизбежно основанных на GAN'ах (да и сейчас в style transfer, кажется, GAN'ы ещё не умерли, в отличие от text-to-image)
Part VI: Real-to-Synthetic Data — а можно сделать и наоборот, реальные данные сделать более похожими на синтетику, чтобы лучше работала обученная на синтетике модель; этот сюжет, кажется, особого развития потом не получил, но переворот любопытный
Part VII: Model-Based Domain Adaptation — ну и собственно о том, как модель адаптировать; здесь в основном про основополагающую работу Ганина и Лемпицкого, где они обращали градиенты, и о том, как это потом развилось в domain separation networks
В общем, давно всё это было, но приятно было открыть ещё раз. В следующий раз анонсирую более "вечные" посты, надеюсь, будет интереснее.
В общем, несмотря ни на что (подобно Гомеру и Борхесу), наслаждаться летом всё равно стараюсь! И в этом направлении даже кое-что получается. :) Но писать много новых постов пока вряд ли буду, давайте вместо этого сегодня продолжим начатый в прошлый раз ностальгический обзор моего блога из Synthesis AI, который сейчас переезжает на мой сайт.
Driving Model Performance with Synthetic Data — большая серия, которая во многом потом вошла в книгу "Synthetic Data for Deep Learning" (естественно, в сильно расширенном виде). Здесь посты уже становятся побольше и посвящены разным вещам, так что перечислю их отдельно; серию я иллюстрировал через Мерилин Монро, но, кажется, в последнем посте что-то пошло не так.)
Part I: Augmentations in Computer Vision — про аугментации, Albumentations и всё такое прочее; самый простой, но и самый полезный на практике вид синтетических данных
Part II: Smart Augmentations — про то, как делать более умные аугментации, а именно о том, как автоматически настраивать лучшие возможные композиции аугментации, и о Mixup; состязательных аугментаций тогда ещё, кажется, не придумали, но они бы тоже попали именно сюда
Part III: Domain Adaptation Overview — какие бывают варианты того, как модель, обученную на одном виде данных, приспособить к другому; пути здесь (в 2021 году было) по сути два: refinement данных или adaptation самой модели
Part IV: Gaze Estimation and GANs — про статью от Apple, которая когда-то была фактически первым успешным примером именно synthetic-to-real data refinement: как GAN'ом перерисовать картинку так, чтобы синтетические картинки стали более реалистичными (и могли потом использоваться для gaze estimation, оценки направления взгляда)
Part V: Synthetic-to-Real Refinement — дальнейшее развитие этой идеи, обзор других подходов, тоже в то время почти неизбежно основанных на GAN'ах (да и сейчас в style transfer, кажется, GAN'ы ещё не умерли, в отличие от text-to-image)
Part VI: Real-to-Synthetic Data — а можно сделать и наоборот, реальные данные сделать более похожими на синтетику, чтобы лучше работала обученная на синтетике модель; этот сюжет, кажется, особого развития потом не получил, но переворот любопытный
Part VII: Model-Based Domain Adaptation — ну и собственно о том, как модель адаптировать; здесь в основном про основополагающую работу Ганина и Лемпицкого, где они обращали градиенты, и о том, как это потом развилось в domain separation networks
В общем, давно всё это было, но приятно было открыть ещё раз. В следующий раз анонсирую более "вечные" посты, надеюсь, будет интереснее.
Forwarded from Джимми Нейрон 🚀
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Мемы с разных ракурсов от Seedance 1.0
Модель Seedance 1.0 позволяет генерировать видео на основе одного статичного фото с разными углами обзора камеры. Юзер Framer прогнал несколько мемов в качестве демонстрации технологии.
Пример промпта, который он использовал кину в комменты. Длительность видео составляет 5 секунд, стоимость генерации 0,15$. Автор пишет, что достаточно 1-3 попытки для такого результата.
Тред от того же чувака про персонажей знаменитых картины с разных ракурсов.
Модель Seedance 1.0 позволяет генерировать видео на основе одного статичного фото с разными углами обзора камеры. Юзер Framer прогнал несколько мемов в качестве демонстрации технологии.
Пример промпта, который он использовал кину в комменты. Длительность видео составляет 5 секунд, стоимость генерации 0,15$. Автор пишет, что достаточно 1-3 попытки для такого результата.
Тред от того же чувака про персонажей знаменитых картины с разных ракурсов.
Forwarded from Всеволод Викулин | AI разбор
Почти невозможно найти рабочие примеры архитектур мультиагентных систем. Обычно, пишут что-то вроде: "ну сделайте ИИ-бухгалтера, ИИ-программиста и объедините их в ИИ-семью". Брр.
Случайно нашел публикацию Anthropic, как они сделали мультиагентую систему, которая делает подробные исследования сложных тем. Устраивайтесь поудобнее, сейчас будет мясо.
Зачем тут мультиагенты?
Например, задача: "найти 100 конкурентов, выписать их выручку и позиционирование" (McKinsey на этом моменте напряглись, их хлеб). Человек пойдет задавать 200 тысяч запросов, переваривать тонну информацию, а потом долго писать отчет. Очень дорогая задача.
Важный аспект этой задачи: она может решаться параллельно. Мы можем разбить сложную тему на подтемы, а дальше агенты исследуют все независимо. Тогда мы не потратим кучу сил на кординацию агентов друг с другом, как я писал в посте.
Дизайн архитектуры
Мы делаем систему с супер простой координацией агентов:
1) Есть агент-лидер, который бьет задачу на части и раздает подзадачи субагентам.
2) Каждый субагент решает свою задачу. Итеративно ходит поиск, анализирует выдачу, делает новый запрос, пока не докопается до истины.
3) После завершения своих задач, субагенты отправляют результаты лиду. Лид всех ждет. Потом, если он считает, что тема разобрана, готовит финальный отчет. Иначе делает новые подзадачи и по новой.
4) Когда отчет готов, отдельный агент расставляет, из какого источника, что было взято.
Оценка качества
Ровно так, как рассказывал старина Сева.
1) LLM-as-a-judge на различные свойства: достоверность ответа, точность цитат полнота, качество источников.
2) LLM-ки ловили не все кейсы, так что частично оценивали людьми.
Коллеги выложили промпты всех 3-х агентов лид, субагент, цитирование.
Очень наглядная статья, просто бери и делай по аналогии.
Изучайте только лучшие практики, делитесь ими в комментариях.
#ai_cases
Случайно нашел публикацию Anthropic, как они сделали мультиагентую систему, которая делает подробные исследования сложных тем. Устраивайтесь поудобнее, сейчас будет мясо.
Зачем тут мультиагенты?
Например, задача: "найти 100 конкурентов, выписать их выручку и позиционирование" (McKinsey на этом моменте напряглись, их хлеб). Человек пойдет задавать 200 тысяч запросов, переваривать тонну информацию, а потом долго писать отчет. Очень дорогая задача.
Важный аспект этой задачи: она может решаться параллельно. Мы можем разбить сложную тему на подтемы, а дальше агенты исследуют все независимо. Тогда мы не потратим кучу сил на кординацию агентов друг с другом, как я писал в посте.
Дизайн архитектуры
Мы делаем систему с супер простой координацией агентов:
1) Есть агент-лидер, который бьет задачу на части и раздает подзадачи субагентам.
2) Каждый субагент решает свою задачу. Итеративно ходит поиск, анализирует выдачу, делает новый запрос, пока не докопается до истины.
3) После завершения своих задач, субагенты отправляют результаты лиду. Лид всех ждет. Потом, если он считает, что тема разобрана, готовит финальный отчет. Иначе делает новые подзадачи и по новой.
4) Когда отчет готов, отдельный агент расставляет, из какого источника, что было взято.
Оценка качества
Ровно так, как рассказывал старина Сева.
1) LLM-as-a-judge на различные свойства: достоверность ответа, точность цитат полнота, качество источников.
2) LLM-ки ловили не все кейсы, так что частично оценивали людьми.
Коллеги выложили промпты всех 3-х агентов лид, субагент, цитирование.
Очень наглядная статья, просто бери и делай по аналогии.
Изучайте только лучшие практики, делитесь ими в комментариях.
#ai_cases
Forwarded from Тимлид Очевидность | Евгений Антонов
Так-то я руководителем работаю, а сообщества – это для души
В этот раз мы собрались поговорить про то, как делать сообщества внутри компании и за её пределами.
Саша Пряхин рассказал, как он тимлидское комьюнити ведет у себя в Авито, а мне было очень интересно на себя прикинуть, ведь сейчас я тоже небольшой тимлидский клубик внутри компании веду.
Мы постарались раскрыть эту тему со всех сторон: зачем заводить, зачем участвовать, как вовлекать людей, как тянуть эту лямку и не приуныть, какие профиты можно получить, как всё это обосновать руководству и как считать эффективность.
А потом еще рассмотрели тему про внешнее комьюнити, где отдельной большой сложностью становится модерация всего творящегося действа.
В посте-анонсе приложили полезные гайды про построение комьюнити и модерацию.
Я очень доволен этим выпуском. Люблю такие общественно-полезные дела, но при этом прекрасно знаю, как это сложно дается. Надеюсь, кому-то нашим сегодняшним контентом мы сможем сэкономить время, силы и нервы 🙂
Приятного прослушивания!
Пост в канале подкаста со ссылками на выпуск и описанием затронутых тезисов здесь.
В этот раз мы собрались поговорить про то, как делать сообщества внутри компании и за её пределами.
Саша Пряхин рассказал, как он тимлидское комьюнити ведет у себя в Авито, а мне было очень интересно на себя прикинуть, ведь сейчас я тоже небольшой тимлидский клубик внутри компании веду.
Мы постарались раскрыть эту тему со всех сторон: зачем заводить, зачем участвовать, как вовлекать людей, как тянуть эту лямку и не приуныть, какие профиты можно получить, как всё это обосновать руководству и как считать эффективность.
А потом еще рассмотрели тему про внешнее комьюнити, где отдельной большой сложностью становится модерация всего творящегося действа.
В посте-анонсе приложили полезные гайды про построение комьюнити и модерацию.
Я очень доволен этим выпуском. Люблю такие общественно-полезные дела, но при этом прекрасно знаю, как это сложно дается. Надеюсь, кому-то нашим сегодняшним контентом мы сможем сэкономить время, силы и нервы 🙂
Приятного прослушивания!
Пост в канале подкаста со ссылками на выпуск и описанием затронутых тезисов здесь.
Forwarded from AbstractDL
SONAR-LLM: языковая модель, которая думает предложениями, а не токенами
Опубликовали препринт новой работы! Помните Large Concept Model (LCM) от Meta, которая генерирует текст через предсказание sentence-level эмбеддингов? Крутая идея, но диффузионное обучение там было весьма геморройным, а MSE лосс работал так себе.
Мы решили оставить "мышление" в пространстве SONAR эмбеддингов (это такой мощный автоэнкодер от Meta, который сжимает целое предложение в один вектор d=1024 и умеет почти без потерь восстанавливать его обратно), но вернуть привычный token-level cross-entropy через замороженный декодер. По сути, модель предсказывает эмбеддинг следующего предложения, прогоняет его через замороженный SONAR декодер, и получает градиенты от обычной кроссэнтропии по токенам.
Такой гибридный подход избавляет от диффузионного семплера LCM, но сохраняет семантическую абстракцию. На практике SONAR-LLM показал лучшие scaling laws, чем оригинальные LCM, и заметно обогнал их в качестве генерации по базовым метрикам — от оценки через оракулов, до NLG бенчмарков и суммаризации.
Про инференс: выигрыш приходит на длинных контекстах. До ~4k токенов обычные архитектуры выигрывают, а дальше SONAR-LLM устойчиво впереди, потому что моделирует цепочку предложений, а не токенов. Сложность по FLOPs близка к линейной вплоть до ~1M.
Все веса, код и скрипты для воспроизведения выложили в открытый доступ, так что сможете сами поэкспериментировать 🤷♂️
Статья, GitHub
Опубликовали препринт новой работы! Помните Large Concept Model (LCM) от Meta, которая генерирует текст через предсказание sentence-level эмбеддингов? Крутая идея, но диффузионное обучение там было весьма геморройным, а MSE лосс работал так себе.
Мы решили оставить "мышление" в пространстве SONAR эмбеддингов (это такой мощный автоэнкодер от Meta, который сжимает целое предложение в один вектор d=1024 и умеет почти без потерь восстанавливать его обратно), но вернуть привычный token-level cross-entropy через замороженный декодер. По сути, модель предсказывает эмбеддинг следующего предложения, прогоняет его через замороженный SONAR декодер, и получает градиенты от обычной кроссэнтропии по токенам.
Такой гибридный подход избавляет от диффузионного семплера LCM, но сохраняет семантическую абстракцию. На практике SONAR-LLM показал лучшие scaling laws, чем оригинальные LCM, и заметно обогнал их в качестве генерации по базовым метрикам — от оценки через оракулов, до NLG бенчмарков и суммаризации.
Про инференс: выигрыш приходит на длинных контекстах. До ~4k токенов обычные архитектуры выигрывают, а дальше SONAR-LLM устойчиво впереди, потому что моделирует цепочку предложений, а не токенов. Сложность по FLOPs близка к линейной вплоть до ~1M.
Все веса, код и скрипты для воспроизведения выложили в открытый доступ, так что сможете сами поэкспериментировать 🤷♂️
Статья, GitHub