Изучаем ONNX для применения в трейдинге - страница 3

 

18. ONNX Model Zoo | Tutorial-9 | Open Neural Network Exchange | ONNX




В видео рассказывается о готовых моделях из ONNX Model Zoo, которые можно загрузить и использовать непосредственно в ONNX Runtime без дополнительных преобразований. Эти модели могут быть использованы для решения различных задач, таких как классификация изображений, обнаружение объектов и моделирование языков. Подчеркивается модульность и расширяемость ONNX Runtime, который реализует исполнение моделей в формате ONNX.

GitHub - onnx/models: A collection of pre-trained, state-of-the-art models in the ONNX format
GitHub - onnx/models: A collection of pre-trained, state-of-the-art models in the ONNX format
  • onnx
  • github.com
Open Neural Network Exchange (ONNX) is an open standard format for representing machine learning models. ONNX is supported by a community of partners who have implemented it in many frameworks and tools. The ONNX Model Zoo is a collection of pre-trained, state-of-the-art models in the ONNX format contributed by community members like you...
 

19. ONNX Model Zoo Demo | Tutorial-10 | Open Neural Network Exchange | ONNX



В этом видео показана демонстрация использования модели из ONNX Model Zoo для распознавания рукописных цифр. Автор объясняет, как создать виртуальное окружение, установить необходимые пакеты и загрузить и запустить модель. Он также показывает, как загрузить модель и предварительно обработать изображение перед исполнением в модели.

GitHub - onnx/models: A collection of pre-trained, state-of-the-art models in the ONNX format
GitHub - onnx/models: A collection of pre-trained, state-of-the-art models in the ONNX format
  • onnx
  • github.com
Open Neural Network Exchange (ONNX) is an open standard format for representing machine learning models. ONNX is supported by a community of partners who have implemented it in many frameworks and tools. The ONNX Model Zoo is a collection of pre-trained, state-of-the-art models in the ONNX format contributed by community members like you...
 

20. PyTorch to Tensorflow Demo | Tutorial-11 | Open Neural Network Exchange | ONNX




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

 

Netron - это инструмент для просмотра моделей нейронных сетей, глубокого обучения и машинного обучения





 

Quick look into Netron




В видео автор дает обзор Netron - инструмента для просмотра и анализа моделей машинного обучения. Netron поддерживает различные форматы и может быть установлен на нескольких платформах. Демонстрируется, как запустить Netron и пройти через несколько примеров моделей, подчеркивая возможности и ограничения инструмента. Хотя Netron полезен для изучения более простых сетевых архитектур, автор  считает, что ему не хватает дополнительных функций для визуализации более сложных моделей. В целом, автор рекомендует Netron как полезный инструмент для изучения и понимания моделей машинного обучения.

Quick look into Netron
Quick look into Netron
  • 2022.05.02
  • www.youtube.com
We look into the machine learning network viewer Netron.Github repository:https://github.com/lutzroeder/netronPlease follow me on Twitterhttps://twitter.com/...
 

Netron - Network Visualization Tool | Machine Learning | Data Magic




