🔥 Memory pinning для ускорения обучения моделей
Если вы регулярно используете GPU для обучения моделей, то существует довольно простая техника, которая часто используется для ускорения обучения моделей.
Рассмотрим стандартный цикл обучения модели в PyTorch (См Картинку 1)
В этом коде:
- Строка 5 передает данные в GPU из CPU.
- Все выполняется на GPU после передачи данных, то есть в строках 7-15.
💡 Это означает, что когда работает GPU, CPU простаивает, а когда работает CPU, GPU простаивает, наглядно(См Картинку 2)
⚡️ Но вот что мы можем сделать, чтобы оптимизировать:
- Когда модель обучается на 1-м батче, CPU может передать 2-й батч на GPU.
- Таким образом, GPU не придется ждать следующего батча данных, как только он завершит обработку существующего батча.
👉 Иными словами, график использования ресурсов будет выглядеть примерно так (См Картинку 3)
💡 В то время, когда CPU будет простаивать, GPU (который является фактическим ускорителем для обучения модели) гарантированно будет иметь данные для работы.
Формально этот процесс известен как memory pinning, и он используется для ускорения передачи данных от CPU к GPU, делая процесс обучения асинхронным.
Это позволяет нам готовить следующий обучающий набор параллельно с обучением модели на текущих данных.
👉 Включить эту функцию в PyTorch довольно просто. Во-первых, при определении объекта
Далее, на этапе передачи данных в шаге обучения укажите
⚡️ Готово!
Вот как работает ускорение на примере набора данных MNIST в обучении простой нейронной сети (См Картинку 6)
- Без memory pinning обучение модели на 5 эпохах занимает около 43 секунд:
- а с использованием memory pinning та же модель обучается менее чем за 10 (!!!) секунд 🔥(См Картинку 7)
📌 Важные особенности использования memory pinning:
- если несколько тензоров будут выделены в "привязанную" память, это приведет к резервированию значительной части оперативной памяти.
- когда набор данных относительно мал, memory pinning имеет незначительный эффект, поскольку передача данных от CPU к GPU все равно не занимает столько времени (См Картинку 7)
📌 Полная версия
@ai_machinelearning_big_data
Если вы регулярно используете GPU для обучения моделей, то существует довольно простая техника, которая часто используется для ускорения обучения моделей.
...изменив всего две строки кода.
Рассмотрим стандартный цикл обучения модели в PyTorch (См Картинку 1)
В этом коде:
- Строка 5 передает данные в GPU из CPU.
- Все выполняется на GPU после передачи данных, то есть в строках 7-15.
💡 Это означает, что когда работает GPU, CPU простаивает, а когда работает CPU, GPU простаивает, наглядно(См Картинку 2)
⚡️ Но вот что мы можем сделать, чтобы оптимизировать:
- Когда модель обучается на 1-м батче, CPU может передать 2-й батч на GPU.
- Таким образом, GPU не придется ждать следующего батча данных, как только он завершит обработку существующего батча.
👉 Иными словами, график использования ресурсов будет выглядеть примерно так (См Картинку 3)
💡 В то время, когда CPU будет простаивать, GPU (который является фактическим ускорителем для обучения модели) гарантированно будет иметь данные для работы.
Формально этот процесс известен как memory pinning, и он используется для ускорения передачи данных от CPU к GPU, делая процесс обучения асинхронным.
Это позволяет нам готовить следующий обучающий набор параллельно с обучением модели на текущих данных.
👉 Включить эту функцию в PyTorch довольно просто. Во-первых, при определении объекта
DataLoader надо установить pin_memory=True и указать num_workers (См Картинку 4)Далее, на этапе передачи данных в шаге обучения укажите
non_blocking=True (См Картинку 5)⚡️ Готово!
Вот как работает ускорение на примере набора данных MNIST в обучении простой нейронной сети (См Картинку 6)
- Без memory pinning обучение модели на 5 эпохах занимает около 43 секунд:
- а с использованием memory pinning та же модель обучается менее чем за 10 (!!!) секунд 🔥(См Картинку 7)
📌 Важные особенности использования memory pinning:
- если несколько тензоров будут выделены в "привязанную" память, это приведет к резервированию значительной части оперативной памяти.
Поэтому, всякий раз, когда используете memory pinning - отслеживайте потребление RAM!
- когда набор данных относительно мал, memory pinning имеет незначительный эффект, поскольку передача данных от CPU к GPU все равно не занимает столько времени (См Картинку 7)
📌 Полная версия
@ai_machinelearning_big_data
Байесовские нейронные поля (Bayes NF) - метод масштабируемого пространственно-временного прогнозирования, объединяющий архитектуру глубокой нейронной сети моделирования функций с иерархическим Байесовским моделированием для точной оценки неопределенности в сложных пространственно-временных полях.
Bayes NF строятся на основе Байесовской нейронной сети, отображающей многомерные пространственно-временные координаты в действительное поле.
Для получения высокой априорной вероятности для данных как с низко-, так и с высокочастотными вариациями, к исходным данным о времени и положении, подающимся в сеть, добавляются признаки Фурье, а чтобы учитывать априорные неопределенности, параметры сети получают априорное распределение.
Апостериорный вывод осуществляется с помощью стохастических ансамблей оценки максимального апостериори (MAP) или вариационно обученных суррогатов.
Метод Bayes NF относительно прост, он может обрабатывать пропущенные данные и обучаться по полному распределению вероятностей для произвольных пространственно-временных индексов.
Bayes NF универсален и применим к различным наборам данных без необходимости разработки новой модели для каждого случая или применения специфических для набора данных аппроксимаций вывода.
⚠️ Для локального запуска BayesNF на средних и больших объемах данных требуется GPU.
# Install bayesnf from PIP into venv:
$ python -m venv pyenv
$ source pyenv/bin/activate
$ python -m pip install -U bayesnf
# Install dependencies for Python 3.10
$ python -m pip install -r requirements.Python3.10.14.txt
@ai_machinelearning_big_data
#AI #ML #Predictions #BAYESNF
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Компания Ultralytics представила YOLO11, новейшую версию своей знаменитой модели искусственного интеллекта для компьютерного зрения.
YOLO11 поддерживает широкий спектр задач CV: обнаружение объектов, сегментацию экземпляров, классификацию изображений, оценку позы, обнаружение ориентированных объектов (OBB) и отслеживание объектов. Модель получила улучшенное извлечение признаков.
YOLO11m достигает более высокого балла средней средней точности (mAP) в наборе данных COCO, используя на 22% меньше параметров, чем YOLOv8m.
YOLO11 вскоре будет доступна через Ultralytics HUB и пакет Ultralytics Python.
ultralytics.com
Please open Telegram to view this post
VIEW IN TELEGRAM
Vector Post-Training Quantization (VPTQ) - экспериментальный метод, который использует векторное квантование LLM c сохранением высокой точности при сверхнизкой битовой ширине (<2 бит).
VPTQ использует технику оптимизации второго порядка для векторного квантования в LLM. Ключевым алгоритмом VPTQ является "Channel-Independent Second-Order Optimization" - квантование каждого столбца матрицы весов независимо и использование взвешенной по матрице Гессе инициализации центроидов.
Оптимизация в VPTQ состоит из применения взвешенных К-средних для центроидов, остаточного векторного квантования (RVQ) в качестве балансировщика ошибки и исключения выбросов в весах для повышения точности .
Эксперименты на моделях LLaMA-2, LLaMA-3 и Mistral-7B показали, что в сравнении с существующими методами, VPTQ обеспечивает сопоставимую или более высокую точность при 2-битном квантовании, уменьшая перплексию
на 0.01-0.34, 0.38-0.68 и 4.41-7.34 соответственно. В сообществе VPTQ на Huggingface выложена 41 модель в разрядностях VPTQ-квантования от 1.375 до 4 bits:
Посчитать битность и размер модели по названию на примере
Meta-Llama-3.1-70B-Instruct-v8-k65536-256-woft:Расчет итоговой битности: индекс: log2(65536) = 16 / 8 = 2 bits, остаточный индекс: log2(256) = 8 / 8 = 1 bit, итоговое значение 2 bits+1 bit, = 3 bits.
Расчет размера модели (без учета codebook): 70B * 3 bits / 8 bits = 26.25 GB.
# Set up CUDA PATH:
export PATH=/usr/local/cuda-12/bin/:$PATH
# Clone repo:
pip install git+https://github.com/microsoft/VPTQ.git --no-build-isolation
# Simple generation:
python -m vptq --model=VPTQ-community/Meta-Llama-3.1-70B-Instruct-v8-k65536-0-woft --prompt="..."
# Chatbot example:
python -m vptq --model=VPTQ-community/Meta-Llama-3.1-70B-Instruct-v8-k65536-0-woft --chat
# Gradio Web App
python -m vptq.app
📌Лицензирование кода : MIT License.
📌Лицензирование моделей: cогласно родительской модели.
▪Коллекция моделей на HF
▪Arxiv
▪Сообщество в HF
▪GitHub
@ai_machinelearning_big_data
#AI #ML #LLM #Quantization #Microsoft #VPTQ #hardcore
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Система классифицирует задачи по типу необходимых внешних данных и сложности рассуждений и выделяет четыре уровня: явные факты, неявные факты, интерпретируемые обоснования и скрытые обоснования.
Явные факты — это когда нужно просто взять информацию из данных. Неявные — когда нужно подумать и сделать вывод. Интерпретируемые обоснования — это когда нужно понять суть и использовать правила или принципы из внешних источников. Скрытые обоснования — это когда нужно найти и использовать неявные способы рассуждения.
venturebeat.com
Этот кодекс предоставит разработчикам GPAI четкие рекомендации по соблюдению требований Закона ЕС об ИИ, который вступил в силу в прошлом месяце и вводит строгие правила для поставщиков моделей GPAI в августе 2025 года.
Кодекс должен быть разработан к апрелю 2025 года и будет включать прозрачность, правила авторского права, таксономию системных рисков, оценку рисков и меры по их снижению.
Сегодня состоялось первое онлайн-заседание с участием около 1000 человек, включая поставщиков моделей GPAI, представителей промышленности, гражданского общества, научных кругов и независимых экспертов
euronews.com
Международная группа ученых оценила производительность модели o1-preview от OpenAI на задачах, требующих сложных рассуждений в областях: информатика, математика, естественные науки, медицина, лингвистика и социальные науки. Модель продемонстрировала высокую эффективность, сравнимую с человеком, и в некоторых случаях превосходящую его.
o1-preview показала отличные результаты в генерации кода, составлении рентгенологических заключений, планировании команд для роботов, количественном инвестировании, переводе на малые языки, образовательных вопросах и ответах, улучшении студенческих работ, создании 3D-макетов, разработке чипов, логическом мышлении, анализе медицинских данных, анализе социальных сетей, аналогическом мышлении и других задачах.
arxiv.org
Data Formulator позволяет создавать диаграммы с нуля или выбирать из шаблонов, используя “нити данных”. LLM обрабатывает ввод, генерируя код для создания визуализации и обновляя “нити данных”. Они позволяют просматривать и изменять ранее созданные диаграммы, упрощая редактирование и уточнение благодаря адаптации кода к новым контекстам.
Архитектура Data Formulator отделяет преобразование данных от конфигурации диаграммы, улучшая пользовательский опыт и производительность ИИ. Система генерирует скрипт Vega-Lite на основе спецификаций пользователя, определяющий визуализацию, инструкции ИИ для преобразования данных и создание диаграммы.
microsoft.com
Ученые из MIT (CSAIL) создали базу данных из 5000 изображений с парейдолическими лицами для изучения восприятия иллюзорных образов людьми и ИИ. База превосходит предыдущие коллекции по размеру и поможет глубже изучить феномен парейдолии — способности видеть лица и фигуры в случайных объектах.
Для создания "Faces in Things" отобрали около 20 000 изображений из набора данных LAION-5B, размеченных и оцененных людьми. Аннотаторы обводили воспринимаемые лица и отвечали на подробные вопросы о каждом лице: эмоция, возраст, случайность.
Анализ базы данных выявил "Goldilocks Zone of Pareidolia" — класс изображений с определенной визуальной сложностью, где вероятность увидеть лицо высока для людей и ИИ.
Модели ИИ не распознавали парейдолические лица как люди, пока их не обучили распознавать морды животных. Это подтверждает возможную эволюционную связь между способностью распознавать лица животных и склонностью видеть лица в неодушевленных предметах.
news.mit.edu
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
На конференции DevDay OpenAI представила четыре ключевых инновации: Vision Fine-Tuning, Realtime API, Model Distillation и Prompt Caching.
Prompt Caching : функция снижает затраты за счет применения 50% скидки на входные токены, которые модель недавно обработала.
Vision Fine-Tuning : позволит разработчикам настраивать возможности визуального восприятия GPT-4o, используя изображения и текст.
Realtime API : находится в стадии публичного бета-тестирования и предлагает мультимодальный доступ с низкой задержкой, особенно в задачах преобразования речи.
Model Distillation : упрощает тонкую настройку небольших моделей с использованием результатов более крупных, делая обучение более доступным.
openai.com
С этого месяца все Chromebook будут оснащены функцией «чат с Gemini», а Chromebook Plus получат новые функции Google AI: «Помоги мне читать», «Живой перевод» и улучшения звука.
Samsung Galaxy Chromebook Plus — тонкий Chromebook, с 8 Гб RAM, Intel Core 3 100U, 256 Гб SSD и 15,6-дюймовый экран, 13 часов автономной работы.
Lenovo Chromebook Duet — 11-дюймовый Chromebook, который превращается в планшет для заметок с помощью встроенной подставки и пера USI Pen 2. Он оснащен процессором MediaTek Kompanio 838, до 8 Гб RAM и 128 Гб хранилищем.
siliconangle.com
Microsoft добавит в Paint и «Фотографии» новые функции на базе ИИ для пользователей ПК с Copilot Plus - "генеративное заполнение" и "генеративное стирание".
Генеративное стирание удаляет ненужные фигуры и объекты аналогично функции «Волшебный ластик» на телефонах Google Pixel.
Генеративное заполнение позволяет добавлять сгенерированные ИИ объекты на изображение, используя текстовое описание.
В приложении «Фотографии» также появится генеративное стирание и новая функция сверхвысокого разрешения. Пользователи смогут увеличивать изображения до 8х с регулировкой уровня масштабирования, это больше чем в Adobe Lightroom (4x).
Функция бесплатна и работает быстро, масштабируя изображения «до 4K за считанные секунды» (с).
theverge.com
Westinghouse Electric представила Предварительный отчет по безопасности проекта для микрореактора eVinci в Национальный центр инноваций в области реакторов при Министерстве энергетики США, это стало важной вехой в процессе, начатом в октябре прошлого года. Америка в значительной степени отказалась от ядерной энергетики после аварии на Три-Майл-Айленде в 1979 году, но она возвращается благодаря астрономическим потребностям в энергии (и охлаждении) современных моделей ИИ.
eVinci работает «как аккумулятор», в нем используется очень мало движущихся частей, он полагается на «первую в мире 4-метровую тепловую трубу ядерного класса» для передачи тепла.
Помимо обеспечения электроэнергией объектов и установок, реактор может генерировать высокотемпературное тепло для производства водородного топлива. Каждый реакторный блок рассчитан на круглосуточную работу в течение восьми лет. Когда реактор выработает все свое топливо, Westinghouse заменит его на другой герметичный реактор.
digitaltrends.com
В апреле 2023 года фотограф Роберт Кнешке обнаружил свои фотографии в датасете LAION, используемом для обучения ИИ. Кнешке потребовал удалить свои фотографии, но LAION отрицала хранение копий, утверждая, что ведет базу данных ссылок на открытые изображения.
Региональный суд Гамбурга постановил, что LAION воспользовалась исключением из нарушения авторских прав. Суд заявил, что набор данных LAION некоммерческий и предназначен для научных исследований. Тот факт, что данные могут быть использованы коммерческими компаниями для обучения систем ИИ, не имеет значения.
petapixel.com
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Исследование, проведенное Университетом Кембриджа, Пекинским университетом почты и телекоммуникаций о малых языковых моделях, опубликованных в открытом доступе в период с 2022-2024 гг.
Авторами были проанализированы 59 современных открытых SLM, их архитектуру, используемые наборы данных для обучения и алгоритмы. Целевая группа состояла из моделей с 100M–5B параметрами, построенных на архитектуре декодера-трансформера, которые подходят для устройств от носимых гаджетов до смартфонов и планшетов.
Выводы, к которым пришли авторы:
Архитектура SLM
Наборы данных для обучения
Алгоритмы обучения
Возможности SLM
Контекстное обучение
Latency и потребление VRAM
Влияние квантования и оборудования
@ai_machinelearning_big_data
#AI #ML #SLM #Paper #Arxiv
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
На конференции Unreal Fest Seattle 2024 NVIDIA представила новые плагины для Unreal Engine 5 на базе технологии NVIDIA Ace, облегчающие создание и развертывание персонажей MetaHuman с искусственным интеллектом на ПК с ОС Windows. Ace — это набор технологий для создания цифровых людей с речью, интеллектом и анимацией на основе генеративного ИИ.
Разработчики теперь имеют доступ к плагину Audio2Face-3D для создания лицевой анимации на базе ИИ, синхронизирующей движения губ и лица с речью. Плагин доступен в Autodesk Maya и имеет открытый исходный код для создания собственных расширений. Для работы с Maya разработчикам понадобится API-ключ или Audio2Face-3D NIM.
NVIDIA также выпустила пример проекта Unreal Engine 5 с использованием NVIDIA Ace, включающий плагины Audio2Face-3D, Nemotron-Mini 4B Instruct для генерации ответов и RAG для контекстной информации.
NVIDIA утверждает, что разработчики могут создавать базы данных с контекстной информацией для своих проектов, генерировать релевантные ответы с низкой задержкой и управлять лицевой анимацией MetaHuman в Unreal Engine 5.
venturebeat.com
FLUX1.1 [pro] — новая модель генерации изображений, в ней шестикратно ускорен инференс по сравнению с предыдущей FLUX [pro], она получила улучшенное качество генераций и более точное соответствие промптам.
Новая модель доступна в сервисах: Together.ai, Replicate, Fal.ai, Freepik.com
FLUX1.0 [pro] тоже был обновлен и получил с двукратным ускорение генерации.
Новый бета-интерфейс BFL API предоставляет разработчикам и компаниям возможности FLUX. API предлагает расширенные настройки для адаптации выходных данных к конкретным потребностям, включая выбор модели, разрешение изображения и модерацию контента. Документация API.
blackforestlabs.ai
Поскольку нехватка рабочей силы становится серьезной социальной проблемой во многих частях мира, использование промышленных роботов прогрессирует. Однако в сфере услуг, существует множество задач, которые связаны с контактом с людьми и объектами, но движения и силы, возникающие при контакте робота с человеком или объектом, чрезвычайно сложны и их трудно моделировать в среде симуляции.
Для достижения точной работы в этих ситуациях необходимо заранее провести множество пробных испытаний с использованием реальных действий. Для решения этой проблемы Panasonic HD разработала Diffusion Contact Model, которая использует "диффузионную модель", часто используемую при генерации изображений, для обучения роботов.
Diffusion Contact Model моделирует поэтапно усилие, прилагаемое при прикосновении робота к объекту, и может с высокой точностью предсказать усилие, прилагаемое при прикосновении робота к объекту.
Технология Diffusion Contact Model будет представлена на конференции в Абу-Даби 14 октября 2024 года.
Технический отчет на arxiv.
news.panasonic.com
Два студента из Гарварда разработали систему под названием I-XRAY, которая объединяет технологии распознавания лиц, LLM и общедоступные данные, чтобы автоматически получать информацию о людях: имя, профессию и адрес.
Facebook View, приложение, которое поставляется в комплекте с умными очками и подчеркивает ответственность пользователей за соблюдение законодательства о конфиденциальности является явно недостаточной мерой.
engadget.com
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
RevAI, лидер в области профессиональной транскрипции английской речи выпустила в открытый доступ фреймdорк Reverb и набор моделей для построения конвейера speech-to-text.
Reverb включает в себя: модель ASR на базе WeNet и 2 версии модели диаризации речи. Весь паплайн Reverb можно запускать как на CPU, так и на GPU.
Reverb ASR обучалась на 200 000 часов английской речи, профессионально транскрибированной людьми — это самый большой корпус транскрибированной человеком речи, когда-либо использовавшийся для обучения модели с открытым исходным кодом.
Она позволяет контролировать уровень дословности выходного транскрипта для создания чистого, удобочитаемого текста и справляется с обработкой аудио, требующего транскрипции каждого произнесенного слова, включая запинания и перефразирования.
Reverb ASR использует совместную архитектуру CTC/attention и поддерживает несколько режимов декодирования. Указать один или несколько режимов можно в
recognize_wav.py. Для каждого режима будут созданы отдельные выходные каталоги. Варианты декодирования: В оценке Reverb ASR использовались три корпуса длинных аудиозаписей: Rev16 (подкасты), Earnings21 и Earnings22 (телефонные разговоры).
Reverb ASR значительно превосходит конкурентов в тестовых наборах ASR для длинных форм, особенно в Earnings22, где в основном речь носителей английского языка не как родного.
Для традиционного бенчмаркинга использовался GigaSpeech, Reverb ASR запускался в дословном режиме на скриптах оценки Hugging Face Open ASR Leaderboard. По их результатам Reverb ASR значительно превосходит конкурентов в тестовых наборах ASR для длинных форм.
Reverb diarization v1 использует архитектуру pyannote 3.0 и имеет 2 слоя LSTM со скрытым размером 256, всего около 2,2 млн параметров, а Reverb diarization v2 использует WavLM вместо функций SincNet в базовой модели pyannote 3.0.
Обе модели диаризации прошли донастройку на 26 000 часах данных с экспертной разметкой.
⚠️ Для локальной установки понадобится Huggingface API KEY
@ai_machinelearning_big_data
#AI #ML #ASR #Diarization #REVAI
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM