🌟Фреймворк **CUDA-L1** сам научился оптимизировать код для GPU — и добился в среднем **3.12× ускорения работы модели**, а в пике — **до 120×**. .
Попросите любую LLM написать CUDA-код, и скорее всего, вы получите что-то, что либо не компилируется, либо работает мучительно медленно. Причина проста: качественного CUDA-кода в обучающих данных моделей почти не было.
Чтобы исправить это досадное упущение, Deep Reinforce AI создали систему CUDA-L1, которая основана на трехэтапном пайплайне: сначала supervised-обучение для освоения основ, затем self-supervised для практики и, наконец, контрастное обучение с подкреплением, чтобы было все максимально быстро.
🟢На первом этапе система училась писать корректный и компилируемый CUDA-код.
Для этого существующий код был аугментирован - создавались его вариации, чтобы повысить насмотренность модели.
🟢На втором этапе модель генерировала собственный CUDA-код, тестировала его и училась на работающих примерах, отсеивая неудачные.
🟢Самое интересное - третий этап.
Обучаемой модели показывали несколько реализаций CUDA-ядер вместе с их показателями ускорения, например: «kernel_v1 дает ускорение 1.2x», «kernel_v2 — 2.8x», а «kernel_v3 — 1.5x». Затем задали 3 вопроса:
🟠Почему kernel_v2 настолько быстрее?
🟠Какая стратегия оптимизации сработает еще лучше?
🟠Напиши ядро, которое превзойдет их все.
Таким образом, модель не гадает вслепую, а учится на конкретных примерах, анализируя причины разницы в производительности.
🟡Отдельная история - как победили reward hacking.
После обучения выяснилось, что более 30% сгенерированных реализаций пытались сжульничать - создавали дополнительные CUDA-потоки, которые выполнялись асинхронно.
Поскольку бенчмарк KernelBench отслеживал время только на основном потоке, код выглядел быстрее, чем был на самом деле, показывая фиктивное ускорение в 18 раз.
Другие уловки состояли в манипуляции гиперпараметрами задачи (уменьшение batch_size или размерностей) и кеширование результатов вычислений.
🟡Пришлось строить многоуровневую защиту.
Во-первых, в качестве "адвоката дьявола" взяли adversarial-чекер на базе DeepSeek-R1, который анализировал код на предмет эксплойтов с точностью обнаружения более 60%.
Во-вторых, собрали базу данных из более чем 500 уникальных паттернов взлома, это повысило точность обнаружения на 25%.
И в-третьих, применили математическое сглаживание и нормализацию наград, где любое подозрительное ускорение (от 1.5x для простых операций) дополнительно проверялось.
🟡После всех фильтров и проверок прогон на бенчмарке KernelBench оказался весьма позитивными.
Система успешно сгенерировала рабочий код для 249 из 250 задач, причем в 240 случаях код оказался быстрее базовой реализации.
Среднее ускорение по всем задачам составило 3.12 раза, максимальное - аж 120 раз. Медианное ускорение (50-й перцентиль) составило 1.42x, а 75-й перцентиль — 2.25x.
Производительность по уровням сложности задач распределилась следующим образом: на простых операциях среднее ускорение составило 2.78x, на последовательностях операторов - 3.55x, а на сложных задачах вроде полных слоев трансформера - 2.96x.
🟡Самое важное - это переносимость оптимизаций.
Код, оптимизированный на NVIDIA A100, был протестирован на других GPU. Результаты показали, что найденные паттерны оптимизации фундаментальны и работают на разных архитектурах.
Среднее ускорение на H100 составило 2.39x (успешных ускорений 227 из 250), на L40 — 3.12x (228/248), а на потребительской RTX 3090 — 2.50x (213/242).
▶️ Пока веса и код не опубликованы, но в ожидании можно покрутить интерактивное демо и воспроизвести тесты из пейпера - в репозитории проекта есть фрагменты CUDA-кода с отдельными версиями для разных GPU.
📌Лицензирование: GPL-3.0 License.
🟡Страница проекта
🟡Arxiv
🟡Demo
🖥Github
@ai_machinelearning_big_data
#AI#ML#CUDA#DeepReinforce#ContrastiveRL
Polymathic - междисциплинарный ИИ
Ох, какая классная межуниверситетская инициатива - Polymathic🔥.
Задача, которую они решают, заключается в создании ИИ моделей, которые используют информацию из наборов данных различных модальностей и разных научных областей, которые не имеют общего представления (например, текста). Такие модели могут использоваться в качестве надежных базовых показателей или можно сделать файн-тьюнинг для конкретных приложений. Такой подход может демократизировать ИИ в науке, предоставляя более сильные априорные модели для общих концепций, таких как причинность, измерение, обработка сигналов, и т.п.
В общем история с базовыми и генеративными моделями понемногу адаптируется к научным задачам, за что мы топим тоже 🤘. Реальных проектов пока немного, но есть, например, Multiple Physics Pretraining - подход к разработке больших предобученных физических суррогатных моделей или AstroClip - видимо модель CLIP для астрофизиков.
На данный момент кроме команды ученых есть и крутой консультативный совет, например, с Яном Лекуном (Yann LeCun) из Meta AI.
#AI#ML
ClimateLearn - машинное обучение в предсказании климата и погоды
ClimateLearn - это библиотека в питоне для доступа к самым современным климатическим данным и моделям машинного обучения стандартизированным и простым способом. Эта библиотека предоставляет доступ к нескольким наборам данных, зоопарку базовых подходов, а также набору метрик и визуализаций для крупномасштабного сравнительного анализа методов статистического масштабирования и временного прогнозирования.
В этом ноутбуке можно поучиться как пользоваться.
#ML#AI#climate
Seismic Foundation Model от создателя FaultSeg3D
Как говорится paper alert📖! Когда-то давно d 2018, тогда еще сотрудник Техасского Университета в Остине, Xinming Wu сделал синтетический датасет сейсмических моделей с разломами и обучил на нем довольно простую по нынешним временам сверточную нейронную сеть для сегментации разломов - FaultSeg3D. Написал статью и выкатил модель в октрытый доступ. На тот момент это был прорыв, так как модель работала во многом лучше существующих на тот момент инструментов.
Совсем недавно, он же сделал первый шаг к созданию первой базовой модели (Foundation Model) для сейсмического анализа недр и выпустил статью - "Seismic Foundation Model (SFM): a new generation deep learning model in geophysics". Особенность базовых моеделей в том, что они обучены на огромном количестве данных и служат отправной точкой для разработки специализированных моделей и могут быть легко адаптированы к широкому спектру применений.
Авторы накопали 192 сейсмических куба, >2 миллионов сейсмических разрезов и натренировали эту самую сейсмическую базовую модель, используя архитектуру Трансформера. Затем протестировали работу модели на различных задачах: классификация фаций, сегментация геологических тел, сейсмическая инверсия, подавление шумов и интерполяция сейсмической записи. Теперь они могут дообучать модель или использовать тонкую настройку для более узких задач. Побольше бы такого!
В обсчем, что тут сказать, Data is a King 👑. Есть данные, будет и базовая модель. Но только, сдается мне, что даже с "номинально" открытыми данными все не так просто и там куча условностей. Видимо по этому, ссылка на гитхаб в статье не работает 😀.
Статью можете нати во вложении!
#ML#AI#paper
Хакатончик от Xeek
Two Birds, One Neural Network - так называется новый хакатон от Xeek в области Generative AI. Звучит как-будто нужно сделать свой Dalle-E2, но на самом деле, задача выглядит немного иначе. По условиям хакатона, участникам нужно сделать нейронную сеть, которая максимизирует разнообразие генерируемых результатов, отвечающих двум условиям. Авторы хакатона проводят параллели с добавлением двух геофизических измерений для ограничения сценариев геологических моделей. Буквально, нужно построить нейронную сеть, которая генерирует разнообразные значения x0, x1, сохраняя при этом их природу в виде нисходящих или восходящих прямых линий, удовлетворяющих заданным функциям y1, y2, как показано на картинке.
Более подробное описание - тут. Призовой фонд $40К (первое место $19.5K).
#hackathon#AI#ML
Выделение объектов на Лидаре с помощью ML
LiDAR (Light identification, Detection and Ranging) - крутая штука. Это технология получения и обработки информации с помощью активных оптических систем (лазеров). Такой "лазерный дальнометр" для картирования объектов в 3Д и еще с координатами. Используется повсеместно в куче индустрий от беспилотных автомобилей до майнинга. Даже на айфонах есть (но не на моем 😢). На картинке, например, "лидарная" карта залива Линнхейвен в Вирджинии 🤩.
Но я даже не про красивые картинки. Они же просто красивые, а пользы сами по себе приносят мало. Польза есть, если, например, из этих моделей, по сути точек с координатами, вытаскивать реальные объекты. То есть делать сегментацию 💡.
Об этом и интересная статья на Медиуме: Introducing Segment-Lidar: Revolutionizing Unsupervised Instance Segmentation of Aerial LiDAR Data, которая рассказывает как применять крутейший алгоритм по выделению объектов SAM от компании Meta для выделения объектов на геопространственных данных, полученных с помощью Лидара (картинка 2). Статья, собственно, представляет собой пошаговую инструкцию, как это делать с помощью модуля в Питоне segment-lidar.
📖Medium
💻Github
#GIS#ML
NVIDIA и Physics Informed Neural Operator для нелинейных инженерных задач
Стараюсь краем уха следить за исследованиями в области physics informed machine learning, потому что эти модели машинного обучения, вроде как, могут получше работать с нелинейными физическими моделями сложной природы, а не только для того чтобы сделать свою фотку в стиле Барби. Больше всего в это вкладывается NVIDIA со своим Modulus. У меня даже пост про это есть.
А в этом линкедин посте, Анима Анандкумар, диерктор по ИИ в NVIDIA, рассказывает про применение нейронных операторов Фурье не только для моделирования потока флюидов под землей, но и для моделирования плазмы при ядерном синтезе, оптимизация литографических масок для дизайна микросхем и прогноза экстремальных погодных событий.
Ну и на сладенькое, на гитхабчике Caltech в открытом доступе лежат ноутбуки лекции из их последнего буткемпа, посвященного нейронным операторам.
Инджой -> Caltech AI4Science Bootcamp
#FNO#AI#ML
Комплексное глубокое обучение для моделей месторождений. Нажал на кнопочку - готово!
Руслан Мифтахов выпустил очередное видео, на этот раз про комплексное (end-to-end) глубокое обучение для моделирования месторождений. Посмотрите, будет интересно тем кто этим занимается. Видео основано на статье специалистов SLB "Deep learning for end-to-end subsurface modeling and interpretation: An example from the Groningen gas field".
Как и рассказывает Руслан, идея end-to-end глубокого обучения для моделирования месторождений довольно крутая и у нее есть прекрасная аналогия в мире беспилотных автомобилей - собираем все возможные алгоритмы прогнозы обстановки на дороге и автоматизации в одну систему. Что если сделать подобное и для дорогостоящего и длительного процесса моделирования подземных месторождений чего угодно, хоть нефти, хоть минералов 🤔?
Например, есть несколько видов данных (со скважин и сейсмические данные). Их нужно обработать, интерпретировать каждый вид данных особым способом, закартировать и наконец сделать 3D модель свойств горных пород и флюидов - типа, бурить сюда! Интересно, что модели машинного обучения уже представлены для каждого процесса в отдельности. Есть модели машинного обучения для обработки скважинных данных, есть модели машинного обучения для автоматического выделения тектонических разломов на сейсмике и так далее. Авторы статьи, делают один, на мой взгляд пока небольшой, шаг к полной автоматизации процесса интерпретации и моделирования. Они говорят, давайте соберем все эти модели и придумаем автоматический процесс, чтобы собрать данные, нажать на кнопочку и на выходе получить модель свойств всея Земли (на картинке). Это может быть модель пористости или плотности пород, да чего угодно.
Я лично знаком с авторами, коллеги все-таки. Действительно, у них есть работающие компоненты, которые они собрали в статье под одним зонтиком. Это в основном сверточные нейронные сети для различных задач. Идея крутая, но даже для частичной ее реализации, на мой взгляд, нужно пройти большой путь. Ведь то, что у нас под ногами скрыто от наших глаз, в отличие от того, что видит камера беспилотного автомобиля. Подземного сканера с супер-разрешением все еще нет, где ты Илон Маск? Поэтому в игру вступают неопределенность и сдвиг данных.
Неопределенность геологических моделей будет всегда, потому что этих моделей бескочнечность, ведь мы точно никогда не узнаем что там под землей, а можем лишь догадываться по обрывкам данных. Если эту неопределенность не учитывать - будет финансово больно, даже при наличии самых красивых моделей и самых глубоких обучателей. Сдвиг данных, возникает тогда, когда модель обученная на одних данных, попадает в новые условия. И в геонауках это серьезная проблема. Не смотря на аналогии, нет двух одинаковых месторождений, и даже если модель обучить на 1000 месторждениях, 1001-е будет другое и производительность модели будет значительно ниже и вероятно не понравится, людям принимающим решение о бурении скважины стоимостью стопицот миллионов . Умные геоинженеры и обучатели машин сейчас работают над тем, чтобы побороть эти две проблемы для моделирования месторождений, но с переменным успехом (на мой взгляд опять же).
Пост может показатья кому-то скептическим, но на самом деле я полон оптимизма. Каких-то пять лет назад даже 10-я часть предложенных алгоритмов была невозможна по разным причинам, а сегодня уже идут разговоры о полной автоматизации моделирования с помощью машинного обучения. Повсеместная адаптация займет еще много лет, но все равно впереди блестящее будущее!
📖статья
#ML#AI#geo#subsurface
Машинное обучение в геонауках. Обзор
70 years of machine learning in geoscience in review - статья почти 3-х летней давности, но от этого не теряющя актуальности. В этой работе дается обзор развития машинного обучения в геонауках за последние 70 лет 👴, со времен когда еще и машинным обученем это никто не называл. Кригинг, деревья, метод опорных векторов и далее к сверточным сетям и генеративным моделям глубокого обучения. Отсутствует только обзор популярных в последние годы больших языковых и генерационных моделей.
В общем такое краткое изложение того с чего все начиналось и к чему пришли, применяя статистику и программирование для понимания земных процессов.
Ко всему прочему это еще и прекрасный обзор литературы 📚. Или идеальная вводная лекция для курса "Машинное обучение в геонауках/поиске ресурсов"
#ML#AI#geoscience#paper
Вариационные автоэнкодеры и авторегрессионные модели для генерации геологических моделей
Как говорится, paper alert!
Чтобы создать геологическую модель, прошаренные модельеры используют под капотом статистистические методы, уже лет 30-40. Не просто так, а чтобы не только построить красивую модель, но и оценить ее неопределенность (какие шансы, что под землей все именно так?). Но любители машинного обучения, что в целом тоже статистика только для модных, все хотят придумать замену классическим статистическим методам в геонауках.
В статье Generating subsurface earth models using descrete representation learning and deep autoregressive network описывается подход, в котором используется комбинация вариационных автоэнкодеров(VAE) и авторегресионных моделей. Первые - это вид генеративных моделей, которые при машинном обучении сжимают геомодели (картинки) в скрытое их представление (latent space) с помощью VAE энкодера. Вторые, обучаются предсказывать априорные распределения этих скрытых представлений и потом делают сэмпл из этого распределения, который в свою очередь декодируется (распаковывается) в геомодель с помощью VAE декодера.
Юз кейс такой - показываете компуктеру картинку с предполагаемой геологией и вашими точками (скважинами), и он строит миллион моделей, удовлетворяющих внешнему виду, из которых можно выбрать среднее, ну и плюс показывает стандартное отклонение.
Статья📖
#paper#ML#geoml
Глубокое обучение для поиска промышленно-научных изображений (например, изображений горных пород)
Допустим у вас есть база данных микроскопических изображений горных пород с измеренными физическими свойствами. Эта база данных постоянно пополняется. Вы берете новое изображение и хотите 1) найти подобные из миллиона других и 2) оценить физические свойства найденного изображения без дополнительного физического эксперимента.
Вот примерно это попытались сделать ученые из Shell в статье Content-based image retrieval for industrial material images with deep learning and encoded physical properties 🔥
Они обучили свою кастомную нейронную сеть оценивать похожесть изображений горных пород, используя сиамские нейронные сети. В дополнение к этому, они натренировали сеть оценивать похожесть мета-данных, например какая пористость или проницаемость, присуща именно этому изображению.
В результате получилась история как на картинке -> подаем изображение с измеренными физическими свойствами -> получаем максимально похожие изображение с оцененными физическими свойствами. На картинке 2 желтый - резульатат при использовании архитектуры ResNet-34, фиолетовым - архитектура предложенная авторами. Результат конечно в пользу последней.
Авторы предлагают использовать данный подход для всех типов промышленных и научно-исследовательских изображений.
Статья📖
Код💻
#paper#ML#AI#Earth