Что такое онтология?
В контексте аннотации данных онтология (или таксономия меток) — это полная схема классов, атрибутов и связей, которые аннотаторы используют для разметки данных. Она определяет:- Что размечать (классы объектов)
- Как описывать объекты (атрибуты и свойства)
- Как классы связаны друг с другом (иерархия и группировка)
Классы объектов
Классы объектов — это основные строительные блоки вашей таксономии. Каждый класс представляет категорию объектов, которые аннотаторы будут идентифицировать и размечать в данных.Определение классов
При создании проекта в Avala вы определяете конфигурацию меток как список классов:Лучшие практики именования классов
| Практика | Пример | Зачем |
|---|---|---|
| Используйте строчные, конкретные имена | sedan, pickup_truck | Уменьшает неоднозначность |
| Избегайте пересекающихся определений | Не имейте одновременно car и vehicle на одном уровне | Предотвращает путаницу аннотаторов |
| Будьте последовательны с разделителями | traffic_light, а не traffic-light или trafficLight | Единообразный парсинг в пайплайнах обучения |
| Включайте негативные/фоновые классы только при необходимости | unknown, ignore_region | Некоторые модели требуют явных фоновых меток |
Атрибуты
Атрибуты добавляют структурированные метаданные к каждой аннотации помимо класса объекта. Они позволяют аннотаторам описывать такие свойства, как видимость, поза или состояние.Типы атрибутов
Avala поддерживает несколько типов атрибутов, которые можно прикрепить к любому классу объекта:| Тип | Описание | Когда использовать | Пример |
|---|---|---|---|
| Выпадающий список | Одиночный выбор из предопределённого списка | Взаимоисключающие варианты | Перекрытие: none, partial, heavy |
| Чекбокс | Булевый переключатель | Простые флаги да/нет | is_parked: true/false |
| Текст | Произвольный строковый ввод | Уникальные идентификаторы или описания | Номерной знак |
| Число | Числовое значение | Измерения или подсчёты | Расчётное расстояние в метрах |
| Множественный выбор | Несколько вариантов из списка | Одновременные, невзаимоисключающие состояния | Видимые элементы: headlights, taillights, turn_signal |
Настройка атрибутов
Атрибуты определяются в конфигурации классификации проекта вместе с конфигурацией меток:Условные атрибуты
Используйте полеapplies_to, чтобы показывать атрибуты только для соответствующих классов. Это сохраняет интерфейс аннотатора чистым — объекту pedestrian не нужен атрибут is_parked, а объекту traffic_light не нужен truncation.
Иерархические таксономии
Для сложных предметных областей плоские списки классов становятся неудобными. Иерархические таксономии группируют связанные классы под родительскими категориями.Пример: таксономия транспортных средств
Когда использовать иерархии
| Сценарий | Рекомендация |
|---|---|
| Менее 15 классов | Плоский список проще и быстрее |
| 15-50 классов | Группируйте в 3-5 категорий верхнего уровня |
| 50+ классов | Используйте многоуровневую иерархию с поиском |
| Классы разделяют атрибуты | Группируйте под родителем для наследования атрибутов |
Проектирование иерархий
- Начинайте широко, затем уточняйте. Начните с категорий верхнего уровня (
vehicle,pedestrian,infrastructure) и добавляйте детализацию только там, где это нужно вашей модели. - Каждый листовой класс должен быть однозначным. Если аннотаторы не могут надёжно отличить два подкласса, объедините их.
- Балансируйте глубину и ширину. Глубокие иерархии (4+ уровня) замедляют аннотаторов. Предпочитайте более широкие деревья с 2-3 уровнями.
Одиночная и множественная классификация
Avala поддерживает оба режима классификации в зависимости от потребностей вашего проекта.Одиночная метка
Каждый объект или сцена получает ровно одну метку класса. Это режим по умолчанию для большинства типов аннотаций.- Обнаружение объектов: каждая ограничивающая рамка получает один класс
- Классификация сцены: каждое изображение получает одну категорию
Множественные метки
Объект или сцена может получить несколько меток одновременно. Используйте это, когда категории не являются взаимоисключающими.- Изображение может быть одновременно
rainyиnighttime - Транспортное средство может быть одновременно
damagedиparked
Чек-лист проектирования онтологии
Перед началом проекта аннотации проверьте вашу онтологию по этому чек-листу:| Проверка | Вопрос |
|---|---|
| Полнота | Имеет ли каждый объект, который ваша модель должна обнаруживать, свой класс? |
| Взаимоисключаемость | Может ли аннотатор всегда назначить ровно один класс без неоднозначности? |
| Покрытие атрибутов | Все ли свойства, необходимые для обучения, охвачены атрибутами? |
| Согласованная детализация | Классы одного уровня одинаково специфичны? |
| Ясность для аннотатора | Может ли новый аннотатор понять каждый класс только по его имени? |
| Соответствие модели | Соответствует ли таксономия ожиданиям архитектуры вашей модели? |
| Масштабируемость | Можно ли добавить новые классы позже без реструктуризации? |
Типичные ошибки
Избыточная детализация классов
Создание слишком большого количества детализированных классов приводит к низкому согласию между аннотаторами и малому количеству обучающих данных на класс. Проблема: 50 подклассов транспортных средств, большинство из которых имеют менее 100 примеров. Решение: Начните с 5-10 широких классов. Добавляйте подклассы только когда у вас достаточно данных и ваша модель выигрывает от такого различия.Неоднозначные границы
Когда два класса концептуально пересекаются, аннотаторы не могут договориться, какой использовать. Проблема: Существуют иvan, и minivan, но аннотаторы не могут надёжно их различить.
Решение: Либо объедините их в один класс, либо предоставьте явные визуальные руководства с примерами изображений, показывающими границу.
Пропуск граничных случаев
Реальные данные содержат объекты, которые не вписываются аккуратно в вашу таксономию. Проблема: Аннотатор встречает гольф-кар, но в таксономии есть толькоcar, truck и motorcycle.
Решение: Включите универсальный класс вроде other_vehicle и периодически просматривайте элементы, размеченные им, чтобы выявить классы, которые нужно добавить.
Следующие шаги
Основные концепции
Обзор фундаментальных строительных блоков платформы Avala.
Контроль качества
Настройте рабочие процессы рецензирования для валидации качества аннотаций.
Типы аннотаций
Форматы JSON для ограничивающих рамок, полигонов, кубоидов и других типов.
Первый набор данных
Загрузите данные и создайте свой первый проект аннотации.