Разработайте план цифровой обработки для поиска слабых переменных объектов в петабайтном наборе данных: какие алгоритмы машинного обучения, препроцессинг и методы валидации вы бы использовали
Краткий пошаговый план цифровой обработки для поиска слабых переменных и движущихся объектов в петабайтном наборе данных. 1) Предобработка (pipeline на уровне изображений) - Калибрование: bias/dark/flat, удаление космических лучей. - Астрометрическая и фотометрическая калибровка, моделирование PSF (например PSFEx). - Подавление фона и шумов (local background, wavelet denoising). - Точная вычитательная фотометрия (image subtraction): использовать ZOGY (Zackay, Ofek & Gal‑Yam) или оптимизированный алгоритм разности для сохранения SNR слабых источников. - Извлечение источников и forced photometry на всех эпохах. 2) Методы обнаружения слабых/движущихся сигналов - Для стационарно‑переменных (пульсации, вспышки): детектировать на дифференс‑изображениях + строить light‑curves. - Для слабых движущихся объектов: shift‑and‑stack по наборам предполагаемых скоростей/направлений; matched‑filter для известных PSF; треклет‑линкинг (MOPS, HelioLinC) и Hough/graph‑linking для большого количества краткосрочных детекций. - Для предельных SNR использовать coadds с учётом движения (stack along trajectory) и оптимальное взвешивание кадров. 3) Машинное обучение / алгоритмы - Ранжирование кандидатов (реал/кусок шума): CNN на «cutout» дифференс‑изображений (архитектуры: ResNet/EfficientNet лёгкой версии). - Обработка временных рядов: 1D‑CNN, LSTM/GRU или Transformer для light‑curves; Gaussian Process (sparse GP) для модели шума и интерполяции. - Анномалия/novelty detection для нетипичных слабых сигналов: автокодировщики (VAE/denoising AE), Isolation Forest. - Табличные классификаторы для финального ранжирования (XGBoost/LightGBM) на признаках (SNR, shape, χ², color, variability metrics). - Для связывания детекций в треки: графовые методы + оптимизация потока/ILP, KD‑tree/FAISS для поиска соседей по параметрам скорости/позиции. - Учет неполноты и шума: ансамбли моделей и калибровка вероятностей (Platt scaling, isotonic). 4) Масштабируемость и инфраструктура - Декомпозиция по HEALPix/тайлам и по временным окнам; хранение каталогов в columnar формате (Parquet) или zarr; объектное хранилище S3/Ceph. - Потоковая обработка: Kafka для инжеста, Dask/Spark для распределённой обработки, GPU‑кластеры для CNN; оркестрация Kubernetes. - Поэтапный фильтр: лёгкие критерии → ML‑классификатор → тяжёлая процедура связывания/stacking, чтобы уменьшить вычисления. - Индексация: FAISS/Annoy для ANN поиска, spatial indices (HTM/HEALPix) для быстрой выборки. - Производительность: оценивать сложность: например shift‑and‑stack по NvN_vNv скоростям и NtN_tNt кадрам даёт примерно O(NvNtNpix)O(N_v N_t N_\text{pix})O(NvNtNpix); использовать приближения и pruning. 5) Валидация и метрические критерии - Injection–recovery: встраивать синтетические источники с распределением яркостей mmm, скоростей, форм и запускать полный pipeline. Вычислять эффективность обнаружения ϵ(m)\epsilon(m)ϵ(m). - SNR формула для оценки предела обнаружения: SNR=FF+npix(B+σread2)\mathrm{SNR}=\dfrac{F}{\sqrt{F+n_\text{pix}(B+\sigma_\text{read}^2)}}SNR=F+npix(B+σread2)F, где FFF — поток источника, BBB — фоновый поток на пиксель. - Метрики: completeness/recall ϵ(m)\epsilon(m)ϵ(m), purity (precision), ROC/AUC, PR‑curve, F1, для треков — track completeness и track purity, для позиционной точности — RMS astrometric error. - Кросс‑валидация: временная/полево‑ориентированная (time/field holdout) чтобы избежать утечки. K‑fold не по эпохам. - Оценка ошибок и калибровка вероятностей: калибровочные кривые, bootstrap/MC dropout/ensembles для оценок неопределённости. - Регулярные тесты на дрейф данных (data drift) и перетренировка по расписанию. 6) Практические рекомендации по разработке - Стадирование: сначала простая pipeline (SExtractor+ZOGY+RF) —> затем усложнение (CNN, shift‑and‑stack). - Инструменты: PyTorch/TensorFlow для DL, scikit‑learn/XGBoost для табличных моделей, ZOGY/SExtractor/SEP/PSFEx для астропроцессинга, Dask/Spark+Kubernetes для масштаба. - Мониторинг: метрики completeness/purity по полям и по времени, трекинг производительности, логирование ошибок. - Оценка затрат: профилировать «горячие» этапы (stacking, CNN инференс, linking) и оптимизировать: mixed precision, batch inferring, pruning гиперпараметров поиска скоростей. 7) План валидации на этапе развёртывания (пример) - Сформировать тестовый набор: N_fake ≳ 10410^4104 синтетических источников по диапазону яркостей/скоростей. - Прогнать полный pipeline, построить ϵ(m)\epsilon(m)ϵ(m), PR‑curve, выбрать порог ранжирования для заданной цели (например 90% completeness при FPR ≤ заданному). - Автоматические ежедневные injection‑tests и ручная инспекция верхних кандидатов плюс визуализации (saliency/grad‑CAM для CNN). Это минимально необходимая архитектура и набор методов; конкретные реализации и гиперпараметры зависят от свойств данных (PSF, частота наблюдений, ожидаемые скорости) и допустимых вычислительных ресурсов.
1) Предобработка (pipeline на уровне изображений)
- Калибрование: bias/dark/flat, удаление космических лучей.
- Астрометрическая и фотометрическая калибровка, моделирование PSF (например PSFEx).
- Подавление фона и шумов (local background, wavelet denoising).
- Точная вычитательная фотометрия (image subtraction): использовать ZOGY (Zackay, Ofek & Gal‑Yam) или оптимизированный алгоритм разности для сохранения SNR слабых источников.
- Извлечение источников и forced photometry на всех эпохах.
2) Методы обнаружения слабых/движущихся сигналов
- Для стационарно‑переменных (пульсации, вспышки): детектировать на дифференс‑изображениях + строить light‑curves.
- Для слабых движущихся объектов: shift‑and‑stack по наборам предполагаемых скоростей/направлений; matched‑filter для известных PSF; треклет‑линкинг (MOPS, HelioLinC) и Hough/graph‑linking для большого количества краткосрочных детекций.
- Для предельных SNR использовать coadds с учётом движения (stack along trajectory) и оптимальное взвешивание кадров.
3) Машинное обучение / алгоритмы
- Ранжирование кандидатов (реал/кусок шума): CNN на «cutout» дифференс‑изображений (архитектуры: ResNet/EfficientNet лёгкой версии).
- Обработка временных рядов: 1D‑CNN, LSTM/GRU или Transformer для light‑curves; Gaussian Process (sparse GP) для модели шума и интерполяции.
- Анномалия/novelty detection для нетипичных слабых сигналов: автокодировщики (VAE/denoising AE), Isolation Forest.
- Табличные классификаторы для финального ранжирования (XGBoost/LightGBM) на признаках (SNR, shape, χ², color, variability metrics).
- Для связывания детекций в треки: графовые методы + оптимизация потока/ILP, KD‑tree/FAISS для поиска соседей по параметрам скорости/позиции.
- Учет неполноты и шума: ансамбли моделей и калибровка вероятностей (Platt scaling, isotonic).
4) Масштабируемость и инфраструктура
- Декомпозиция по HEALPix/тайлам и по временным окнам; хранение каталогов в columnar формате (Parquet) или zarr; объектное хранилище S3/Ceph.
- Потоковая обработка: Kafka для инжеста, Dask/Spark для распределённой обработки, GPU‑кластеры для CNN; оркестрация Kubernetes.
- Поэтапный фильтр: лёгкие критерии → ML‑классификатор → тяжёлая процедура связывания/stacking, чтобы уменьшить вычисления.
- Индексация: FAISS/Annoy для ANN поиска, spatial indices (HTM/HEALPix) для быстрой выборки.
- Производительность: оценивать сложность: например shift‑and‑stack по NvN_vNv скоростям и NtN_tNt кадрам даёт примерно O(NvNtNpix)O(N_v N_t N_\text{pix})O(Nv Nt Npix ); использовать приближения и pruning.
5) Валидация и метрические критерии
- Injection–recovery: встраивать синтетические источники с распределением яркостей mmm, скоростей, форм и запускать полный pipeline. Вычислять эффективность обнаружения ϵ(m)\epsilon(m)ϵ(m).
- SNR формула для оценки предела обнаружения: SNR=FF+npix(B+σread2)\mathrm{SNR}=\dfrac{F}{\sqrt{F+n_\text{pix}(B+\sigma_\text{read}^2)}}SNR=F+npix (B+σread2 ) F , где FFF — поток источника, BBB — фоновый поток на пиксель.
- Метрики: completeness/recall ϵ(m)\epsilon(m)ϵ(m), purity (precision), ROC/AUC, PR‑curve, F1, для треков — track completeness и track purity, для позиционной точности — RMS astrometric error.
- Кросс‑валидация: временная/полево‑ориентированная (time/field holdout) чтобы избежать утечки. K‑fold не по эпохам.
- Оценка ошибок и калибровка вероятностей: калибровочные кривые, bootstrap/MC dropout/ensembles для оценок неопределённости.
- Регулярные тесты на дрейф данных (data drift) и перетренировка по расписанию.
6) Практические рекомендации по разработке
- Стадирование: сначала простая pipeline (SExtractor+ZOGY+RF) —> затем усложнение (CNN, shift‑and‑stack).
- Инструменты: PyTorch/TensorFlow для DL, scikit‑learn/XGBoost для табличных моделей, ZOGY/SExtractor/SEP/PSFEx для астропроцессинга, Dask/Spark+Kubernetes для масштаба.
- Мониторинг: метрики completeness/purity по полям и по времени, трекинг производительности, логирование ошибок.
- Оценка затрат: профилировать «горячие» этапы (stacking, CNN инференс, linking) и оптимизировать: mixed precision, batch inferring, pruning гиперпараметров поиска скоростей.
7) План валидации на этапе развёртывания (пример)
- Сформировать тестовый набор: N_fake ≳ 10410^4104 синтетических источников по диапазону яркостей/скоростей.
- Прогнать полный pipeline, построить ϵ(m)\epsilon(m)ϵ(m), PR‑curve, выбрать порог ранжирования для заданной цели (например 90% completeness при FPR ≤ заданному).
- Автоматические ежедневные injection‑tests и ручная инспекция верхних кандидатов плюс визуализации (saliency/grad‑CAM для CNN).
Это минимально необходимая архитектура и набор методов; конкретные реализации и гиперпараметры зависят от свойств данных (PSF, частота наблюдений, ожидаемые скорости) и допустимых вычислительных ресурсов.