Netron - это библиотека Python, которая помогает пользователям визуально исследовать и изучать структуру и параметры моделей глубокого обучения. Она является открытым исходным кодом и предоставляет образцы моделей для анализа, а также имеет простой процесс установки. С помощью всего двух строк кода пользователи могут установить Netron и использовать его для визуализации структуры нейронной сети, функций активации, слоев пулинга, сверточных слоев и всех атрибутов, переданных на каждом слое заданной модели машинного обучения. Netron предоставляет простой в использовании интерфейс, который позволяет пользователям экспортировать визуализации в файлы PNG и исследовать различные функции и опции.

  • 00:00:00 В этом разделе мы узнаем о Netron, библиотеке для Python, которая помогает нам визуализировать внутреннюю структуру моделей глубокого обучения. Мы можем использовать Netron для изучения конкретных слоев и параметров нейронных сетей, используемых в заданной модели. Netron является библиотекой с открытым исходным кодом, которая предоставляет образцы моделей для анализа и имеет простой процесс установки. После установки пользователи могут импортировать библиотеку Netron и использовать метод "start", чтобы передать файл модели машинного обучения. Затем Netron создаст визуальное представление структуры модели, позволяя пользователям визуально изучать каждый слой и его параметры.

  • 00:05:00 В этом разделе видео-урока ведущий демонстрирует, как использовать Netron - инструмент визуализации сетей для моделей машинного обучения. Этот инструмент может визуализировать структуру нейронной сети, функции активации, слои пулинга, сверточные слои и все атрибуты, переданные на каждом слое модели машинного обучения. С помощью всего двух строк кода инструмент может быть установлен на локальном компьютере или использован онлайн на сайте netron.app. Пользователи могут экспортировать визуализации в формате PNG и исследовать различные функции и возможности, доступные в интерфейсе инструмента.
Netron - Network Visualization Tool | Machine Learning | Data Magic
Netron - Network Visualization Tool | Machine Learning | Data Magic
  • 2021.08.18
  • www.youtube.com
Hello Friends, In this episode will talk about ,How to visualise a Deep Neural Network with the help of Netron API.Stay tuned and enjoy Machine Learning !!!C...
 

PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, преобразование файлов модели AI



[Обучающее видео] PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, преобразование файлов модели AI

Спикер в видео обсуждает преимущества и недостатки различных сред ИИ, таких как PyTorch, TensorFlow, Keras, ONNX, TensorRT и OpenVINO, и рекомендует PyTorch в качестве предпочтительной среды для обучения и преобразования данных. Докладчик объясняет процесс преобразования, включая преобразование моделей PyTorch в ONNX, а затем в TensorRT или OpenVINO, и предостерегает от использования PB-файла TensorFlow и Cafe. Докладчик также обсуждает важность правильной настройки формата с плавающей запятой и рекомендует использовать FP 32 для большинства моделей. Видео содержит примеры преобразования модели и призывает зрителей посетить официальный веб-сайт для получения дополнительных образовательных видеороликов.

  • 00:00:00 В этом разделе спикер обсуждает различные фреймворки ИИ, включая PyTorch, TensorFlow, Keras и Cafe, и объясняет предпочтительный для их компании метод использования PyTorch для сохранения модели в виде файла ONNX, который они дважды проверяют. со своим набором данных с помощью ONNX Runtime. Если тест пройден, они конвертируют модель ONNX в форматы TensorRT и OpenVINO. Докладчик предостерегает от использования PB-файла TensorFlow и Cafe и рекомендует вместо этого использовать Python с исходными данными и PyTorch для обучения. Наконец, спикер упоминает, что иногда механизмам логического вывода требуется правильно установить плавающую точку.

  • 00:05:00 В этом разделе спикер обсуждает, как выбор формата с плавающей запятой влияет на скорость и точность преобразования модели. Он объясняет, что хотя использование FP 16 может увеличить скорость, это может привести к меньшей точности, а использование FP 64 приводит к снижению скорости, но более высокой точности. Докладчик рекомендует использовать FP 32 для большинства моделей и обсуждает, как различные форматы могут использоваться для определенных типов наборов данных, таких как FP 32 и FP 64 для анализа медицинских изображений. Он также объясняет, что преобразование модели с FP 32 в FP 16 может привести к потере точности, которую можно уменьшить, используя калибровку, удаление или повторное обучение с FP 16 для повышения точности модели.

  • 00:10:00 В этом разделе видео спикер обсуждает компромиссы между скоростью, точностью и информацией о данных при использовании различных сред ИИ, таких как PyTorch, TensorFlow, Keras, ONNX, TensorRT и OpenVINO. Спикер рекомендует использовать PyTorch и конвертировать модели из PyTorch в ONNX с помощью предоставленного решения. Затем они объясняют, как преобразовать модели из ONNX в TensorRT, используя другое предоставленное решение. Докладчик демонстрирует процесс преобразования, запуская код в Jupiter Lab, и показывает, как найти преобразованные файлы модели.

  • 00:15:00 В этом разделе видео спикер обсуждает простоту конвертации AI-моделей из PyTorch в ONNX, а затем в TensorRT или OpenVINO, подчеркивая, что это простой процесс. Тем не менее, для тех, кто использует TensorFlow или Keras, спикер рекомендует использовать PyTorch для переобучения набора данных, так как будет проще выполнять преобразования моделей. Докладчик предупреждает, что могут возникнуть проблемы с использованием Keras, так как данные файла модели содержат только параметры, и перед импортом файла параметров H5 необходимо построить сетевую архитектуру. Спикер предполагает, что окончательным решением таких проблем является Café, но поскольку разработчики Café мигрировали на Café 2 и некому его поддерживать, спикер рекомендует использовать PyTorch в качестве основного ИИ-фреймворка.

  • 00:20:00 В этом разделе спикер рассказывает о преимуществах использования PyTorch и простоте миграции благодаря его высокой скорости и улучшенной архитектуре. Также спикер приводит пример использования решения для преобразования весовой модели v3 в модель OpenVINO AIA и самого мощного решения для обнаружения объектов Euro v4. Чтобы использовать пример, для преобразования требуются два файла: файл весов Euro v4 CPP и файл конфигурации сети Euro v4 CFG. После преобразования создается файл Haitatsu PTH для использования в образе логического вывода для проверки результатов. Спикер рекомендует использовать Python для обучения ИИ, а затем конвертировать его в ONNX, а затем в TensorRT или OpenVINO. Наконец, спикер призывает зрителей посетить официальный веб-сайт для получения дополнительных образовательных видео и стать бесплатным участником, чтобы получать список видео каждую неделю.
 

