Интересное что-то
517 subscribers
2.72K photos
253 videos
139 files
4.52K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.me/asisakov_channel
Чат: https://t.me/youknowds_chat
Download Telegram
Forwarded from Neural Info
Прочитал тут прикольную статью про кэширование, советую изучить всем кто примерно представляет себе что такое кэширование, но никогда не погружался даже в базовые детали данной техники.

В статье рассказывается про скорость различных уровней памяти, trade-off объема и скорости памяти, стратегии кэширования в зависимости от различных потребностей приложения, а также в конце статьи можно узнать про некоторые техники замещения элементов в кэше, в частности про крайне популярный Least Recently Used (LRU) алгоритм.

https://planetscale.com/blog/caching

Ссылку на статью украл нашел в посте Антона.

#programming
Привет, товарищи-статистики!

Наконец-то написал про еще один метод последовательного тестирования, но очень свежий!

YEAST - YEt Another Sequential Test от ребят из Zalando от 2024-го года.

Это вам не методы из 40-х / 70-х / 80-х, которые индустрия переоткрыла для себя (хоть я и считаю, что Group Sequential Testing + "тщеность" бытия усилий самый простой, лаконичный и понятный из них + легче реализовывается)

Я наткнулся на него случайно: решил посмотреть на создателя известного калькулятора по AB - Эвана Миллера, в его ленте в Линкедин наткнулся на пост как раз про этот тест. И это оказалось - красиво!

Кажется, ребята смогли реализовать мечту многих начинающих AB-щников, а точнее даже типичного заказчика: при какой конкретно сумме транзакций / РТО / конверсий (условно, по B, но там чуть хитрее) мы сможем сказать, что результаты действительно лучше и надо катить. Так-то обычно заказчиками и начинающим после в ответ начинают рассказывать про критерии, и те немного начинают унывать от каких-то статистик, t-распределений..

Метод "идеалогически" является альтернативой всем ранее представленным тестам, работает с аблютной величиной метрики, - максимальная конкретика вместо t, лямбд и пр., - не нуждается в определении моделей данных как тот же (m)SPRT.

Метод уже внедрен в AB-платформу Zalando и является их стандартом.

Подготовил для вас, дорогие товарищи, максимально разжеванный разбор метода, в том числе математики, а она там может привести в уныние и бывалого :) Даже Эван намекнул: "they (Zalando) do real math instead of my 18th century aristocratic hand-waving" (он пытался что-то такое реализовать давненько)

Давайте поймём YEAST: Yet Another Sequential Test
Применимая в реальной работе модификация RICE

За последнее время уже с несколькими людьми из разных компаний обсуждал, как я модифицировал метод приоритизации RICE, и все говорили: «Да! У нас тоже все эти ситуации и проблемы есть!»

Да кто такой этот ваш RICE?
Длинный ответ можно прочитать, например, тут https://productstar.ru/rice.

А если коротко, то это метод приоритизации задач по нескольким критериям. Когда вам напихивают за воротник целый пучок задач, вы можете благодаря ему аргументированно понять, что вы в работу берете, а на что уже ручек не хватает.

Критерии простые (как я люблю):
- Reach (охват) – количество пользователей, которых затронет предлагаемая фича.
- Impact (влияние) – в некоторой мере оценочное суждение, насколько важна и нужна фича, насколько сильно она повлияет на пользователей.
- Confidence (уверенность) – степень уверенности в двух предыдущих оценках. Одно дело – вы подробный рисерч провели, а другое – вы пальцем в небо ткнули на основании своих ощущений.
- Effort (усилия) – трудозатраты на выполнение.

В теории это всё. Мол, так делайте, и спина болеть не будет.

Но на практике работы в разных командах и компаниях, где у моих команд было много заказчиков, я вывел еще два дополнительных критерия.

Коэффициент обманщика (пишу вам тут литературно приемлемым языком)
Помните сказку про мальчика, который кричал «Волки!»?

Так нередко встречается и в жизни. Есть заказчики, которые говорят: «Это точно очень надо», ты им делаешь, а они потом не пользуются. Или те, кто говорит: «Очень срочно!!!», ты делаешь, а они только откроют посмотреть недели через две-три. Или те, кто говорит: «Это блокер! Без этого нельзя продолжать работу!!!», а при детальном рассмотрении оказывается, что просто у пары людей из десятков что-то медленно работает и надо ждать дольше, чем обычно.

Все примеры – это настоящие истории. А то вдруг подумаете, что это я сочинил для красного словца, ведь кто будет в здравом уме обманывать и драматизировать?)

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

