Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас

Поддержка проектов CV с помощью инструментов с открытым исходным кодом от Hugging Face

Абирами Вина

5 мин чтения

11 февраля 2025 г.

Присоединяйтесь к нам, и мы вернемся к основному докладу с YOLO Vision 2024, посвященному изучению того, как инструменты с открытым исходным кодом Hugging Face продвигают разработку ИИ.

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

На ежегодном гибридном мероприятии YOLO Vision 2024 (YV24), организованном Ultralytics, эксперты в области искусственного интеллекта и энтузиасты технологий собрались вместе, чтобы изучить последние инновации в компьютерном зрении. На мероприятии прошли дискуссии по различным темам, таким как способы ускорения разработки приложений на основе ИИ.

Одним из ключевых моментов мероприятия стало выступление, посвященное Hugging Face, платформе ИИ с открытым исходным кодом, которая упрощает обучение, оптимизацию и развертывание моделей. Павел Лакубовский, инженер по машинному обучению в Hugging Face, рассказал о том, как их инструменты улучшают рабочие процессы для задач компьютерного зрения, таких как обнаружение объектов на изображениях, классификация изображений по различным группам и прогнозирование без предварительного обучения на конкретных примерах (zero-shot learning).

Hugging Face Hub размещает и предоставляет доступ к различным моделям ИИ и компьютерного зрения, таким как Ultralytics YOLO11. В этой статье мы подведем итоги доклада Павла и рассмотрим, как разработчики могут использовать инструменты с открытым исходным кодом Hugging Face для быстрой разработки и развертывания моделей ИИ.

Рис. 1. Павел на сцене на YV24.

Hugging Face Hub поддерживает ускоренную разработку ИИ

Павел начал свой доклад с представления Hugging Face как платформы ИИ с открытым исходным кодом, предлагающей предварительно обученные модели для различных приложений. Эти модели предназначены для различных направлений ИИ, включая обработку естественного языка (NLP), компьютерное зрение и мультимодальный ИИ, что позволяет системам обрабатывать различные типы данных, такие как текст, изображения и аудио.

Павел упомянул, что на Hugging Face Hub сейчас размещено более 1 миллиона моделей, и разработчики могут легко найти модели, подходящие для их конкретных проектов. Hugging Face стремится упростить разработку ИИ, предлагая инструменты для обучения, тонкой настройки и развертывания моделей. Когда разработчики могут экспериментировать с различными моделями, это упрощает процесс интеграции ИИ в реальные приложения.

Хотя Hugging Face изначально был известен благодаря NLP, с тех пор он расширился до компьютерного зрения и мультимодального ИИ, что позволяет разработчикам решать более широкий круг задач ИИ. У него также есть сильное сообщество, где разработчики могут сотрудничать, делиться идеями и получать поддержку через форумы, Discord и GitHub.

Изучение моделей Hugging Face для приложений компьютерного зрения

Углубляясь в детали, Павел объяснил, как инструменты Hugging Face упрощают создание приложений компьютерного зрения. Разработчики могут использовать их для таких задач, как классификация изображений, обнаружение объектов и приложения, использующие зрение и язык.

Он также отметил, что многие из этих задач компьютерного зрения можно решить с помощью предварительно обученных моделей, доступных в Hugging Face Hub, что экономит время за счет уменьшения необходимости обучения с нуля. Фактически, Hugging Face предлагает более 13 000 предварительно обученных моделей для задач классификации изображений, включая модели для классификации продуктов питания, классификации домашних животных и определения эмоций.

Подчеркивая доступность этих моделей, он сказал: "Вероятно, вам даже не нужно обучать модель для своего проекта - вы можете найти ее в Hub, уже обученную кем-то из сообщества." 

Модели Hugging Face для обнаружения объектов 

Приводя другой пример, Павел подробно рассказал о том, как Hugging Face может помочь в обнаружении объектов — ключевой функции компьютерного зрения, которая используется для идентификации и определения местоположения объектов на изображениях. Даже при ограниченном количестве размеченных данных предварительно обученные модели, доступные в Hugging Face Hub, могут сделать обнаружение объектов более эффективным. 

Он также дал краткий обзор нескольких моделей, созданных для этой задачи, которые можно найти на Hugging Face:

  • Модели обнаружения объектов в реальном времени: Для динамических сред, где скорость имеет решающее значение, модели, такие как Detection Transformer (DETR), предлагают возможности обнаружения объектов в реальном времени. DETR обучена на наборе данных COCO и предназначена для эффективной обработки многомасштабных признаков, что делает ее подходящей для приложений, требующих быстрого реагирования.
  • Визуально-языковые модели: Эти модели объединяют обработку изображений и текста, позволяя системам искусственного интеллекта сопоставлять изображения с описаниями или распознавать объекты за пределами данных, на которых они были обучены. Примеры включают CLIP и SigLIP, которые улучшают поиск изображений, связывая текст с визуальными элементами, и позволяют решениям ИИ идентифицировать новые объекты, понимая их контекст.
  • Модели обнаружения объектов Zero-shot: Они могут идентифицировать объекты, которые они раньше не видели, понимая взаимосвязь между изображениями и текстом. Примеры включают OwlVit, GroundingDINO и OmDet, которые используют обучение zero-shot для обнаружения новых объектов без необходимости в маркированных данных для обучения.

Как использовать модели Hugging Face

