3348
Канал о пути к Kaggle competitions (теперь уже) GrandMaster и поте, которым обливаешься в процессе Последний авторский канал про мл, претендующий на искренность и позволяющий ставить клоунов Для контакта пишите в сообщения канала, они бесплатные
Теперь образ Рустама приследует меня всюду
Читать полностью…
X X^t can be faster (Score: 150+ in 8 hours)
Link: https://readhacker.news/s/6uANa
Comments: https://readhacker.news/c/6uANa
Человечество:
Изобретает LLM-driven поиск, чтобы не читать булшит от маркетологов и ллмки переписали все без воды и CEO-оптимизации
Маркетологи:
МЫ СОБРАЛИ ДЛЯ ВАС ПЯТНАДЦАТЬ ТЫСЯЧ ПРОМТОВ КОТОРЫЕ ПОЗВОЛЯТ ВАМ ЛУЧШЕ ИСКАТЬ С ПОМОЩЬЮ AI
Python's new t-strings (Score: 154+ in 5 hours)
Link: https://readhacker.news/s/6t8rs
Comments: https://readhacker.news/c/6t8rs
Новое соревнование на Kaggle:
Yale/UNC-CH - Geophysical Waveform Inversion
Цель- инвертировать отражения сейсмических волн. Надо по 3D (два направления и время) предсказать карту глубин.
На kaggle только часть датасета в 108 гб, но полный датасет весит 2.2 террабайта. Тут есть нюанс- для каждой уникальной карты глубин есть 500 замеров, чтобы их усреднить и уменьшить шум.
Метрика MAE по 69 колонкам (мультирегрессия)
По сути нам нужно из данных
p(*), t, x, z и (s + eps) вычислить c(*) в заданных точках.
Мои шесть семестров дифуров из универа напряглись, хотя гиперболическое дифференциальное уравнение в частных производных мы кажется отдельно не разбирали
Мне в свое время очень нравилась идея поженить свои знания МЛ и время потраченное на дифуры и уже была хорошая сорева для этого:
Google Brain - Ventilator Pressure Prediction
Там нужно было моделировать давление в легких в зависимости от нагнетаемого объема воздуха, что хорошо описывается дифурами, но в топовых решениях были просто plug-n-play трансформеры 😭
Мою элитную LMU-магистратуру в этом году закрыли, потому что она оказалась слишком дорогой для немецкого правительства. Но в Германию все еще без проблем берут всех желающих и прошедших конкурсный отбор.
Тут на дружественном канале вышла как раз подборка немецких магистратур:
->>> подборка <<<-
Добавил бы от себя, что с этого года в TUM надо платить 6к евро в год за учебу, но это только в нем и остальные универы стоят порядка 100 евро в семестр + расходы на проживание
Kaggle для академиков
Прямо сейчас проходят соревнования, хорошее место в которых позволит опубликовать свой work-note и выступить с воркшопом на конфах CVPR25 (A+) / CLEF (A)
1. AnimalCLEF25 @ CVPR-FGVC & LifeCLEF
2. FungiCLEF25 @ CVPR-FGVC & LifeCLEF
3. PlantCLEF2025 @ LifeCLEF & CVPR-FGVC
4. GeoLifeCLEF25 @ CVPR & LifeCLEF
5. FathomNet 2025 @ CVPR-FGVC
Отдельно от них стоит BirdCLEF+ 2025. Это потому что за нее, в отличие от 5 предыдущих дают медальки, а значит конкуренция кратно выше. И это на самом деле очень хорошо, потому что можно на мягких лапах подкрасться к хорошим местам на первых пяти соревнованиях и против вас не будет драться на смерть весь консалтинг-отдел NVIDIA с 10к A100 в кармане. Отдел будет драться со мной за медальку на птичках.
А там глядишь, воркшоп с work-note на CVPR, магистратура в École Polytechnique и уютный офис Google в Париже с неплохой французской бытностью.
На фото это Эйфелева башня. Знаю, мыло, но ночью с рук сложно сделать совсем четкий снимок на polaroid. А почему я говорю именно про Париж- вы спросите лучше в лс.
А научиться решать соревы можно прямо вместе с @pseudolabeling
Guess who's back, bitch
Такие конечно эмоциональные качели от 'Я БЫЛ ПРАВ С САМОГО НАЧАЛА' до 'Ну не смог и не смог, ну чего бухтеть то'
March mania начался, все ставки сделаны и ставок больше нет.
Собственно задача этого когда, как и почти все время до этого- это предсказать исход матчей точнее, чем остальные кагглеры в терминах Brier-score
Здесь могла бы быть реклама вашей букмейкерской конторы.
🏀 🏀 🏀
Пока все три прогноза заходят, но и матчи вроде изи
🏀 🏀 🏀
Покупайте экспресс на матчи женской лиги NCAA
Через 19 дней будем знать результаты
Разбор решений NeuralPS Lux 3
#lux
Начинаем с третьего места, которое занял @aDg4b, загала называемый нами "Ворона в шляпе". Он уже не раз участвовал в simulation-соревнованиях, в том числе выиграл первый Lux и Kore 2022. В личной беседе @aDg4b отметил, что симуляционные задачи для него – самые интересные.
Основная идея
Решение построено на Imitation Learning (IL). Вместо того, чтобы учить награды или другие механики, модель просто обучается повторять действия сильных соперников, основываясь на их наблюдениях игрового поля.
Архитектура
Модель состоит из двух частей, которые не удалось объединить в единый end-to-end пайплайн:
1. World-wise UNet – предсказывает действия для всех агентов сразу.
2. Unit-wise SAP-UNET – дополнительная сеть, работающая как "модуль наведения". Если первый UNet приказывает стрелять, этот модуль решает, куда именно.
(Если у кого-то есть идеи, как объединить такие компоненты в end-to-end модель, напишите!)
Первая сеть: World-wise UNet
Входные данные:
Полный набор информации о мире (размерность 28×24×24):
24×24 – игровое поле.
28 каналов – различные характеристики среды (тип клетки, количество энергии и т. д.), а также память о прошлых позициях кораблей, времени сколько времени не наблюдали клетоку и прочее.
Глобальные параметры матча (инжектятся в bottleneck):
Дальность видимости кораблей, дальность стрельбы, параметры "ветра" и тд.
Выход сети:
6×24×24 – вероятности каждого действия для каждой клетки.
Тут была проблема, тк этот UNet не мог корректно обработать ситуации, когда несколько юнитов пытались занять одну и ту же клетку или выстрелить по ней одновременно. Поэтому такие конфликты разрешались через рандом.
Вторая сеть: Unit-wise SAP-UNET
Входные данные:
Полный feature map + маска позиции юнита.
Выходные данные:
24×24 – вероятности выбора клетки для стрельбы.
IL
В качестве "донора" для IL использовались топ-2 команды (о которых мы еще поговорим):
1. С помощью Kaggle API загружались данные о матчах
2. Отбирались только те, где донор победил
3. В них фильтровались победы, где результат матча еще не предрешен.
Этого оказалось достаточно для сходимости модели, что для меня удивительно.
"Хорошие кагглеры думают, великие — воруют" (с) Фанаты Плескова
Сходка админов тг каналов
Предлагаю перечислить их всех в комментах
Waagh закончен, получилось выбиться только в ~65 место. 🥉
Финальные результаты будут через две недели, когда боты в симуляции сойдутся и рейтинг устаканится.
Даже видимо в глобальном рейтинге каггла упаду немного, но не сильно страшно.
Разборы лучших решений, как только они появятся приведу. В это соревновании было очень много разных приколов и оно было сильно более вознаграждающим, чем среднее обычно. Думаю буду в других симуляциях тоже участвовать, потому что пространство для маневра бешеное, а конкуренция будто бы даже ниже
Верхнеуровнево можно наше решение тут оценить:
https://www.kaggle.com/competitions/lux-ai-season-3/discussion/567567
Вместе с разборами топовых решений приплету еще свои идеи, если их никто не реализовал.
В соревнова LUX 3 забавная ситуация:
1. Осталось 12 дней до дедлайна
2. 5 дней до конца соревы
3. До сих пор в ноутбуках нет работающего решения на РЛ, только хороший бейзлайн бот на эмпириках. У меня вот RL тоже не заводится, особенно self-play
4. Из топовых команд кажется у топ 10-2 только получилось завести разного уровня рльные решения
5. Простая докрутка публичного бота на эмпириках дает бронзу
А у вас как дела?
Бета-тест — это когда ты не уверен в своём глобальном апдейте и выкатываешь его на ограниченное число пользователей, чтобы собрать обратную связь.
Альфа-тест — это когда ты настолько не уверен в своём апдейте, что сначала платишь людям за то, чтобы они его попробовали.
Сигма-тест — это когда ты сразу выкатываешь и сразу наблюдаешь за падающими графиками.
Ко мне снова пришли миньоны Рустама. В этот раз их видимо переалайнили: боты перестали хоть как-то отвечать на сообщения или как-то видоизменять скрипт. По ощущениям- там 50 разных фраз внутри и бот моделькой выбирает самый правдоподобный ответ. Скукота, но прогресс на лицо. Боты стали еще скучнее и больше похожими на классических спамеров.
А вот блеклист видимо все еще не прикрутили, чтобы токены на меня и других хейтеров не тратить. Удивительно, насколько Рустам читал lean startup, но не понимал что пишут
Сори что без оригинального контента пока
Читать полностью…
Approved:
Если занять хорошее место на Forams Classification 2025, то позовут выступать на семинаре CVPR.
Продолжая тему академичных соревнований:
Forams Classification 2025
Соревнование от CVPR и хорошее место возможно откроет вам выступление на воркшопе CVPR и приглашение на конфу. Но вообще авторы в соревновании ничего не пишут и не обещают по поводу конфы. Я им на всякий случай написал имейл, так что если они вдруг сподобятся ответить- я вам расскажу. В соревновании нет медалек, так что сильной конкуренции и дядек с личными H20 не будет
Данные тоже забавные:
3D сканы окаменелых моллюсков 128x128x128 вокселей и 15 классов. Загвоздка в том, что на каждый класс дано по 15 размеченных семплов, прямо как у мня на парах по классическому CV в свое время.
Данных всего 18424 примеров, так что подавляющая часть вообще не размечена.
Метрика- F1.
План для изи ачивки в академической карьере:
1. Берем команду из 5 человек
2. Смотрим глазами все классы и каждый размечает по 300 примеров (всего уже 1500 примеров)
3. Учим на jpeg-проекциях вокселей от авторов что-нибудь простое, типа Resnet.
4. Проверяем за резнетом и исправляем ошибки для самых уверенных классов
5. Учимся еще раз
6. Проверяем еще раз
7. ...
8. PROFIT!
🏀Не долго музыка играла, March Mania кончилась и все команды сыграли. 🏀
ПОЛУЧИЛОСЬ ОЧЕНЬ ПЛОХО
В этот раз было достаточно много 'Внезапных побед', так что после первых раундов меня довольно быстро потопило.
Из идей, которые можно вынести на будущее:
🔸 Надо обязательно участвовать. Это буквально лотерейный билет на solo gold — самый сложный шаг на пути к Kaggle Grandmaster, и его вполне можно вытянуть даже из паблик кернела с хорошим сидом
🔸 Вместо ELO — лучше GLIKO (версия 2). Он позволяет задавать разную дисперсию силы для разных команд, что особенно важно для нестабильных команд
🔸 Смотреть надо не на разницу очков, как Raddar, а на offense-defense метрики, как Джордж. Например, в попытках атак на кольцо хорошо видно, что одни команды закидывают трёшки, а другие играют в проход под кольцо. Результаты тоже сильно разные.
🔸 Женский баскетбол требует очень "неуверенного" подхода. Уровень команд более ровный, денег меньше, тренировки проще. В гранд-финале центровая проходит под кольцо и забивает сверху, а ее даже никто не пытается заблокировать. Фэнтези-баскет какой-то.
🔸 Последние матчи команды до турнира — самые важные. Игроки в NCAA проводят максимум 4 года, а звёзды уходят в профи уже через 2. Значит, старая статистика быстро устаревает и баланс сил меняетя.
㊙ Секретный хинт: можно взять отношения шансов на победу у букмейкеров и посмотреть, где модель фатально ошибается с распределением шансов в турнире через прямую симуляцию. Я наверно в следующий раз буду с ней блендить даже. Так можно отловить 'немодельные изменения', например травмы игроков
В строю наших слонов-компетишн-мастеров прибавилось:
/channel/AparinAI/123
🥇 Первое место на NeurIPS Lux AI 3
За первое место соперничали в основном только три топовые команды. Давайте разберем ключевые решения победителей соревы:
Массовый фичинжиниринг
• Создали более 1000+ признаков для каждого тайла (напомню, их размер — 24×24)
•Сами написали PPO с V-trace на PyTorch
• Тоже двухголовая архитектура. Одна голова выбирает действие, а вторая определяет, куда стрелять, если действие связано с выстрелом
• Приделали еще и голову, которая предсказывает, куда шагнут враги в следующий момент, даже если враг не наблюдается. Таким образом, модель научилась стрелять «вслепую» 👀
• Обучались в формате bfloat16 на 1.5 млрд матчей. Всего за всю соревновательную сессию сыграли около 20 млрд матчей ⚡
Все другие секреты PPO уже разобраны, поэтому давайте сосредоточимся на поистине уникальном приеме команды:
🔥 Противодействие Imitation Learning (тут еще есть второе мнение от настоящего грандмастера)
• С первого люкса команда понимала, что многие полагаются на imitation learning, и решила активно противодействовать этому.
• Были обучены две модели — слабая и сильная (предыдущая лучшая и текущая) — с рандомным выбором, какая из них будет играть во время инференса.
• Сильная модель работала всего в 15% случаев, но писала об этом в логи игры, позволяя после матча распарсить и понять какая модель играла и замерять эффект. Все остальное время учили IL оппонентов плохому
• Анализ логов после матчей позволял точно оценить преимущества сильной модели относительно предыдущей. К тому же, топовые команды генерировали около 1000 матчей в день уже на лб (из них ~150 с сильной моделью), так что можно было проверить статзначимость улучшения.
• Под конец модель настолько раздулась, что две модели не помещались в сабмишн, так что пришлось оставить только одну и добавить к её атрибутам шум для того, чтобы портить трейн сет всем подражателям
#lux
Опустился в бронзу из-за драмы:
Marquette, в победе которого моя модель уверена на 97%, проиграли New Mexico, причем из-за пары рандомных трехочковых в начале начали дизморалить и пытаться тоже забить издалека вместо борьбы под кольцом. Даже на графике видно, на сколько они все время были чуть-чуть позади и под конец окончательно сдали нервы. Просто сравните плотность атак из-за трехочковой линии у черных (New Mexico) и синих (Marquette)
UPD:
Драма продолжается
После этого разгона с New Mexico успел побывать на 4 🥇 месте (в деньгах 💰) и опуститься даже из бронзы на 177 место из-за какого-то неожиданно хорошего перфоманса Миссисипи
Ну что же, буду использовать полученный опыт в следующем году
Пока что единственный РУЧНОЙ ЧЕРВЬ мастер в этом казино
Читать полностью…
Новый день — новый Lux. Безоговорочное второе место
#lux
На этот раз код на Rust, критика JAX и доминация на всем протяжении соревнования.
🚀 Почему Rust?
Кагглеры обоснованно решили, что JAX — это забагованная, медленная штука, которую писали резерчеры, и для нормального Gym-энва она не подходит. Поэтому взяли и закодили свою среду на чистом Rust.
В силу того, что можно было скачивать реплеи игроков и проверять, что выводы двух сред совпадают, материала для тестов было хоть отбавляй. Это сильно упростило процесс. Правда, когда организаторы внезапно релизнули балансный патч и поменяли правила на середине соревы, пришлось рефакторить и тестить снова.
Вывод: в компилируемых языках test-driven разработка — мастхэв.
🛠️ Раз уж начали, то…
Если уже написали свою среду, то почему бы сразу не запилить feature extraction? В процессе написания среды они уже глубоко погрузились в механику игры и четко знали, как игроку показывают и что. Это невероятно помогает в feature engineering, проверил на себе.
Сначала правда код не запускался в среде Kaggle, но помогла компиляция в докере через Kaggle image. В итоге кодовая база разрослась до:
📌 10к строк на Rust
📌 6.5к строк на Python
Фичи без супер-изысков:
🗾 Всё, что знаем о поле (прямо сейчас)
🗾 Всё, что видели, но больше не видим
✅ Всё, что знаем просто об игре: настройки, урон, ветер, очки противника, номер хода и т.д.
✅ Всё, что знаем о будущем игры: куда двинет ветер, какие будут препятствия и куда они двинутся
Из особо интересного: энергетические поля. Посмотрели глазами на рисунки поняли, что их не так много. Поэтому, видя кусочек карты, можно было восстановить энергию на всей карте. Это помогало эффективно планировать маршруты.
🏗️ Архитектура модели
✔ Маскирование недопустимых действий (например, нельзя выйти за карту, влететь в астероид или стрелять без энергии)
✔ ResNet со skip-connections
❌ Трансформер пробовали, но не завёлся
✔ Алгоритм обучения — PPO
✔ 600 миллионов игр для сходимости
🔥 Производительность
Редкий случай, когда авторых хвастаются железом:
💻 CPU: Ryzen 9950X
🎮 2 x GPU: 3090 + 2070 Super
🛠️ RAM: 64 GB
Скорость: 2800 степов в секунду
Для сравнения, с помощью Ray + JAX у меня получилось выжать 200 степов в секунду, и это уже было быстрее, чем у всех на форуме.
TL;DR:
1. 🔥 🦀🔥
2. ❌ JAX ❌
3. 2800 игр/сек на PPO
4. 600M эпизодов
5. ResNet все еще в моде
Если у кого есть проекты на стыке Rust и DS — пишите, очень хочу в таком поучаствовать. 🚀
Все больше вижу, как люди пишут свои маленькие тулы на компилируемых языках. Здесь раст, в #UBC был Cи. Приколы про Kaggle на C++ уже не совсем, правда?
Смотрю решения прошлого года по March Mania. Ежегодное соревнование по предсказанию исходов баскетбольных матчей, мощное как четвертый форвард, резкое как V-cut. В свое время ходил на секцию лет 8, так что грех не поучаствовать.
Ну так вот, бекграунды победителей прошлых лет:
1. Я учитель статов и победил околослучайно через симуляции из паблик кернела
2. Я работаю в гемблинге и это мой третий год участия. В прошлый раз я взял 7 место. В позапрошлый- сотое
3. Адам, город Мачиган, это мое первое соревнование после титаника. Ваще то я на си пишу
4. Нефритовый стержень партия удар (十有五而志于学- это цитата Конфуция)
5. Стефан, город Бруклин, 18 лет, я взял фичи и чет с ними сделал и даже чет завелось
6. Пхд студент, у которого тема тезиса- беттинг на соревнованиях
7. РУЧНОЙ ЧЕРВЬ (Самсон, если ты подписан и читаешь это, то напиши в лс)
8. Безликий анонимный японец
А вот из ржомб из моей дс-жизни:
Раз в пару месяцев ко мне приходит в лс бот из AISender. Это такой провайдер этих всех духовных ботов, заманивающих вас по ссылке в комментах. Но иногда они приходят в лс и предлагают свои «услуги»
Обычно такие боты используют API (опенаи например) и у них есть бюджет на количество запросов. В прошлый раз я кормил его сценарием Шрека до тех пор, пока у бота не кончились токены.
В этот раз я нашел СЕО AISender в линкдине и кормил бота утверждением в нечастивости формата «Рустам Габидуллин XXX”
Видимо Рустам делает работу над ошибками, потому что через пару часов после ухода бота в оффлайн (токены кончились), бот мне ответил «Дмитрий Руденко ХХХ» и кинул в чс.
Мораль:
Рустам обучается, но в наших силах истратить все его токены на сценарии уже почти пяти частей Шрека
А вы как боретесь с этим порождением гениальных маркетологов?
Хочу сильно стукаться и объявляю Waaagh в секторе Lux AI Season 3
Читать полностью…
Вот времена
В го дженерики
В питоне можно выключить GIL
Скоро в плюсах появится лайфтаймы
#intro
Welcome to Wonderland Тати.
Буду писать о науке, машинном обучении, искусстве, книгах, психологии, философии, карьере, фейлах, лайфхаках, Ирландии и мире.
И конечно же, кулстори из жизни, которые все так любят.