Коэффициент офигевшего
А еще бывает порой так, что вы посчитали все коэффициенты и задача объективно не сильно важна. А иногда даже просто от неё 0 профита. НО эту задачу хочет видеть какой-нибудь высокий/важный/громкий руководитель. И тогда у вас появляется сильно повышающий множитель.

Примеры тут тоже видел разные:
- На А/Б тестировании проверили, что автогенеренные картинки и крафтовые имеют одну и ту же кликабельность и один и тот же профит. Но у важного руководителя, видимо, нет другой важной работы, он отсматривает каждую картиночку и настаивает, чтобы было «сексуально» (я не выдумываю, это цитата). В результате люди будут кратно тратить больше времени и сил, чтобы босс был доволен, что у стрелочки не прямой хвостик, а волнистый.
- Очередная пассия начальника придумала (ни с кем не обсудив, конечно) и выдала в свою соцсеть, что компания сделает какой-то ивент. Теперь у отдела маркетинга новые планы 🙂
- Один руководитель хочет положить себе в резюме недостающий кусочек менеджерского пазла, и теперь у команды новый проект.

Итог
Нам часто на курсах, в книгах и статьях рассказывают очень складную теорию, которую можно применить к абстрактной задаче и понять, что делать дальше.

Но в реальной жизни не бывает объективных и отстраненных аргументов. Даже в компаниях с культурой эффективности и продуктовости. А уж в компаниях, где такой культуры нет, тем более будет человеческий фактор очень сильно выражен.

Так что, на моем опыте, RICE подойдет для 70-90% задач (я их называю политически нейтральными), но оставшиеся 10-30% будут обмазаны дополнительными понижающими и повышающими коэффициентами, и вам придется с этим смириться. Везде так. Различается только частотой и силой проявления.
Forwarded from Tensor Banana
Float - липс синк и говорящая голова на реал-тайм скорости

- на вход картинка 512х512
- лицо должно занимать 60% кадра и смотреть прямо. Если есть обрезка головы, например, макушка, на выходе будут сильные артефакты
- нет video2video, на вход только картинка
- поддерживает 7 эмоций, можно задавать вручную: 'angry', 'disgust', 'fear', 'happy', 'neutral', 'sad', 'surprise' (гнев", "отвращение", "страх", "радость", "нейтральность", "грусть", "удивление"). По умолчанию использует смешанные эмоции.
- аниме лица не анимирует
- скорость на 3090 почти реалтайм: 39 секунд аудио за 41 секунду обработки
- жрет всего 3.3 гига VRAM при 20 секундах аудио
- в комфи ставится через manager по URL без всяких танцев с бубном

Надо бы сделать в комфи авто-вырезалку квадратного портрета с последующей склейкой обратно поверх исходного лица.


код: https://github.com/set-soft/ComfyUI-FLOAT_Optimized

ноды для comfy: https://github.com/set-soft/ComfyUI-FLOAT_Optimized

видео примеры: https://deepbrainai-research.github.io/float/
Interpolation.pdf
2.4 MB
Интерполяции здорового человека. Я более-менее дописал обещанный несколько месяцев назад текст про интерполяции и делюсь им с дорогими пампищиками. Замечания, рекомендации и предложения are welcome. Текст ещё будет расширяться в смысле библиографии и возможно будет дописан кусочек про тригонометрические интерполяции, но, думаю, что в текущем виде уже можно показывать :-)

Что в тексте. Я проповедую идею, что на все интерполяционные задачи полезно смотреть с точки зрения сопряженного пространства. Идея в том, что «данные для интерполяции» нужно понимать как линейные функционалы. То есть как базис сопряженного пространства. Затем подбирать к ним дуальный базис в исходном пространстве функций (тех, при помощи которых интерполируем) и собирать уже из этих многочленов интерполирующие функции.

Тут есть два важных момента.
1. Формулы получаются символьные, а значит универсальные.
2. Не особо важно какими функциями интерполировать. Можно полиномами (как в обычных сплайнах и интерполяционном многочлене Лагранжа), а можно тригонометрическими функциями, можно и какими-нибудь экспоненциальными даже. Или даже смешанными наборами. В общем чем угодно — не важно. Формулы позволяют.

Есть очевидная трудность с вычислением самих базисных функций. Но, с другой стороны, при выбранной схеме интерполяции эта сложная задача решается один раз. А дальше за счёт символьной природы формул — просто подставляем нужные значения параметров.

