Data Lake
Узнай, как озера данных служат основой для AI и ML. Научись использовать необработанные данные для обучения Ultralytics YOLO26 и оптимизации рабочих процессов компьютерного зрения.
Озеро данных — это централизованный репозиторий хранения, в котором огромный объём необработанных данных хранится в исходном формате до тех пор, пока они не понадобятся. В отличие от традиционных систем хранения, требующих структурировать данные до их загрузки, озеро данных принимает данные «как есть», включая структурированные данные (строки и столбцы), полуструктурированные данные (CSV, журналы, XML, JSON), неструктурированные данные (электронные письма, документы, PDF-файлы) и двоичные данные (изображения, аудио, видео). Такая архитектурная гибкость делает озёра данных основой современных стратегий больших данных, особенно для организаций, использующих искусственный интеллект (AI) и машинное обучение (ML). Отделяя сбор данных от их использования, организации могут относительно недорого хранить огромные массивы информации и определять конкретные вопросы для анализа позднее.
Роль озёр данных в искусственном интеллекте и машинном обучении#
В контексте разработки систем искусственного интеллекта основная ценность озера данных заключается в его способности поддерживать рабочие процессы глубокого обучения (DL). Для достижения высокой точности сложным нейронным сетям требуются разнообразные и обширные данные для обучения. Озеро данных служит промежуточным хранилищем, где находятся необработанные ресурсы — например, миллионы изображений высокого разрешения для компьютерного зрения (CV) или тысячи часов аудиозаписей для распознавания речи, — до их обработки.
Специалисты по анализу данных используют в озёрах данных методологии «схема при чтении». Это означает, что структура применяется к данным только при их чтении для обработки, а не при записи в хранилище. Благодаря этому обеспечивается высокая гибкость: один и тот же необработанный набор данных можно обрабатывать разными способами для различных задач предиктивного моделирования, не изменяя исходный источник. Кроме того, развитые озёра данных часто интегрируются с сервисами облачных вычислений, такими как Amazon S3 или Azure Blob Storage, обеспечивая масштабируемую параллельную обработку, необходимую для обучения ресурсоёмких моделей, таких как YOLO26.
Озеро данных и хранилище данных#
Хотя их часто путают, озеро данных отличается от хранилища данных. Хранилище данных хранит данные в структурированных таблицах и оптимизировано для быстрых SQL-запросов и подготовки отчётов для бизнес-аналитики. В нём используется принцип «схема при записи», то есть данные необходимо очистить и преобразовать с помощью процесса извлечения, преобразования и загрузки (ETL) до их добавления в систему.
И наоборот, озеро данных оптимизировано для хранения больших объёмов разнообразной информации. Оно поддерживает обучение без учителя и исследовательский анализ, цель которого может быть ещё не определена. Например, хранилище данных может показать, сколько товаров было продано в прошлом месяце, а озеро данных содержит необработанные журналы отзывов клиентов и изображения, которые помогают модели искусственного интеллекта понять, почему эти товары продавались.
Практические применения#
Озёра данных играют важную роль в различных отраслях, расширяющих границы автоматизации:
- Автономные транспортные средства: разработка технологий беспилотного вождения требует обработки петабайт данных с датчиков. Автономные транспортные средства генерируют непрерывные потоки точечных облаков LiDAR, радиолокационных сигналов и видео высокой чёткости. Озеро данных хранит эти необработанные телеметрические данные, позволяя инженерам воспроизводить реальные сценарии для обучения моделей обнаружения объектов, выявляющих пешеходов и препятствия в различных погодных условиях.
- Диагностика в здравоохранении: в современной области анализа медицинских изображений больницы объединяют историю болезни пациентов, геномные данные и файлы визуализации (МРТ, КТ) в защищённом озере данных. Затем исследователи могут обращаться к этим анонимизированным неструктурированным данным для обучения моделей обнаружения опухолей или прогнозирования заболеваний, часто используя методы сегментации для выделения представляющих интерес областей на медицинских изображениях.
Использование озёр данных с Ultralytics#
При работе с платформой Ultralytics пользователи часто извлекают подмножества необработанных данных из озера данных своей организации, чтобы создавать размеченные наборы данных для обучения. После извлечения и разметки исходных изображений их можно использовать для обучения современных моделей.
В следующем примере показано, как разработчик может загрузить локальный набор данных (имитируя получение данных из озера данных), чтобы обучить модель YOLO26 для задачи обнаружения.
from ultralytics import YOLO
# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Train the model using a dataset configuration file
# In a production pipeline, this data might be streamed or downloaded
# from a cloud-based data lake prior to this step.
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)
# Run inference on a new image to verify performance
predictions = model("https://ultralytics.com/images/bus.jpg")