Как мы используем ONNX в Zetane для более быстрого выполнения проектов машинного обучения с меньшим количеством проб и ошибок



Как мы используем ONNX в Zetane для более быстрого выполнения проектов машинного обучения с меньшим количеством проб и ошибок

Патрик Сайтама, соучредитель и технический директор Zetane Systems, обсуждает ценность использования ONNX в новом продукте своей компании для решения проблем, связанных с проблемой «черного ящика» ИИ. Движок Zetane позволяет исследовать и проверять модели ONNX, предоставляя информацию о взаимодействии модели с данными и приводя к более решительным стратегиям улучшения ее качества. В приведенном примере показано, как движок Zetane помог отладить модель автономного поезда, проверив радиоуровень и добавив дополнительные изображения туннелей, помеченных как не являющиеся препятствиями. Zetane также включает инструменты для динамической проверки внутренних тензоров и создания моментальных снимков модели для последующего изучения. Кроме того, новый движок Zetane позволяет устанавливать более крупные модели, такие как YOLOv3.

  • 00:00:00 Патрик Сайтама, соучредитель и технический директор Zetane Systems, обсуждает, как извлечь большую пользу из ONNX, чтобы сократить время цикла разработки и уменьшить количество догадок. Его компания Zetane Systems, базирующаяся в Монреале, недавно выпустила новый продукт, который не зависит от отрасли и направлен на решение некоторых проблем, связанных с проблемой «черного ящика» ИИ. Передавая входные данные в модели ONNX, а затем проецируя модели в движке Zetane, модели можно исследовать и проверять, включая их архитектуру и граф вычислений, а также все тензоры, содержащиеся в каждом операторном узле, для отладки. и оптимизировать модель.

  • 00:05:00 Докладчик обсуждает, как использование ONNX в Zetane позволяет глубже понять модель и ее взаимодействие с данными, что, в свою очередь, приводит к более решительным стратегиям улучшения качества модели. Приведенный пример касается модели автономного поезда и того, как просмотр уровня радиосвязи в устойчивом двигателе показал, что модель обнаруживает туннель как препятствие, что привело к добавлению большего количества изображений туннелей, помеченных как не являющиеся препятствиями. Zetane также включает инструменты для динамической проверки внутренних тензоров и создания моментальных снимков модели в определенные моменты для последующего изучения и улучшения. Кроме того, недавно был запущен механизм задержания, позволяющий устанавливать более крупные модели, такие как YOLOv3.
