"Шок-новость": для файн-тюнинга LLM важна обработка данных
https://twitter.com/eugeneyan/status/1729689262331978071
#datascience
https://twitter.com/eugeneyan/status/1729689262331978071
#datascience
😁9🔥1
Adversarial Diffusion Distillation
Adversarial Diffusion Distillation - новый метод обучения, который позволяет быстро и эффективно генерировать изображения высокого качества с использованием моделей stable diffusion за 1-4 шага. Он применяет score distillation и сочетание с adversarial loss для сохранения точности изображения даже при минимальном количестве шагов. Эксперименты показывают, что ADD значительно превосходит существующие методы, такие как GANs и Latent Consistency Models, уже на первом шаге, и достигает уровня лучших современных моделей, таких как SDXL, всего за четыре шага. Новая SOTA!
Проект
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
Adversarial Diffusion Distillation - новый метод обучения, который позволяет быстро и эффективно генерировать изображения высокого качества с использованием моделей stable diffusion за 1-4 шага. Он применяет score distillation и сочетание с adversarial loss для сохранения точности изображения даже при минимальном количестве шагов. Эксперименты показывают, что ADD значительно превосходит существующие методы, такие как GANs и Latent Consistency Models, уже на первом шаге, и достигает уровня лучших современных моделей, таких как SDXL, всего за четыре шага. Новая SOTA!
Проект
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
Stability AI
Adversarial Diffusion Distillation — Stability AI
We introduce Adversarial Diffusion Distillation (ADD), a novel training approach that efficiently samples large-scale foundational image diffusion models in just 1–4 steps while maintaining high image quality.
👍3🔥3
Duolingo: The results of 2023
В Duolingo появилась возможность посмотреть результаты года. В этом году я активно изучал испанский и немецкий. Курс немецкого удалось завершить полностью (в том числе все legendaries), но курс испанского намного длиннее. Плюс, один раз я уже его закончил в этом году, но потом курс обновился, и пришлось проходить его заново. Сейчас польза от этого уже небольшая, поэтому просто использую Duolingo как небольшую дополнительную практику.
#languages
В Duolingo появилась возможность посмотреть результаты года. В этом году я активно изучал испанский и немецкий. Курс немецкого удалось завершить полностью (в том числе все legendaries), но курс испанского намного длиннее. Плюс, один раз я уже его закончил в этом году, но потом курс обновился, и пришлось проходить его заново. Сейчас польза от этого уже небольшая, поэтому просто использую Duolingo как небольшую дополнительную практику.
#languages
🔥7👍3🎉3🤯1
2023 Duolingo Language Report
И снова о Duolingo: компания выпустила очередной ежегодный отчёт. Детали можно почитать по ссылке, а пока то, что мне показалось интересным:
• Английский язык остаётся самым популярным для изучения, что совсем не удивительно;
• Португальский язык вытеснил Русский язык с десятого места: интерес к русскому языку упал из-за войны, а интерес к португальскому вырос благодаря популярности Португалии и Бразилии у туристов;
• Активнее всего языки изучают люди из Беларуси, Японии, Венгрии, России и Украины. Думаю, что как минимум для трёх из этих пяти стран мотивация вполне понятна - изучить язык новой страны проживания;
Report
#languages
И снова о Duolingo: компания выпустила очередной ежегодный отчёт. Детали можно почитать по ссылке, а пока то, что мне показалось интересным:
• Английский язык остаётся самым популярным для изучения, что совсем не удивительно;
• Португальский язык вытеснил Русский язык с десятого места: интерес к русскому языку упал из-за войны, а интерес к португальскому вырос благодаря популярности Португалии и Бразилии у туристов;
• Активнее всего языки изучают люди из Беларуси, Японии, Венгрии, России и Украины. Думаю, что как минимум для трёх из этих пяти стран мотивация вполне понятна - изучить язык новой страны проживания;
Report
#languages
Duolingo Blog
2023 Duolingo Language Report
Our annual report looks at the biggest trends and changes in language over the year. In 2023, there were a few surprises!
👍6
Translatotron 3: Speech to Speech Translation with Monolingual Data
Translatotron 3 - новый подход к обучению модели прямого перевода speech-to-speech, использующий только monolingual речевые и текстовые наборы данных в полностью unsupervised режиме. Модель использует себе masked autoencoder, unsupervised embedding mapping и back-translation. В экспериментах по переводу речи между испанским и английским языками Translatotron 3 превзошёл базовую каскадную систему, показав улучшение на 18.14 BLEU на синтезированном Unpaired-Conversational датасете. Кроме того, Translatotron 3 не теряет такие аспекты речи, как как паузы, темп речи и идентичность говорящего.
Проект
Статья
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
Translatotron 3 - новый подход к обучению модели прямого перевода speech-to-speech, использующий только monolingual речевые и текстовые наборы данных в полностью unsupervised режиме. Модель использует себе masked autoencoder, unsupervised embedding mapping и back-translation. В экспериментах по переводу речи между испанским и английским языками Translatotron 3 превзошёл базовую каскадную систему, показав улучшение на 18.14 BLEU на синтезированном Unpaired-Conversational датасете. Кроме того, Translatotron 3 не теряет такие аспекты речи, как как паузы, темп речи и идентичность говорящего.
Проект
Статья
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
🔥2
Конкуренция между AI
Увидел я сегодня новость о том, что JetBrains запускает AI Assistant в своих продуктах. Заинтересовался и обновил PyCharm. Запускаю и вижу сообщение, что мол, моя компания не даёт возможность включить AI Assistant. Учитывая, что лицензию покупал я сам - очень удивился. Читаю дальше... и оказывается, что это конфликт с GitHub Copilot. Оба использовать нельзя - либо одно, либо другое. Прийдётся страдать муками выбора.
#datascience
Увидел я сегодня новость о том, что JetBrains запускает AI Assistant в своих продуктах. Заинтересовался и обновил PyCharm. Запускаю и вижу сообщение, что мол, моя компания не даёт возможность включить AI Assistant. Учитывая, что лицензию покупал я сам - очень удивился. Читаю дальше... и оказывается, что это конфликт с GitHub Copilot. Оба использовать нельзя - либо одно, либо другое. Прийдётся страдать муками выбора.
#datascience
😁10
Purple Llama от Meta AI
Meta запустила новый проект про безопасный AI.
CyberSec Eval - cybersecurity safety evaluation benchmarks for LLMs.
Llama Guard - классификация данных на безопасность.
Эта инициатива от недавно объявленного AI Alliance.
Почему Purple? Скрещение blue team (defense) и red team (attack).
#datascience
Meta запустила новый проект про безопасный AI.
CyberSec Eval - cybersecurity safety evaluation benchmarks for LLMs.
Llama Guard - классификация данных на безопасность.
Эта инициатива от недавно объявленного AI Alliance.
Почему Purple? Скрещение blue team (defense) и red team (attack).
#datascience
🔥1
Hetzner прекращает обслуживание клиентов из России
Ещё в одном сервисе теперь нельзя арендовать, если ты из России.
#datascience
Ещё в одном сервисе теперь нельзя арендовать, если ты из России.
#datascience
🤬4😢2🫡2🔥1😱1
🗿5👍2
Если вы часто ленитесь - не печальтесь, ChatGPT тоже иногда ленится
https://twitter.com/ChatGPTapp/status/1732979491071549792
#datascience
https://twitter.com/ChatGPTapp/status/1732979491071549792
#datascience
😁4
EfficientSAM: Leveraged Masked Image Pretraining for Efficient Segment Anything
Segment Anything Model (SAM) стала мощным инструментом в CV благодаря обучению на большом датасете SA-1B и использованию огромной модели Transformera. Однако высокие вычислительные затраты ограничивали её применение в реальных условиях. Для решения этой проблемы были разработаны модели EfficientSAMs - лёгкие версии SAM, которые показывают достойные результаты при значительно меньшей complexity. Основная идея заключается в использовании предобучения с маскированными изображениями (SAMI), которое обучает модель восстанавливать функции из SAM encoder для эффективного обучения визуального представления.
EfficientSAMs с light-weight image encoders и mask decoder были дополнительно зафайнтюнеты на датасете SA-1B для задач image classification, object detection, instance segmentation, semantic object detection. В результате, SAMI показал лучшие результаты по сравнению с другими методами предобучения с маскированными изображениями, а EfficientSAMs демонстрируют заметное улучшение (например, ~4 AP на COCO/LVIS) по сравнению с другими быстрыми моделями SAM.
Статья
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
Segment Anything Model (SAM) стала мощным инструментом в CV благодаря обучению на большом датасете SA-1B и использованию огромной модели Transformera. Однако высокие вычислительные затраты ограничивали её применение в реальных условиях. Для решения этой проблемы были разработаны модели EfficientSAMs - лёгкие версии SAM, которые показывают достойные результаты при значительно меньшей complexity. Основная идея заключается в использовании предобучения с маскированными изображениями (SAMI), которое обучает модель восстанавливать функции из SAM encoder для эффективного обучения визуального представления.
EfficientSAMs с light-weight image encoders и mask decoder были дополнительно зафайнтюнеты на датасете SA-1B для задач image classification, object detection, instance segmentation, semantic object detection. В результате, SAMI показал лучшие результаты по сравнению с другими методами предобучения с маскированными изображениями, а EfficientSAMs демонстрируют заметное улучшение (например, ~4 AP на COCO/LVIS) по сравнению с другими быстрыми моделями SAM.
Статья
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
🔥8
Вспоминая Дата-Ëлку 2017
Facebook мне сегодня напомнил о фото, которое было сделано 6 лет назад. Это было второе мероприятие по DS которое я посетил. Первым был митап по итогам завершения второй сессии замечательного курса mlcourse.ai.
Я долго сомневался идти на Дата Ëлку или нет, но в итоге знакомый чуть ли не силой затащил меня туда - и я не пожалел. На митапе было несколько людей знакомых по слаку ODS, я даже встретил пару людей из моего вуза. И потом, традиционно, пошли посидеть в баре.
Этот ивент был одной из важных вех в моём пути в DS - при работе в консалтинге ничего подобного не было, и было очень непривычно присутствовать на мероприятии, где люди из разных компаний делятся опытом и обсуждают рабочие вопросы. Плюс удалось увидеть людей, с которыми уже общался в слаке - это был совсем другой уровень.
С тех пор я посетил очень много мероприятий, но это было знаковым.
#datascience
Facebook мне сегодня напомнил о фото, которое было сделано 6 лет назад. Это было второе мероприятие по DS которое я посетил. Первым был митап по итогам завершения второй сессии замечательного курса mlcourse.ai.
Я долго сомневался идти на Дата Ëлку или нет, но в итоге знакомый чуть ли не силой затащил меня туда - и я не пожалел. На митапе было несколько людей знакомых по слаку ODS, я даже встретил пару людей из моего вуза. И потом, традиционно, пошли посидеть в баре.
Этот ивент был одной из важных вех в моём пути в DS - при работе в консалтинге ничего подобного не было, и было очень непривычно присутствовать на мероприятии, где люди из разных компаний делятся опытом и обсуждают рабочие вопросы. Плюс удалось увидеть людей, с которыми уже общался в слаке - это был совсем другой уровень.
С тех пор я посетил очень много мероприятий, но это было знаковым.
#datascience
❤11👍1
Pixel Aligned Language Models
PixelLLM - новая vision-language model, которая умеет работать с локализацией в изображениях, например, используя points или bounding boxes как входные или выходные данные. При использовании локаций в качестве входных данных, модель создаёт captions к указанным объектам или регионам. При генерации локаций в качестве output, модель находит пиксельные координаты для каждого слова, сгенерированного языковой моделью.
Модель была претренирована на датасете Localized Narrative, который включает в себя captions, сматченные с перемещениями внимания человека на изображении. Полученную модель можно использовать для различных задач, связанных с локализацией на изображениях, включая referring localization, location-conditioned captioning и dense object captioning.
Статья
Проект
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
PixelLLM - новая vision-language model, которая умеет работать с локализацией в изображениях, например, используя points или bounding boxes как входные или выходные данные. При использовании локаций в качестве входных данных, модель создаёт captions к указанным объектам или регионам. При генерации локаций в качестве output, модель находит пиксельные координаты для каждого слова, сгенерированного языковой моделью.
Модель была претренирована на датасете Localized Narrative, который включает в себя captions, сматченные с перемещениями внимания человека на изображении. Полученную модель можно использовать для различных задач, связанных с локализацией на изображениях, включая referring localization, location-conditioned captioning и dense object captioning.
Статья
Проект
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
🔥4
What's your "it's not stupid if it works" story?
Я тут увидел на ycombinator прекрасное обсуждение неожиданных технических решений. Из того, что позабавило:
- при обновлении приложение делает всякие действия на экране (перетаскивание иконок и прочее), что не хочется показывать юзерам. Решение: сделать скриншот экрана и показывать юзеру этот скриншот, а в это время программа делает все эти действия.
- много лет назад Google Chrome плохо работал с Windows Screen Reader. Переименование chrome executable в firefox.exe исправило проблему.
Ссылка
Я тут увидел на ycombinator прекрасное обсуждение неожиданных технических решений. Из того, что позабавило:
- при обновлении приложение делает всякие действия на экране (перетаскивание иконок и прочее), что не хочется показывать юзерам. Решение: сделать скриншот экрана и показывать юзеру этот скриншот, а в это время программа делает все эти действия.
- много лет назад Google Chrome плохо работал с Windows Screen Reader. Переименование chrome executable в firefox.exe исправило проблему.
Ссылка
😁6❤🔥1❤1🔥1
Очередной виток споров о плагиаризме в моделях генерации картинок
На днях вышла новая версия Midjourney и снова пошли споры о том, генерят ли модели новые изображения или собирают по кускам из существующего. В качестве примера приводится то, что если подать довольно общий промпт про Infinity War, моделька выдает изображения, очень похожие на оригинал. Но мне как-то не понятно доказывает это что либо или нет.
Ссылка
#datascience
На днях вышла новая версия Midjourney и снова пошли споры о том, генерят ли модели новые изображения или собирают по кускам из существующего. В качестве примера приводится то, что если подать довольно общий промпт про Infinity War, моделька выдает изображения, очень похожие на оригинал. Но мне как-то не понятно доказывает это что либо или нет.
Ссылка
#datascience
🤔4😍2
StreamDiffusion: A Pipeline-level Solution for Real-time Interactive Generation
StreamDiffusion - это новаторский real-time диффузионный пайплайн для интерактивной генерации изображений, улучшающий существующие модели диффузии. Он преобразует sequntial denoising в batch denoising, повышая пропускную способность. Включает новую систему input-output для параллелизации и использует алгоритм RCFG для сокращения вычислений в U-Net. Также вводится фильтр SSF для оптимизации энергопотребления. StreamDiffusion достигает ускорения в 1.5x по сравнению с обычными методами и до 2.05x быстрее, чем CFG. Сочетание предложенных стратегий и существующих инструментов ускорения позволяет достичь до 91.07fps на RTX4090, улучшая пропускную способность AutoPipeline от Diffusers более чем в 59 раз. Кроме того, значительно снижает энергопотребление - до 2.39x на RTX3060 и до 1.99x на RTX4090.
Paper link
Code link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
StreamDiffusion - это новаторский real-time диффузионный пайплайн для интерактивной генерации изображений, улучшающий существующие модели диффузии. Он преобразует sequntial denoising в batch denoising, повышая пропускную способность. Включает новую систему input-output для параллелизации и использует алгоритм RCFG для сокращения вычислений в U-Net. Также вводится фильтр SSF для оптимизации энергопотребления. StreamDiffusion достигает ускорения в 1.5x по сравнению с обычными методами и до 2.05x быстрее, чем CFG. Сочетание предложенных стратегий и существующих инструментов ускорения позволяет достичь до 91.07fps на RTX4090, улучшая пропускную способность AutoPipeline от Diffusers более чем в 59 раз. Кроме того, значительно снижает энергопотребление - до 2.39x на RTX3060 и до 1.99x на RTX4090.
Paper link
Code link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
🔥3
Данные люди
Привет, друзья! 🐕 Мы рады сообщить вам, что открываем новый сезон! Встретимся уже 28 сентября в 19.00 по мск. Гость выпуска: Андрей Лукьяненко, Senior Data Scientist @ Careem. Поговорим о пути грандмастера, отличиях между российскими и иностранными командами…
А вот и записи подъехали:
Apple https://clc.to/uIt30w
Castbox https://clc.to/BrsctA
Google https://clc.to/ztiyMg
Яндекс https://clc.to/uAvgMw
Simplecast https://clc.to/RV3FWQ
Apple https://clc.to/uIt30w
Castbox https://clc.to/BrsctA
Google https://clc.to/ztiyMg
Яндекс https://clc.to/uAvgMw
Simplecast https://clc.to/RV3FWQ
Apple Podcasts
Путь грандмастера — как всё успеть. Андрей Лукьяненко, Senior Data Scientist @ Careem
Podcast Episode · Данные люди · 25/12/2023 · 38m
🔥6❤3
Fast and dirty RAG on my own documents
Недавно я увидел вот такое обсуждение на ycombinator. Автор спросил какие сейчас существуют простые способы извлечения информации из своих документов. Естественно, все порекомендовали RAG (Retrieval-augmented generation) с помощью LlamaIndex.
Я веду ежедневный дневник довольно давно, в нём уже 1.6к записей. Где-то год назад я пытался натренировать небольшой трансформер на этих текстах с нуля для извлечения информации, но, что ожидаемо, он работал плохо: частично из-за небольшого объёма данных, частично из-за того, что тексты на нескольких языках.
Собственно говоря, я решил попробовать применить RAG к своим записям. Технически в этом ничего сложного, но мне было интересно сколько времени это займёт и насколько хорошо будет работать.
Первый шаг - подготовка данных. Я веду дневник в Evernote, из него записи можно экспортировать либо в проприетарный формат, либо в HTML. Логично было выбрать второе. Дальше, с помощью BeautifulSoup я извлек тексты и сохранил каждую заметку в отдельный файл.
Дальше можно было использовать сам LlamaIndex. Оказалось достаточно было использовать базовый пример из туториала:
Вот и всё, дальше можно задавать вопросы и смотреть на результаты. На вышеописанные шаги у меня ушло менее часа и большая часть времени была потрачена на экспорт данных и формирование индекса.
Я попробовал позадавать разные вопросы и ощущения по результатам смешанные:
• если вопрос очень конкретный и ответ есть в одной заметке - я получу подходящий ответ
• если спросить что-то общее типа "что я ел в таком-то кафе" и есть несколько записей об этом, ответ будет из последней или рандомной записи
• надо задавать вопросы на том же языке, на котором написана заметка. Например, если есть заметка на испанском языке, то запросы на английском языке к ней не сработают
• если задавать "суммаризирующие" вопросы, типа "что я делал в такой-то период", то многое будет пропущено
• на многие вопросы не получаю ответа, даже если в заметках есть чёткие ответы
Я думаю, что основная причина ошибок заключается в том, что заметки совсем не структурированы и многое может подразумеваться, поэтому не описано полностью. Плюс использование нескольких языков дополнительно усложняет всё.
Но было интересно попробовать :) Интересно, был ли у кого-нибудь более успешный опыт извлечения информации из таких совсем не структурированных данных?
#datascience #life
Недавно я увидел вот такое обсуждение на ycombinator. Автор спросил какие сейчас существуют простые способы извлечения информации из своих документов. Естественно, все порекомендовали RAG (Retrieval-augmented generation) с помощью LlamaIndex.
Я веду ежедневный дневник довольно давно, в нём уже 1.6к записей. Где-то год назад я пытался натренировать небольшой трансформер на этих текстах с нуля для извлечения информации, но, что ожидаемо, он работал плохо: частично из-за небольшого объёма данных, частично из-за того, что тексты на нескольких языках.
Собственно говоря, я решил попробовать применить RAG к своим записям. Технически в этом ничего сложного, но мне было интересно сколько времени это займёт и насколько хорошо будет работать.
Первый шаг - подготовка данных. Я веду дневник в Evernote, из него записи можно экспортировать либо в проприетарный формат, либо в HTML. Логично было выбрать второе. Дальше, с помощью BeautifulSoup я извлек тексты и сохранил каждую заметку в отдельный файл.
Дальше можно было использовать сам LlamaIndex. Оказалось достаточно было использовать базовый пример из туториала:
= SimpleDirectoryReader("notes").load_data()
index = VectorStoreIndex.from_documents(documents, model_name='gpt-4-1106-preview')
query_engine = index.as_query_engine()Вот и всё, дальше можно задавать вопросы и смотреть на результаты. На вышеописанные шаги у меня ушло менее часа и большая часть времени была потрачена на экспорт данных и формирование индекса.
Я попробовал позадавать разные вопросы и ощущения по результатам смешанные:
• если вопрос очень конкретный и ответ есть в одной заметке - я получу подходящий ответ
• если спросить что-то общее типа "что я ел в таком-то кафе" и есть несколько записей об этом, ответ будет из последней или рандомной записи
• надо задавать вопросы на том же языке, на котором написана заметка. Например, если есть заметка на испанском языке, то запросы на английском языке к ней не сработают
• если задавать "суммаризирующие" вопросы, типа "что я делал в такой-то период", то многое будет пропущено
• на многие вопросы не получаю ответа, даже если в заметках есть чёткие ответы
Я думаю, что основная причина ошибок заключается в том, что заметки совсем не структурированы и многое может подразумеваться, поэтому не описано полностью. Плюс использование нескольких языков дополнительно усложняет всё.
Но было интересно попробовать :) Интересно, был ли у кого-нибудь более успешный опыт извлечения информации из таких совсем не структурированных данных?
#datascience #life
🔥10✍1