LGAINAMay 19, 2023

PyTorch Hyperparameter Tuning - A Tutorial for spotPython

arXiv:2305.11930v25 citations
Originality Synthesis-oriented
AI Analysis

This provides a practical guide for researchers and practitioners using PyTorch to improve model performance through hyperparameter tuning, but it is incremental as it adapts an existing tool to a new framework.

This tutorial tackles the integration of the spotPython hyperparameter tuner into PyTorch workflows, demonstrating that it achieves similar or better results than Ray Tune on the CIFAR10 image classifier while offering more flexibility and transparency.

The goal of hyperparameter tuning (or hyperparameter optimization) is to optimize the hyperparameters to improve the performance of the machine or deep learning model. spotPython (``Sequential Parameter Optimization Toolbox in Python'') is the Python version of the well-known hyperparameter tuner SPOT, which has been developed in the R programming environment for statistical analysis for over a decade. PyTorch is an optimized tensor library for deep learning using GPUs and CPUs. This document shows how to integrate the spotPython hyperparameter tuner into the PyTorch training workflow. As an example, the results of the CIFAR10 image classifier are used. In addition to an introduction to spotPython, this tutorial also includes a brief comparison with Ray Tune, a Python library for running experiments and tuning hyperparameters. This comparison is based on the PyTorch hyperparameter tuning tutorial. The advantages and disadvantages of both approaches are discussed. We show that spotPython achieves similar or even better results while being more flexible and transparent than Ray Tune.

Code Implementations2 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes