Первая коллекция суррогатных контрольных показателей для совместной архитектуры и поиска гиперпараметрических (JAHS), созданная для поддержки и облегчения исследований по многоцелевым алгоритмам многоцелевой оптимизации.
Пожалуйста, смотрите нашу документацию здесь. Точные подробности о сборе данных и процессе создания суррогатных, а также о наших экспериментах могут быть найдены в Ассоциционной публикации.
Использование PIP
pip install jahs-bench
Необязательно, вы можете загрузить данные, необходимые для заранее использование суррогатного эталона с
python -m jahs_bench.download --target surrogates
Чтобы проверить, была ли установка успешной, вы можете, например, запустить минимальный пример с
python -m jahs_bench_examples.minimal
Это должно случайным образом попробовать конфигурацию и отображать как выборку с выборкой, так и результат запроса суррогата для этой конфигурации. Примечание. Недавно мы обнаружили, что XGBOOST - библиотека, используемая для наших суррогатных моделей - может страдать от некоторых проблем несовместимости с MacOS. Пользователи, которые сталкиваются с такой проблемой, могут обратиться к этому обсуждению для подробностей.
Конфигурации в нашем пространстве совместной архитектуры и гиперпараметров (JAHS) представлены в виде словари, например,:
config = {
'Optimizer' : 'SGD' ,
'LearningRate' : 0.1 ,
'WeightDecay' : 5e-05 ,
'Activation' : 'Mish' ,
'TrivialAugment' : False ,
'Op1' : 4 ,
'Op2' : 1 ,
'Op3' : 2 ,
'Op4' : 0 ,
'Op5' : 2 ,
'Op6' : 1 ,
'N' : 5 ,
'W' : 16 ,
'Resolution' : 1.0 ,
}
Полное описание в пространстве и конфигурациях поиска см. В нашу документацию.
import jahs_bench
benchmark = jahs_bench . Benchmark ( task = "cifar10" , download = True )
# Query a random configuration
config = benchmark . sample_config ()
results = benchmark ( config , nepochs = 200 )
# Display the outputs
print ( f"Config: { config } " ) # A dict
print ( f"Result: { results } " ) # A dict
API нашего эталона позволяет пользователям либо запросить суррогатную модель (по умолчанию), либо таблицы данных о производительности, либо обучать конфигурацию из нашего пространства поиска с нуля, используя тот же трубопровод, который использовался нашим эталоном. Тем не менее, пользователи должны отметить, что последняя функциональность требует установки jahs_bench_201
с необязательным компонентом data_creation
и его соответствующими зависимостями. Соответствующие данные могут быть автоматически загружены нашим API. Смотрите нашу документацию для деталей.
Мы предоставляем документацию для набора данных производительности, используемого для обучения наших суррогатных моделей и дополнительной информации о наших суррогатных моделях.
Смотрите наш репозиторий экспериментов и нашу документацию.
Мы поддерживаем таблицы лидеров для нескольких задач оптимизации и алгоритмических рамок.