Ну и немного эксклюзива.
Можно поиграться с формулами самостоятельно, я сделал проект в colab. Не ругайтесь, весь код сгенерирован при помощи #AI и, вероятно, ужасен :-)

1. Про базис тригонометрических функций тут.
2. Про интерполяцию тригонометрическими функциями тут.
3. Вычисления для сплайнов 5-го порядка здесь.

Надеюсь, что будет полезно и популярно. #научпоп
Каталог каталогов по ML и ИИ.

1. Мини-проекты по машинному обучению с Python
Небольшие проекты для понимания основных концепций. Создание моделей машинного обучения с Scikit-learn для регрессии и классификации.

2. Анализ данных и библиотека проектов машинного обучения
Учебные материалы, код и наборы данных для проектов анализа данных и машинного обучения.

3. Идеи для проектов машинного обучения
Идеи проектов: машинное обучение, НЛП, компьютерное зрение, рекомендательные системы.

4. 500+ проектов машинного обучения и ИИ с кодом
500+ реальных проектов: машинное обучение, глубокое обучение, компьютерное зрение, НЛП.

5. Проекты генеративного ИИ
Современные проекты и сервисы генеративного ИИ. Инструменты для генерации текста, изображений, аудио, видео.

6. Инструменты и проекты LangChain
Инструменты и проекты с фреймворком LangChain для приложений на основе больших языковых моделей и ИИ-агентов.

7. Решения Kaggle
Решения и идеи соревнований Kaggle. Лучшие подходы к решению задач машинного обучения.

8. Топ проектов глубокого обучения на GitHub
Популярные проекты глубокого обучения, ранжированные по количеству звезд. Фреймворки, инструменты и ресурсы.

9. Справочник по машинному обучению
Ссылки, учебные материалы и ресурсы по машинному обучению и глубокому обучению.

10. Ресурсы глубокого обучения
Учебники, проекты, книги и сообщества по глубокому обучению. Нейронные сети, обучение с подкреплением, исследования ИИ.

Обычно такое не люблю, но тут реально собраны тысячи полезных ссылок.
Тут и обучение и фреймворки и инструменты.
Все что может пригодиться в мире ИИ.
Подборки курируемые с десятками, а иногда и сотнями контрибьюторов.
И всё бесплатно. Лет на 5 обучения хватит.

#обучение #каталоги
———
@tsingular
Forwarded from .ml
Популярные SOTA-модели для суперразрешения

📍 Upscale-A-Video — модель для восстановления видео с низким разрешением, основанная на диффузии.

Архитектура: включает 8 UNet-блоков для обработки признаков разного разрешения. Процесс начинается с пирамиды Лапласа, которая последовательно уменьшает изображение, выделяя ключевые характеристики на каждом уровне. После этого осуществляется диффузионный процесс, который завершается передачей данных через вариационный декодер.


Что интересно:

📚 Модифицированные блоки UNet используют темпоральный механизм внимания — обучаются только временные слои, в то время как пространственные остаются фиксированными.

📚 Rotary Position Embedding использует вращательные матрицы для кодирования относительных позиций элементов в последовательности, что позволяет лучше учитывать временные зависимости.

📍 VideoGigaGan — SOTA-модель для видео суперразрешения, в которой ключевую роль играет функция потерь.

Архитектура: традиционный трансформер с UNet-подобным декодером. Важным аспектом является использование temporal attention, который позволяет передавать карты внимания между соседними кадрами. Это уменьшает размер модели и повышает её эффективность.


Что интересно:

📚 Модель предсказывает оптический поток для учёта больших движений между кадрами, что помогает лучше адаптироваться к изменениям.

📚 Применяет фильтры низких частот (anti-aliasing block) при пониженной размерности, что позволяет избежать эффекта мерцания и артефактов, которые часто встречаются в генерируемых видео.

Где взять данные для обучения моделей?


Ключевая сложность в обучении диффузионных моделей — необходимость большого количества данных. Их можно генерировать с помощью сложного пайплайна, который имитирует работу реальных камер смартфонов.

Процесс включает:

📌 Размытие из-за микродвижений.
📌 Уменьшение разрешения изображения.
📌 Добавление шума, характерного для камер при нормальном освещении.
📌 JPEG-сжатие, которое широко используется в современных устройствах.

Для обучения модели применяют подход, схожий с дистилляцией: модель дообучают на небольшом датасете реальных данных (real VSR). При этом важно учитывать loss между последними слоями исходной модели и новой, чтобы градиенты изменялись минимально на декодерной части.

