blinddeconv.processing.extensions.hyperparameter_optimization module
Модуль оптимизации гиперпараметров.
Реализует оптимизацию гиперпараметров алгоритмов слепой деконволюции с использованием байесовских методов оптимизации.
- Поддерживаемые методы:
TPE (Tree-structured Parzen Estimator)
Случайный поиск
Гауссовские процессы
NSGA-II для многокритериальной оптимизации
Автор: Беззаборов А.А.
- class blinddeconv.processing.extensions.hyperparameter_optimization.HyperparameterOptimizer(processing_instance: Any, output_folder: str = 'parameters')[исходный код]
Базовые классы:
ProcessingExtensionОптимизация гиперпараметров с использованием байесовской оптимизации.
Реализует эффективный поиск гиперпараметров для алгоритмов слепой деконволюции с использованием фреймворка Optuna.
- Поддерживаемые стратегии оптимизации:
TPE (Tree-structured Parzen Estimator)
Случайный поиск
Гауссовские процессы (при наличии BoTorch)
NSGA-II для многокритериальной оптимизации
- __init__(processing_instance: Any, output_folder: str = 'parameters')[исходный код]
Инициализация оптимизатора.
Параметры
- processing_instanceAny
Ссылка на объект Processing с изображениями.
- output_folderstr
Директория для сохранения результатов оптимизации.
- execute(algorithm_processor: DeconvolutionAlgorithm, param_ranges: Dict[str, Tuple[int | float, int | float]], n_trials: int = 50, metric: str = 'PSNR', timeout: int | None = 3600, method: OptimizationMethod = OptimizationMethod.TPE, n_jobs: int = 1, seed: int = 42, show_progress: bool = True, save_results: bool = True) OptimizationResult[исходный код]
Оптимизация гиперпараметров для заданного алгоритма.
Параметры
- algorithm_processorDeconvolutionAlgorithm
Алгоритм деконволюции для оптимизации.
- param_rangesDict[str, Tuple]
Словарь соответствия имен параметров кортежам (min, max).
- n_trialsint, по умолчанию 50
Количество испытаний оптимизации.
- metricstr, по умолчанию „PSNR“
Метрика оптимизации: „PSNR“, „SSIM“ или „SHARPNESS“.
- timeoutOptional[int], по умолчанию 3600
Максимальное время оптимизации в секундах (None без ограничения).
- methodOptimizationMethod, по умолчанию TPE
Метод оптимизации.
- n_jobsint, по умолчанию 1
Количество параллельных задач (-1 для всех ядер).
- seedint, по умолчанию 42
Seed для воспроизводимости.
- show_progressbool, по умолчанию True
Отображать индикатор прогресса.
- save_resultsbool, по умолчанию True
Сохранять лучшие параметры в JSON-файл.
Возвращает
- OptimizationResult
Контейнер с лучшими параметрами и историей оптимизации.