Затем Павел переключил внимание на практическое использование моделей Hugging Face, объяснив три способа, которыми разработчики могут их использовать: изучение моделей, быстрое их тестирование и дальнейшая настройка.

Он продемонстрировал, как разработчики могут просматривать модели непосредственно в Hugging Face Hub, не написав ни строчки кода, что упрощает мгновенное тестирование моделей через интерактивный интерфейс. «Вы можете попробовать это, не написав ни строчки кода и не загружая модель на свой компьютер», — добавил Павел. Поскольку некоторые модели имеют большой размер, их запуск в Hub помогает избежать ограничений по хранению и обработке.

Рис. 2. Как использовать модели Hugging Face.

Кроме того, Hugging Face Inference API позволяет разработчикам запускать модели ИИ с помощью простых вызовов API. Это отлично подходит для быстрого тестирования, проектов proof-of-concept и быстрого прототипирования без необходимости сложной настройки.

Для более продвинутых вариантов использования разработчики могут использовать фреймворк Hugging Face Transformers, инструмент с открытым исходным кодом, который предоставляет предварительно обученные модели для задач обработки текста, изображений и аудио, поддерживая как PyTorch, так и TensorFlow. Павел объяснил, что всего двумя строками кода разработчики могут получить модель из Hugging Face Hub и связать ее с инструментом предварительной обработки, таким как процессор изображений, для анализа данных изображений для приложений Vision AI.

Оптимизация рабочих процессов ИИ с помощью Hugging Face

Далее, Павел объяснил, как Hugging Face может оптимизировать рабочие процессы ИИ. Одной из ключевых тем, которую он затронул, была оптимизация механизма внимания в Transformers, основной функции моделей глубокого обучения, которая помогает им сосредоточиться на наиболее релевантных частях входных данных. Это повышает точность задач, связанных с обработкой языка и компьютерным зрением. Однако это может потребовать больших ресурсов.

Оптимизация механизма внимания может значительно снизить использование памяти и повысить скорость. Павел отметил: «Например, переключившись на более эффективную реализацию внимания, вы можете увидеть увеличение производительности до 1,8 раза».

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

Optimum и Torch Compile

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

Чтобы еще больше повысить эффективность, Павел представил библиотеку Hugging Face Optimum, набор инструментов, предназначенных для оптимизации и развертывания моделей. Всего с помощью нескольких строк кода разработчики могут применять методы квантования и преобразовывать модели в эффективные форматы, такие как ONNX (Open Neural Network Exchange), что позволяет им бесперебойно работать на различных типах оборудования, включая облачные серверы и периферийные устройства.

Рис. 3. Павел рассказал о библиотеке Optimum и ее особенностях.

Наконец, Павел упомянул о преимуществах Torch Compile, функции в PyTorch, которая оптимизирует способ обработки данных моделями ИИ, делая их работу более быстрой и эффективной. Hugging Face интегрирует Torch Compile в свои библиотеки Transformers и Optimum, позволяя разработчикам воспользоваться этими улучшениями производительности с минимальными изменениями кода. 

Оптимизируя вычислительную структуру модели, Torch Compile может ускорить время инференса и увеличить частоту кадров с 29 до 150 кадров в секунду без ущерба для точности или качества.

Развертывание моделей с помощью инструментов Hugging Face

Далее, Павел вкратце коснулся того, как разработчики могут расширять и развертывать модели Vision AI с помощью инструментов Hugging Face после выбора правильной модели и выбора наилучшего подхода к разработке.

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

Павел также отметил: “Не нужно начинать писать все с нуля,” имея в виду руководства, обучающие блокноты и примеры скриптов, которые предоставляет Hugging Face. Эти ресурсы помогают разработчикам быстро начать работу без необходимости создавать все с нуля.

Рис. 4. Павел обсуждает возможности Hugging Face на YV24.

Преимущества Hugging Face Hub 

Завершая свой доклад, Павел подытожил преимущества использования Hugging Face Hub. Он подчеркнул, как это упрощает управление моделями и сотрудничество. Он также обратил внимание на доступность руководств, блокнотов и учебных пособий, которые могут помочь как начинающим, так и экспертам понять и внедрить модели ИИ.

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

Основные выводы 

Во время своего выступления на YV24 Павел рассказал о том, как Hugging Face предоставляет инструменты, поддерживающие обучение, оптимизацию и развертывание моделей ИИ. Например, такие инновации, как Transformers, Optimum и Torch Compile, могут помочь разработчикам повысить производительность моделей.

По мере того как модели ИИ становятся более эффективными, достижения в области квантования и периферийного развертывания упрощают их запуск на устройствах с ограниченными ресурсами. Эти улучшения в сочетании с такими инструментами, как Hugging Face, и передовыми моделями компьютерного зрения, такими как Ultralytics YOLO11, являются ключом к созданию масштабируемых, высокопроизводительных приложений Vision AI.

Присоединяйтесь к нашему растущему сообществу! Изучите наш репозиторий на GitHub, чтобы узнать больше об ИИ, и ознакомьтесь с нашими лицензиями YOLO, чтобы начать свои проекты в области Vision AI. Интересуетесь инновациями, такими как компьютерное зрение в здравоохранении или компьютерное зрение в сельском хозяйстве? Посетите страницы наших решений, чтобы узнать больше!

Давайте строить будущее
ИИ вместе!

Начните свой путь в будущее машинного обучения

Начать бесплатно
Ссылка скопирована в буфер обмена