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

JSON

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

JSON, или JavaScript Object Notation, - это легкий текстовый формат, используемый для хранения и передачи данных. Разработанный таким образом, чтобы его было легко читать и писать людям, а машинам было так же легко разбирать и генерировать данные, JSON стал стандартом де-факто для обмена данными в современных вычислениях. Независимость от языка позволяет ему работать в различных средах программирования, что делает его краеугольной технологией. краеугольной технологией для веб-приложения и сложных систем искусственного интеллекта (ИИ).

Основная структура JSON

Данные JSON организованы в две основные структуры, которые отражают общие типы данных, встречающиеся в большинстве языков:

  • Объекты: Это неупорядоченные коллекции пар ключ-значение, заключенные в фигурные скобки {}. В контексте ИИ объект может представлять метаданные одного изображения, где ключи - это строки (например, "имя файла", "ширина"), а значения - соответствующие данные.
  • Массивы: Это упорядоченные списки значений, заключенные в квадратные скобки []. Массивы часто используются для хранения списков предсказаний, таких как несколько ограничивающая рамка координаты, обнаруженные в пределах одного кадр.

Синтаксис определяется стандартом ECMA-404, что обеспечивает согласованность на разных платформах. Для более глубокого погружения в синтаксические диаграммы можно воспользоваться официальной документацией Документация JSON.org содержит исчерпывающую информацию.

Применение в AI и машинном обучении

В рабочих процессах машинного обучения (ML) JSON служит как критический мост между различными этапами конвейера, от предварительной обработки данных до окончательного развертывания модели. Благодаря своей универсальности он может работать как со структурированными данными, необходимыми для обучения, так и с динамическими выводами. генерируемые в процессе вывода.

Аннотации к набору данных

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

Вывод модели и API

Когда обученная модель развертывается в производстве с помощью методы обслуживания моделей, она часто взаимодействует с другими программными компонентами через REST API. Например, приложение может отправить изображение на сервер, на котором работает Ultralytics YOLO11. Сервер сервер обрабатывает изображение и возвращает результаты прогнозирования - классы, баллы доверия и данные о местоположении, оформленные в виде строки JSON строка. Этот вывод может быть легко использован внешними приложениями, базами данных или системами управления робототехникой.

В следующем примере показано, как сгенерировать JSON-вывод из результата вывода с помощью ultralytics Пакет Python :

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on a sample image
results = model("https://ultralytics.com/images/bus.jpg")

# Convert the first result object to a JSON string
# This serializes detection data including boxes, classes, and confidence
print(results[0].tojson())

JSON по сравнению с другими форматами данных

Несмотря на повсеместное распространение JSON, важно отличать его от других форматов сериализации данных, часто встречающихся в проектах ML.

  • YAML (YAML Ain't Markup Language): YAML разработан как максимально человекочитаемый и поддерживает комментарии, что делает его предпочтительным выбором для конфигурационных файлов. В экосистеме Ultralytics YAML используется для определения пути к набору данных и настройки гиперпараметров, в то время как JSON предпочтительнее для обмена данными и ответов API благодаря строгому синтаксису и более быстрому разбору.
  • XML (eXtensible Markup Language): XML использует структуру на основе тегов, подобную HTML. Хотя он надежен и поддерживает сложные схемы, он он значительно более многословен, чем JSON. В современных конвейерах глубокого обучения XML в значительной степени заменяется заменяется JSON, хотя он сохраняется в устаревших системах и специфических форматах, таких как Pascal VOC для обнаружения объектов.

Актуальность в современных стеках искусственного интеллекта

Применение JSON в искусственном интеллекте распространяется не только на библиотеки. Такие фреймворки, как TensorFlow.js позволяют сохранять и загружать модели непосредственно в виде файлов JSON, обеспечивая возможность машинного обучения через браузер. Кроме того, базы данных NoSQL, такие как MongoDB, которые хранят данные в виде JSON-документов, все чаще используются для для управления огромными озерами неструктурированных данных, необходимых для обучения базовых моделей.

Предоставляя стандартизированный, легкий и читаемый формат, JSON упрощает сложность развертывания моделей и обеспечивает совместимость. развертывания моделей и обеспечивает совместимость между различными инструментами, составляющими современную экосистему ИИ. Для разработчиков, заинтересованных в разборе JSON в веб-среде средах, на сайте Mozilla Developer Network (MDN) предлагает обширные учебные пособия и документацию.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас