Синтетические данные - это искусственно сгенерированные данные, которые имитируют статистические свойства реальных данных, а не собираются непосредственно из реальных событий или измерений. В области искусственного интеллекта (ИИ) и машинного обучения (МЛ) синтетические данные служат важнейшей альтернативой или дополнением к реальным обучающим данным. Они особенно ценны, когда сбор достаточного количества реальных данных затруднен, дорог, требует много времени или вызывает опасения по поводу конфиденциальности. Эта искусственно созданная информация помогает обучать модели, тестировать системы и исследовать сценарии, которые в реальности могут быть редкими или опасными.
Как создаются синтетические данные
Синтетические данные можно генерировать с помощью различных техник, в зависимости от желаемой сложности и достоверности:
- Статистическое моделирование: Использование статистических методов, таких как выборка из распределений, которые соответствуют характеристикам реальных данных.
- Симуляция: Создание виртуальных сред или моделей для генерации данных на основе заранее заданных правил и взаимодействий. Это распространено в таких областях, как робототехника и автономные системы. Такие платформы, как NVIDIA Omniverse, часто используются для создания реалистичных симуляций.
- Генеративные модели: Использование методов глубокого обучения (DL), таких как генеративные адверсарные сети (GAN) или вариативные автокодировщики (VAE), для изучения закономерностей, лежащих в основе реальных данных, и генерации новых, похожих точек данных. В оригинальной статье о GAN был представлен мощный фреймворк для этого.
Важность в искусственном интеллекте и компьютерном зрении
Синтетические данные дают несколько преимуществ для развития ИИ:
- Преодоление нехватки данных: Предоставляет большие массивы данных, необходимые для обучения сложных моделей, таких как Ultralytics YOLO когда реальные данные ограничены.
- Повышение конфиденциальности данных: Позволяет обучать модели, не раскрывая конфиденциальную информацию о реальном мире, что крайне важно в таких областях, как здравоохранение и финансы. Иногда техники могут включать в себя такие концепции, как дифференциальная конфиденциальность.
- Охватывая крайние случаи: Позволяет создавать данные для редких или критических сценариев (например, аварийные ситуации для самоуправляемых автомобилей), которые сложно зафиксировать в реальном мире.
- Уменьшение предвзятости: потенциально может помочь смягчить предвзятость наборов данных, создавая сбалансированные наборы данных, хотя нужно быть осторожным, чтобы не внести новые предвзятости.
- Экономия средств и времени: Создание синтетических данных может быть быстрее и дешевле, чем обширный сбор и аннотирование реальных данных.
В компьютерном зрении синтетические изображения используются для обучения моделей для таких задач, как обнаружение объектов и сегментация изображений в различных условиях (освещение, погода, точки обзора).
Применение в реальном мире
- Автономные транспортные средства: Обучение систем восприятия для самоуправляемых автомобилей требует огромного количества данных, охватывающих различные условия вождения и редкие события (например, аварии или необычные препятствия). Компании используют симуляторы вроде Unity Simulation или собственные платформы вроде среды моделирования Waymo, чтобы генерировать реалистичные синтетические данные о вождении, повышая надежность и безопасность моделей для ИИ в автомобилях.
- Здравоохранение: Правила конфиденциальности пациентов (например, HIPAA) ограничивают использование реальных медицинских данных. Синтетические данные позволяют исследователям и разработчикам обучать модели ИИ для анализа медицинских изображений (например, обнаружения опухолей) или электронных медицинских карт, не нарушая при этом конфиденциальность пациента. Такие проекты, как Synthea, генерируют синтетические истории болезни пациентов для исследований в области ИИ в здравоохранении.
Синтетические данные против дополнения данных
Хотя и синтетические данные, и увеличение данных направлены на увеличение разнообразия и объема обучающих данных, это разные понятия:
- Дополнение данных: Представляет собой применение преобразований (таких как поворот, масштабирование, кадрирование, изменение цвета) к существующим реальным данным для создания слегка измененных версий. Это расширяет набор данных, но зависит от наличия исходного набора реальных данных. Для этого можно интегрировать такие инструменты, как Albumentations.
- Синтетические данные: Предполагает создание совершенно новых точек данных с нуля, часто с помощью моделей или симуляторов, не обязательно начиная с реальных примеров (хотя обычно модели изначально обучаются на реальных данных).
Синтетические данные могут устранить пробелы, которые не может устранить аугментация, например, создать примеры совершенно невиданных сценариев или сгенерировать данные, когда реальные данные совершенно недоступны или непригодны из-за ограничений конфиденциальности. Однако обеспечение точности синтетических данных, отражающих сложность реального мира, остается сложной задачей, которая при отсутствии тщательного контроля может привести к таким проблемам, как чрезмерная подгонка под синтетическое распределение. Платформы вроде Ultralytics HUB поддерживают обучение моделей на различных наборах данных, в том числе и синтетических.