💜 Этот пост написал Никита Алутис, ML-разработчик в Точке
Forwarded from Sinекура
Главный девиз Google — "Don't be evil" — почему-то совсем не даётся OpenAI. За что ни возьмутся, какая-то мутная ерунда получается. И хотя на этот раз сами результаты, кажется, под сомнение не ставят, давайте вспомним сложные отношения OpenAI с математикой. Я написал большой пост, здесь приведу сокращённый кусочек про FrontierMATH и IMO 2025:

Deep Think и IMO 2025: сложные отношения OpenAI и математики

В январе 2025 года разразился целый "бенчмарк-гейт". Датасет FrontierMATH — сверхсложный математический бенчмарк от Epoch AI, содержащий задачи хоть и с заранее известными ответами, но близкие к исследовательской математике. Я много раз рассказывал о нём в докладах; последний был на CS Space митапе.

И вот OpenAI анонсирует, что o3 набрала на FrontierMATH 25% в то время, как другие модели набирают около 2%. Величайший прорыв в математических рассуждениях? Нууу... в общем да, но со звёздочкой. Оказалось, что OpenAI профинансировала создание FrontierMATH и имела доступ к задачам, а писавшие задачи математики не знали о связях с OpenAI! Потом выяснилось, что есть "holdout" набор задач, к которому у OpenAI нет доступа, но всё это звучало подозрительно. В том, насколько это мутная история, легко убедиться по первоисточникам: просто посмотрите на саму статью Glazer et al. (2024) о FrontierMATH; arXiv помнит всё, и рис. 2 показывает разные версии этой статьи.

Независимая проверка показала, что o3-mini набирает на тестовом множестве FrontierMATH всего 11%. Потом o4-mini показала себя гораздо лучше, и сейчас две верхние строчки с огромным отрывом занимает o4, да и дальше только Gemini 2.5 Pro может конкурировать (рис. 3). Но все до сих пор вспоминают объявление о 25%.

А сегодня мы собрались ради IMO 2025. Мы только что обсуждали, что экспериментальная модель OpenAI решила 5 из 6 задач и достигла уровня золотой медали. Результат действительно впечатляющий... но опять есть нюанс. По словам инсайдеров, организаторы IMO попросили все AI-компании не красть внимание у детей и подождать неделю после церемонии закрытия, прежде чем объявлять свои результаты (рис. 4, рис. 5). А OpenAI объявила результаты сразу после церемонии закрытия, но за неделю до срока, о котором просили; более того, OpenAI не сотрудничала с IMO для официального тестирования.

А вот Google DeepMind повела себя корректно. Их модель Deep Think тоже решила 5 из 6 задач IMO 2025. Как и у OpenAI, речь идёт не об Alpha Proof 2, а о том, что обычная LLM, экспериментальный вариант Gemini под названием Deep Think, решал задачи на естественном языке.

Но, во-первых, Google дождалась официальной сертификации результатов IMO, прежде чем делать объявление. Во-вторых — и это куда важнее для нас, пользователей — модель, которая участвовала в IMO, "на самом деле очень близка к основной модели Gemini, которую мы предлагаем людям". То есть почти готовый продукт, а OpenAI заявляла, что до релиза их модели ещё не меньше нескольких месяцев.

В-третьих, решения Deep Think опубликованы, и вот как они выглядят: сравните рис. 6 (OpenAI) и рис. 7 (Deep Think); у Deep Think куда человечнее. Наверняка можно попросить LLM переписать решения от OpenAI более понятно — но это отчасти подтверждает заявления о более близком релизе.

История отношений OpenAI с математическими бенчмарками — пример того, как не надо строить репутацию. Каждый раз компания технически ничего не нарушает, но ведёт себя мутно, и осадочек всё накапливается и накапливается... Хотя о чём это я, осадок от OpenAI уже давно высыпается из бокала.

В итоге получается странно: в обоих случаях OpenAI ведь и правда сделала большие прорывы в AI для математики. Текущие результаты o4-mini на FrontierMATH никто под сомнение не ставит, да и решения задач IMO, скорее всего, получены честно. Но я уверен, что репутация OpenAI от этих историй проиграла, а не выиграла. И зачем, спрашивается, так было делать?

Как говорится, я решил пятьдесят задач из FrontierMATH, но никто не называет меня "Сэм-Великий-Математик"; я решил пять из шести задач IMO 2025, но никто не называет меня "Сэм-Чемпион-Олимпиад"...