How we use ONNX in Zetane to complete machine learning projects faster with less trial-and-error
How we use ONNX in Zetane to complete machine learning projects faster with less trial-and-error
  • 2020.10.20
  • www.youtube.com
Get your free trial of Zetane: docs.zetane.comZetane Systems is a member of the ONNX open-standard community from the pioneering organization for open-source...
 

Что нового в среде выполнения ONNX



Что нового в среде выполнения ONNX

В этом докладе будут представлены основные моменты выпусков ONNX Runtime 1.10-1.12, включая сведения о заметных улучшениях производительности, функциях и платформах, включая мобильные и веб-приложения. Райан Хилл работал в команде AI Frameworks в течение последних 4 лет, где он в основном работал над ядрами операторов, C API и динамически загружаемыми поставщиками исполнения. До этого он работал в команде Office PowerPoint, где его наиболее известная работа — переходы между слайдами в слайд-шоу. Ради развлечения он любит пробовать использовать новейшие возможности C++ и находить внутренние ошибки компилятора.

В видео инженер-программист Райан Хилл обсуждает различные функции и обновления ONNX Runtime, широко используемой кроссплатформенной среды выполнения, которая может работать с несколькими архитектурами ЦП. Он рассказывает о последних функциях, добавленных в ONNX Runtime, таких как возможность прямого вызова операционных ядер и улучшения производительности, такие как оптимизатор транспонирования и оптимизация малого размера. Хилл также рассказывает о поставщиках исполнения ONNX Runtime, которые обеспечивают оптимальную производительность на различном оборудовании, а также о выпуске мобильных пакетов, поддерживающих преобразование NHWC во время выполнения. В видео также рассказывается о поддержке оператора, чувствительной к макету, поддержке Xamarin для кроссплатформенных приложений, веб-среде выполнения ONNX и библиотеке расширений среды выполнения ONNX, которая фокусируется на работе модели перед пост-обработкой, включая преобразование текста и математические операции, и в настоящее время фокусируется на НЛП, видение и текстовые домены.

  • 00:00:00 В этом разделе Райан Хилл, инженер-программист, работающий над средой выполнения ONNX около четырех лет, обсуждает функции среды выполнения ONNX и ее новых выпусков. Он подчеркивает, что ONNX Runtime — это кроссплатформенная среда выполнения, которая может работать с несколькими архитектурами ЦП и имеет языковые привязки для нескольких языков программирования. Он широко используется во многих отраслях, включая Microsoft, выпускающую более 160 моделей. Райан также обсуждает новые функции, добавленные в последних выпусках, такие как возможность вызывать операционные ядра непосредственно вне вызова запуска модели и возможность передавать внешние инициализаторы в виде массивов байтов для вывода модели. Кроме того, Райан рассказывает об улучшениях производительности последней версии, таких как оптимизатор транспонирования и функция оптимизации небольшого размера. Наконец, он выделяет исполняющих поставщиков ONNX Runtime, которые позволяют ему оптимально работать на различном оборудовании, и версии его мобильных пакетов, которые теперь поддерживают преобразование NHWC во время выполнения.

  • 00:05:00 В этом разделе видео рассказывается о новых функциях и обновлениях среды выполнения ONNX, включая поддержку оператора с учетом макета и поддержку Xamarin для кроссплатформенных приложений на Android и iOS. Кроме того, веб-среда выполнения ONNX предлагает единую кодовую базу C++, скомпилированную в веб-сборку, которая работает быстрее и использует меньше памяти, а теперь существует библиотека расширений среды выполнения ONNX, которая фокусируется на работе модели перед постобработкой, позволяя пользователям выполнять эта работа полностью выполняется внутри вызова модели. Библиотека включает в себя преобразование текста, математические операции и в настоящее время фокусируется на NLP, зрении и текстовых областях. Команда Microsoft Office в настоящее время использует эту библиотеку расширений.
 

ONNX Runtime v1.12.0 — обзор релиза



ONNX Runtime v1.12.0  — обзор релиза

Версия 1.12.0 среды выполнения ONNX (ORT) ориентирована на создание логических выводов, но также включает в себя постоянные инвестиции в обучение, а интеграция с Hugging Face Optimum приводит к ускорению нескольких моделей Hugging Face. Новые функции включают в себя возможность использовать собственные операции ORT в пользовательских операциях и вызывать непосредственно встроенного оператора или оператора среды выполнения без построения графа. Релиз также включает поддержку .NET 6 и многоплатформенного пользовательского интерфейса приложения (MAUI), а также поставщиков выполнения для конкретных платформ, таких как Neural Processing Unit на Android и Core ML на iOS. Повышение производительности было достигнуто за счет уменьшения выделения памяти во время логического вывода и устранения ненужного ведения журнала. Планируются дальнейшие улучшения для повышения локальности кэша и использования пула потоков.

  • 00:00:00 В этом разделе обсуждаются новые функции и обновления версии 1.12 среды выполнения ONNX. К ним относятся прекращение поддержки стандарта .net 1.1 и добавление поддержки смещения ONNX 17 и смещения xml 3. Одной из новых функций является возможность вызывать отдельные операции без создания отдельного графа и поддержка подачи внешних инициализаторов для логического вывода. также был добавлен. Другие обновления включают поддержку python 310 и включение поддержки mac m1 в библиотеках python и java, а также добавление поддержки .net 6 maui в пакете c-sharp. Также были внесены улучшения в производительность и квантование, а также были представлены новые поставщики исполнения, включая Qualcomm Snappy и общую инфраструктуру для аварийного пакета ep, с продолжающейся работой по добавлению большего количества ядер для мобильных и веб-сценариев.

  • 00:05:00 В этом разделе спикер обсуждает обновления, внесенные в среду выполнения ONNX (ORT), и упоминает, что основное внимание уделялось логическим выводам. Тем не менее, продолжались инвестиции в обучение ORT для ускорения обучения больших моделей. Недавняя интеграция с Hugging Face Optimum привела к ускорению работы нескольких моделей Hugging Face. Затем спикер представляет Рэнди, который обсуждает новую функцию, которая позволяет пользователям использовать собственные операции среды выполнения ONNX в пользовательских операциях. Рэнди объясняет, что эта функция возникла в результате запросов клиентов на повышение производительности и универсальности пользовательских операторов за счет использования мощных возможностей матричных вычислений среды выполнения ONNX.

  • 00:10:00 В этом разделе спикер обсуждает новую функцию, которая позволяет клиентам напрямую вызывать собственный оператор или оператор времени выполнения без построения графика или чего-то подобного, что значительно упрощает выполнение функций вычисления матриц. Эта функция была предложена сообществу, потому что другая группа клиентов работала над обработкой звука и хотела добиться управления операторами, то есть они хотели кэшировать некоторые прошлые входные или выходные данные, объединять их с последними входными данными и передавать оператору комбинированные измененные данные. вход. Раньше этого было трудно достичь, но с новой функцией клиенты могут добавить оболочку вокруг собственного оператора среды выполнения ONNX для управления операторами, упрощая свою жизнь и достигая своей цели. Примеры использования этой функции доступны на веб-сайте сообщества.

  • 00:15:00 В этом разделе Скотт Маккей, руководитель ONNX Runtime Mobile, обсуждает новые функции, добавленные в версии 1.12.0 ONNX Runtime. Релиз включает поддержку .NET 6 и многоплатформенного пользовательского интерфейса приложения (MAUI), что позволяет разработчикам создавать приложения с использованием единой общей базы кода, которые могут работать на Android, iOS, macOS, Windows и Linux. ONNX Runtime также включает поставщиков исполнения для конкретных платформ, таких как Neural Processing Unit на Android и Core ML на iOS, которые могут оптимизировать скорость выполнения модели и энергоэффективность. Маккей объясняет, что разработчики могут использовать одни и те же привязки C# для взаимодействия с библиотекой времени выполнения ONNX во всех этих платформах, но может потребоваться некоторый код для конкретной платформы, необходимый для обработки различий в размерах экрана устройств и обработки изображений. Чтобы добавить среду выполнения ONNX в проект .NET 6, разработчики могут использовать пакет microsoft.ml.onnxruntime и пакет microsoft.ml.onnxruntime.managed, которые предоставляют реализацию C++ для выполнения модели и привязки C# для взаимодействия с собственным библиотека.

  • 00:20:00 В этом разделе спикер обсуждает наличие примеров для пользователей, чтобы научиться использовать новые библиотеки. Существует репозиторий Github с примером приложения Xamarin для демонстрации функциональности нового выпуска. Кроме того, команда будет обновлять приложение, чтобы включить в него приложение Maui, похожее по дизайну. Наконец, аудитория проявляет интерес к подробному руководству, поскольку новая поддержка Мауи будет очень полезной, а примеры будут превосходными. Следующий докладчик объясняет концепцию расширяемости команды ONNX Runtime и предоставляет обновленную информацию о поставщиках выполнения. Обновление для этого раздела посвящено интеграции с оборудованием через интерфейс исполняющего провайдера. В этом выпуске команда сосредоточилась на анализе рабочих нагрузок, а сотрудничество с такими поставщиками, как Nvidia, Intel и Qualcomm, принесло множество улучшений. Одним из улучшений является возможность совместного использования памяти контекста выполнения, которая снижает накладные расходы на доступ к нескольким подграфам с помощью TensorRT. Еще одна оптимизация относится к поддержке кэширования ядра, когда создание механизмов заранее сокращает время на перестроение механизмов во время вывода.

  • 00:25:00 В этом разделе обсуждается обзор выпуска версии 1.12.0 ONNX Runtime, в частности поставщика исполнения под названием Snappy, что означает Snapdragon Neural Processing Engine от Qualcomm. Это среда выполнения Qualcomm, которая используется для ускорения рабочих нагрузок ИИ на мобильных SOC Snapdragon. Поддержка Snappy является совершенно новой и была объявлена на конференции Microsoft Build в прошлом месяце. Наряду с поддержкой Snappy Intel также начала создавать пакеты Python, которые размещаются на PyPI с ONNX Runtime с включенным OpenVINO. Это упрощает настройку для разработчиков и обеспечивает лучшую поддержку моделей с динамическими формами ввода. Ссылки на документацию и примеры также приведены в примечаниях к выпуску.

  • 00:30:00 В этом разделе Дмитрий Смит, главный инженер-программист Microsoft, обсуждает улучшения производительности, внесенные в версию 1.12.0 среды выполнения ONNX. Клиенты обращались в Microsoft с просьбой снизить задержку ЦП и использование для логического вывода, что потребовало внесения улучшений. Команда сосредоточилась на сокращении выделения памяти во время логического вывода и устранении ненужного ведения журнала, изменив способ написания кода. Улучшения привели к уменьшению задержки в некоторых сценариях в два или более раза, а в будущих выпусках запланированы дальнейшие улучшения, такие как повышение локальности кэша и использование пула потоков.
v1.12.0 ONNX Runtime - Release Review
v1.12.0 ONNX Runtime - Release Review
  • 2022.07.25
  • www.youtube.com
ORT 1.12 adds support for ONNX 1.12 (opset 17), Python 3.10, .NET 6/MAUI, and Mac M1 builds in the Python and Java packages. We’ve introduced new features su...
Причина обращения: