하이퍼 파라미터 최적화
Hyperparameter optimization기계학습에서 하이퍼파라미터 최적화[1] 또는 튜닝은 학습 알고리즘에 대한 최적의 하이퍼파라미터 세트를 선택하는 문제이다.하이퍼 파라미터는 값이 학습 프로세스를 제어하는 데 사용되는 파라미터입니다.반면 다른 파라미터(일반적으로 노드 가중치)의 값은 학습됩니다.
동일한 종류의 기계 학습 모델은 서로 다른 데이터 패턴을 일반화하기 위해 서로 다른 제약, 가중치 또는 학습 속도를 필요로 할 수 있습니다.이러한 척도는 하이퍼 파라미터라고 불리며 모델이 기계학습 문제를 최적으로 해결할 수 있도록 조정해야 합니다.하이퍼파라미터 최적화는 주어진 독립 [2]데이터에서 사전 정의된 손실 함수를 최소화하는 최적의 모델을 생성하는 하이퍼파라미터의 튜플을 찾습니다.목표 함수는 하이퍼 파라미터의 튜플을 취하여 관련 [2]손실을 반환합니다.이 일반화 [3]성능을 추정하기 위해 교차 검증을 사용하는 경우가 많습니다.
접근
그리드 검색
하이퍼파라미터 최적화를 수행하는 기존의 방법은 그리드 검색 또는 파라미터 스위프였으며, 이는 단순히 학습 알고리즘의 하이퍼파라미터 공간의 수동으로 지정된 서브셋을 통한 완전한 검색이다.그리드 검색 알고리즘은 일부 성능 메트릭에 의해 유도되어야 하며, 일반적으로 교육 세트의[4] 교차 검증 또는 홀드아웃 검증 [5]세트의 평가에 의해 측정됩니다.
기계 학습자의 파라미터 공간은 특정 파라미터에 대해 실제값 또는 무제한 값 공간을 포함할 수 있으므로 그리드 검색을 적용하기 전에 수동으로 경계를 설정하고 분리가 필요할 수 있습니다.
예를 들어 RBF 커널을 갖춘 전형적인 소프트 마진 SVM 분류기는 정규화 상수 C와 커널 하이퍼 파라미터 δ라는 적어도 2개의 하이퍼 파라미터를 가지고 있다.두 매개 변수 모두 연속적이므로 그리드 검색을 수행하기 위해 각각에 대해 "합리적인" 값의 유한 집합을 선택합니다.
그리드 검색은 이 두 세트의 데카르트 제품에서 각 쌍(C, ,)을 사용하여 SVM을 훈련하고 보류된 검증 세트(또는 훈련 세트의 내부 교차 검증을 통해)에서 성능을 평가합니다. 이 경우 한 쌍당 여러 SVM이 훈련됩니다.마지막으로 그리드 검색 알고리즘은 검증 절차에서 가장 높은 점수를 달성한 설정을 출력한다.
그리드 검색에는 차원성의 단점이 있지만, 그리드 검색이 평가하는 하이퍼 파라미터 설정은 일반적으로 서로 [3]독립적이기 때문에 종종 당혹스러울 정도로 병렬적입니다.
랜덤 검색
랜덤 검색은 모든 조합의 완전한 열거를 랜덤으로 선택하여 대체합니다.이는 위에서 설명한 이산 설정에 간단히 적용할 수 있지만 연속 공간 및 혼합 공간에도 일반화할 수 있습니다.특히 기계 학습 [3]알고리즘의 최종 성능에 영향을 미치는 하이퍼 파라미터의 수가 적은 경우에는 그리드 검색을 능가할 수 있습니다.이 경우 최적화 문제는 내적 차원성이 [6]낮다고 한다.랜덤 검색은 또한 당혹스러울 정도로 병렬적이며, 표본 추출할 분포를 지정하여 사전 지식을 포함할 수 있습니다.단순함에도 불구하고 랜덤 검색은 새로운 하이퍼 파라미터 최적화 방법의 성능을 비교할 수 있는 중요한 기준선 중 하나입니다.
베이지안 최적화
베이지안 최적화는 노이즈가 많은 블랙박스 함수에 대한 글로벌 최적화 방법입니다.하이퍼파라미터 최적화에 적용된 베이지안 최적화는 하이퍼파라미터 값에서 검증 세트에서 평가된 목표에 대한 함수 매핑의 확률론적 모델을 구축한다.베이지안 최적화는 현재 모델에 기초한 유망한 하이퍼파라미터 구성을 반복적으로 평가하고 업데이트함으로써 이 기능, 특히 최적화의 위치에 대해 가능한 한 많은 정보를 밝히는 관찰을 수집하는 것을 목표로 한다.탐색(결과가 가장 불확실한 하이퍼파라미터)과 이용(최적성에 가까운 하이퍼파라미터)의 균형을 맞추려고 합니다.실제로 베이지안 최적화는 그리드 검색 및 랜덤 검색에 비해 더 적은 평가에서 더 나은 결과를 얻는 것으로 나타났다[7][8][9][10]. 이는 실험이 실행되기 전에 품질에 대해 추론할 수 있는 능력 때문이다.
그라데이션 기반의 최적화
특정 학습 알고리즘의 경우, 하이퍼 파라미터에 대한 구배를 계산한 다음 구배 강하를 사용하여 하이퍼 파라미터를 최적화할 수 있다.이러한 기술의 첫 번째 사용은 [11]신경망에 초점을 맞췄다.그 이후로 이러한 방법은 지원 벡터[12] 기계 또는 로지스틱 [13]회귀 분석과 같은 다른 모형으로 확장되었습니다.
하이퍼 파라미터에 관한 구배를 얻기 위한 다른 접근방식은 자동미분을 [14][15][16][17]사용하여 반복 최적화 알고리즘의 단계를 구분하는 것으로 구성된다.이 방향에 따른 보다 최근의 연구는 암묵적 함수 정리를 사용하여 고구배를 계산하고 역 헤시안 근사를 제안한다.이 방법은 수백만 개의 하이퍼 파라미터로 확장되며 일정한 메모리가 필요합니다.
다른 approach,[18]에서 하이퍼 네트워크 가장 좋은 대응 기능과 가까워지려고 훈련을 받는다.어느 이 방법의 장점은 뿐만 아니라 이산 hyperparameters을 다룰 수 있다.Self-tuning networks[19]은 하이퍼 네트워크에 대한 컴팩트한 표현을 선택하여 이 접근에 대한 기억 효율적인 버전을 제공한다.좀 더 최근에, Δ-STN[20]은 훈련 촉진은 하이퍼 네트워크의 가벼운 reparameterization. Δ-STN도 무게에서 그 무게에 큰 변화 불필요한 비선형 효과 제거하여 네트워크 linearizing이best-response 야코비의 더 좋은 근사를 산출한다 이 방법을 개선했다.
별도로 하이퍼 네트워크 접근으로부터,gradient-based 방법 또한 매개 변수의 연속적인 휴식을 채택하여 이산 hyperparameters을 최적화시키는데 사용할 수 있다.[21]이러한 방법들은 광범위하게 건축 hyperparameters의 신경 구조 검색의 최적화를 이용해 왔다.
진화적 최적화
시끄러운 정비 기능의 세계적 최적화에 발달된 최적화는 방법입니다.hyperparameter 최적화에서, 진화 최적화 hyperparameters의 주어진 알고리즘을 위한 공간 검색하기 위해 진화 알고리즘을 사용한다.[8]진화 hyperparameter 최적화:프로세스 진화의 생물학적 개념에 의해 영감을 받은 따른다.
- 임의의 해결책(즉, 무작위로, 일반적으로 hyperparameters의 tuples를 생성하 100+)의 초기 인구를 만듭니다.
- 그리고 그들의 적합성 함수(예를 들어, 그 기계의 약 10배나 크로스 확인 정확성 그 hyperparameters과 알고리즘 학습)을 획득한 hyperparameters tuples을 평가한다.
- 그들의 상대적 적합성으로 그 hyperparameter tuples게 평가하라.
- 새로운 hyperparameter tuples 교차 및 돌연변이를 거쳐 군사 공격은 세부 점수 hyperparameter tuples을 교체한다.
- 까지 만족스러운 알고리즘 성능이나 알고리즘의 수행 더 이상 좋아지고 있어에 도달한 경우 반복한다 2-4일 밟는다.
발달된 최적화 hyperparameter 최적화에 통계적 기계에 algorithms,[8]자동화 기계 학습, 전형적인 신경 네트워크[22]과 깊은 신경 네트워크 아키텍처 search,[23][24]뿐만 아니라 무게의 깊은 신경 네트워크에서 훈련 학습 사용되어 왔다.[25]
모집단 베이스
PBT(Population Based Training)는 하이퍼 파라미터 값과 네트워크 가중치를 모두 학습합니다.여러 학습 프로세스가 서로 다른 하이퍼 파라미터를 사용하여 독립적으로 작동합니다.진화 방법과 마찬가지로, 성능이 낮은 모델은 더 나은 성과에 기반한 수정된 하이퍼 파라미터 값과 가중치를 채택하는 모델로 반복적으로 대체된다.이 대체 모델 웜스타트는 PBT와 다른 진화적 방법의 주요 차이점입니다.따라서 PBT는 하이퍼 파라미터를 진화시킬 수 있으며 수동 하이퍼튜닝이 필요하지 않습니다.이 프로세스에서는 모델 아키텍처, 손실 함수 또는 교육 절차에 관한 가정을 하지 않습니다.
PBT 및 PBT의 변형은 적응형 방법입니다. 모델 교육 중에 하이퍼 파라미터를 업데이트합니다.반대로, 비적응적 방법은 전체 [26]훈련에 대해 일정한 하이퍼 파라미터 세트를 할당하는 차선책 전략을 가지고 있다.
얼리 스톱 베이스
초기정지 기반의 하이퍼파라미터 최적화 알고리즘 클래스는 연속적이고 이산적인 하이퍼파라미터의 대규모 서치 공간을 위해 구축되며, 특히 하이퍼파라미터 세트의 성능을 평가하기 위한 계산 비용이 높을 때 사용됩니다.Irace는 통계 테스트를 사용하여 성능이 낮은 [27][28]구성을 폐기하기 위해 가장 유망한 구성을 중심으로 검색을 수행하는 반복 레이싱 알고리즘을 구현합니다.하이퍼파라미터 최적화 알고리즘의 또 다른 조기 정지 알고리즘은 랜덤 검색으로 시작하지만 주기적으로 저성능 모델을 제거하여 계산 자원을 보다 유망한 모델에 집중시키는 연속적인 하프링(SHA)[29]입니다.ASHA([30]Asynchronous Successive Halving)는 성능이 낮은 모델을 동기적으로 평가하고 제거할 필요가 없으므로 SHA의 리소스 사용률 프로파일을 더욱 향상시킵니다.하이퍼밴드는 보다 폭넓게 적용할 수 있도록 필요한 입력을 줄이기 위해 다양한 수준의 프루닝 강도를 가진 SHA 또는 ASHA를 여러 번 호출하는 상위 수준의 얼리 스톱 기반 알고리즘입니다[31].
다른이들
RBF[32] 및 스펙트럼[33] 접근법도 개발되었다.
오픈 소스 소프트웨어
그리드 검색
- DL 교육 플랫폼에는 PyTorch 및 TensorFlow(Keras 및 Estimator) 모델에 대한 그리드 검색이 포함됩니다.
- H2O AutoML은 H2O 오픈 소스 머신 러닝 라이브러리의 알고리즘을 통한 그리드 검색을 제공합니다.
- Katib는 그리드 검색을 포함하는 Kubernetes 네이티브 시스템입니다.
- skikit-learn은 그리드 검색을 포함하는 Python 패키지입니다.
- Talos에는 Keras에 대한 그리드 검색이 포함되어 있습니다.
- Tune은 분산 하이퍼 파라미터 튜닝을 위한 Python 라이브러리이며 그리드 검색을 지원합니다.
- Orion은 그리드 검색을 포함하는 분산 블랙박스 최적화 및 하이퍼 파라미터 최적화를 위한 비동기 프레임워크입니다.
랜덤 검색
- PyTorch 및 TensorFlow(Keras 및 Estimator) 모델에 대한 랜덤 검색을 지원하는 DL 교육 플랫폼이 결정되었습니다.
- hyperopt는 hyperas 및 hyperopt-sklearn을 통해서도 랜덤 검색을 포함하는 Python 패키지입니다.
- Katib는 무작위 검색을 포함하는 Kubernetes 네이티브 시스템입니다.
- skikit-learn은 랜덤 검색을 포함하는 Python 패키지입니다.
- carlet은 그리드 및 랜덤 검색을 포함하는 R 패키지입니다.
- Talos에는 커스터마이즈 가능한 Keras 랜덤 검색이 포함되어 있습니다.
- Tune은 분산 하이퍼 파라미터 튜닝을 위한 Python 라이브러리이며 임의 파라미터 분포에 대한 랜덤 검색을 지원합니다.
- Orion은 랜덤 검색을 포함하는 분산 블랙박스 최적화 및 하이퍼 파라미터 최적화를 위한 비동기 프레임워크입니다.
베이지안
- auto-sklearn은[34] skit-learn 위에 있는 베이지안 하이퍼 파라미터 최적화 레이어입니다.
- Ax는[35] 탐색 전략으로 베이지안 최적화와 밴디트 최적화를 지원하는 Python 기반 실험 플랫폼입니다.
- BOCS는 이산 [36]입력에 대한 블랙박스 함수를 최소화하기 위해 반확정 프로그래밍을 사용하는 Matlab 패키지입니다.Python 3 구현도 포함되어 있습니다.
- HpBandSter는 베이지안 최적화와 밴디트 기반 [37]메서드를 결합한 Python 패키지입니다.
- Katib는 베이지안 최적화를 포함하는 Kubernetes 네이티브 시스템입니다.
- mlrMBO는 mlr과 함께 블랙박스 함수의 모델 기반/베이지안 최적화를 위한 R 패키지입니다.
- optuna는 블랙박스 최적화를 위한 Python 패키지이며 최적화가 필요한 임의의 함수와 호환됩니다.
- skikit-optimize는 scipy.optimize [38]인터페이스를 사용하는 Python 패키지 또는 순차 모델 기반 최적화입니다.
- SMAC SMAC는 베이지안 [39]최적화를 구현하는 Python/Java 라이브러리입니다.
- tune Ranger는 모델 기반 최적화를 사용하여 랜덤 포레스트를 조정하기 위한 R 패키지입니다.
- Orion은 추가 베이지안 최적화 알고리즘을 위해 베이지안 최적화 알고리즘 TPE와 Ax, skikit-optimize 및 HpBandSter와의 통합 및 내장 구현을 제공하는 Python 패키지입니다.
그라데이션 기반의 최적화
- FAR-HO는 Tensorflow 구현 및 래퍼를 포함하는 Python 패키지이며, 포워드 모드 및 리버스 모드 알고리즘에 의한 그라데이션 기반의 하이퍼 파라미터 최적화를 위한 것입니다.
- XGBoost는 C++, Java, Python, R 및 Julia를 위한 그라데이션 부스트 프레임워크를 제공하는 오픈 소스 소프트웨어 라이브러리입니다.
진화론
- deap은 일반적인 진화 계산용 Python 프레임워크로 유연하고 sklearn-deap을 통한 sklearn과 같은 Python 프레임워크와 통합됩니다.
- PyTorch 및 TensorFlow(Keras 및 Estimator) 모델을 최적화하기 위한 PBT를 지원하는 DL 교육 플랫폼이 결정되었습니다.
- devol은 유전자 프로그래밍을 사용하여 Deep Neural Network 아키텍처 검색을 수행하는 Python 패키지입니다.
- nevergrad는[40] 미분 진화, 진화 전략, 베이지안 최적화,[41] 노이즈가 많은 경우의 모집단 제어 방법 및 입자 군집 최적화를 포함하는 Python 패키지입니다.
- Tune은 분산 하이퍼 파라미터 튜닝을 위한 Python 라이브러리이며 진화 알고리즘 지원을 위해 nevergrad를 활용합니다.
- Orion은 Population Based Training 및 Population Based Bandits 알고리즘과 추가 진화 알고리즘을 위해 nevergrad와의 통합을 포함하는 Python 패키지입니다.
조기 정지
- PyTorch 및 TensorFlow(Keras 및 Estimator) 모델용 하이퍼밴드를 지원하는 DL 트레이닝 플랫폼이 결정되었습니다.
- irace는 반복 레이싱 [27][28]알고리즘을 구현하는 R 패키지입니다.
- Katib는 하이퍼밴드를 포함하는 Kubernetes 네이티브 시스템입니다.
다른.
- PyTorch 및 TensorFlow(Keras 및 Estimator) 모델의 하이퍼 파라미터 최적화에 대한 랜덤, 그리드, PBT, Hyperband 및 NAS 접근 방식을 지원하는 DL 교육 플랫폼이 결정되었습니다.
- dlib는[42] Python API를 탑재한 C++ 패키지입니다.Python API는 LIPO에 기반한 파라미터 프리 옵티마이저와 trust region optimizer가 [43]함께 동작합니다.
- Harmonica는 스펙트럼 하이퍼 파라미터 [33]최적화를 위한 Python 패키지입니다.
- hyperopt는 hyperas 및 hyperopt-sklearn을 통해서도 Python 패키지로 Tree of Parzen Estimators 기반의 분산 하이퍼 파라미터 최적화를 포함하고 있습니다.
- Katib는 Kubernetes 네이티브 시스템으로 그리드, 랜덤 검색, 베이지안 최적화, 하이퍼밴드 및 강화 학습을 기반으로 한 NAS를 포함합니다.
- nevergrad는[40] 미분 진화, 순차 2차 프로그래밍, fastGA, 공분산 행렬 적응, 모집단 제어 방법 및 입자 군 [41]최적화와 같은 기술을 사용하여 구배 없는 최적화를 위한 Python 패키지입니다.
- NNI(Neural Network Intelligence)는 로컬 및 분산 환경에서 뉴럴 네트워크를 위한 하이퍼 파라미터 튜닝을 포함하는 Python 패키지입니다.기술에는 TPE, 랜덤, 아닐, 에볼루션, SMAC, 배치, 그리드 및 하이퍼밴드가 포함됩니다.
- parameter-sherpa는 몇 가지 기술 그리드 검색, 베이지안 및 유전자 최적화를 포함하는 유사한 Python 패키지입니다.
- photonai는 그리드, 랜덤 검색 및 베이지안 최적화를 기반으로 머신러닝 파이프라인을 설계하고 최적화하기 위한 고급 Python API입니다.
- pycma는 Python의 공분산 매트릭스 적응 진화 전략 구현입니다.
- rbfopt는 Radial Basis 함수[32] 모델을 사용하는 Python 패키지입니다.
- Tune은 하이퍼파라미터 튜닝 실행을 위한 Python 라이브러리이며 hyperopt, nevergrad, skikit-optimize와 같은 기존 하이퍼파라미터 최적화 라이브러리와 통합/스케일링합니다.
- Orion은 그리드 검색, 랜덤 검색, MOFA, 하이퍼밴드, PBT, TPE와 같은 내장 알고리즘과 Ax, skikit-optimize, HpBandster, HEBGrad와 같은 하이퍼 파라미터 최적화 라이브러리와의 몇 가지 통합을 포함하는 분산 블랙박스 최적화 및 하이퍼 파라미터 최적화를 위한 비동기 프레임워크이다.
상용 서비스
- Amazon Sagmaker는 하이퍼 파라미터를 조정하기 위해 가우스 프로세스를 사용합니다.
- BigML OptiML은 혼합 검색 도메인 지원
- 구글 하이퍼튜닝은 혼합 검색 도메인 지원
- Indie Solver는 다목적, 다기능 및 제약 최적화를 지원합니다.
- Mind Foundry OPTaaS는 혼합 검색 도메인, 다중 주관적, 제약 조건, 병렬 최적화 및 대리 모델을 지원합니다.
- SigOpt는 혼합 검색 도메인, 다중 주관적, 다중 솔루션, 다중 충실도, 제약 조건(선형 및 블랙 박스) 및 병렬 최적화를 지원합니다.
「 」를 참조해 주세요.
레퍼런스
- ^ 마티아스 피러와 프랭크 허터.하이퍼 파라미터 최적화입력: AutoML: 방법, 시스템, 과제, 3-38페이지.
- ^ a b Claesen, Marc; Bart De Moor (2015). "Hyperparameter Search in Machine Learning". arXiv:1502.02127 [cs.LG].
- ^ a b c Bergstra, James; Bengio, Yoshua (2012). "Random Search for Hyper-Parameter Optimization" (PDF). Journal of Machine Learning Research. 13: 281–305.
- ^ Chin-Wei Hsu, Chi-Chung Chang 및 Chi-Jen Lin(2010).벡터 분류를 지원하기 위한 실용적인 가이드입니다.기술 보고서, 국립 대만 대학.
- ^ Chicco D (December 2017). "Ten quick tips for machine learning in computational biology". BioData Mining. 10 (35): 35. doi:10.1186/s13040-017-0155-3. PMC 5721660. PMID 29234465.
- ^ Ziyu, Wang; Frank, Hutter; Masrour, Zoghi; David, Matheson; Nando, de Feitas (2016). "Bayesian Optimization in a Billion Dimensions via Random Embeddings". Journal of Artificial Intelligence Research. 55: 361–387. arXiv:1301.1942. doi:10.1613/jair.4806. S2CID 279236.
- ^ Hutter, Frank; Hoos, Holger; Leyton-Brown, Kevin (2011), "Sequential model-based optimization for general algorithm configuration" (PDF), Learning and Intelligent Optimization, Lecture Notes in Computer Science, 6683: 507–523, CiteSeerX 10.1.1.307.8813, doi:10.1007/978-3-642-25566-3_40, ISBN 978-3-642-25565-6
- ^ a b c Bergstra, James; Bardenet, Remi; Bengio, Yoshua; Kegl, Balazs (2011), "Algorithms for hyper-parameter optimization" (PDF), Advances in Neural Information Processing Systems
- ^ Snoek, Jasper; Larochelle, Hugo; Adams, Ryan (2012). "Practical Bayesian Optimization of Machine Learning Algorithms" (PDF). Advances in Neural Information Processing Systems. arXiv:1206.2944. Bibcode:2012arXiv1206.2944S.
- ^ Thornton, Chris; Hutter, Frank; Hoos, Holger; Leyton-Brown, Kevin (2013). "Auto-WEKA: Combined selection and hyperparameter optimization of classification algorithms" (PDF). Knowledge Discovery and Data Mining. arXiv:1208.3719. Bibcode:2012arXiv1208.3719T.
- ^ Larsen, Jan; Hansen, Lars Kai; Svarer, Claus; Ohlsson, M (1996). "Design and regularization of neural networks: the optimal use of a validation set" (PDF). Proceedings of the 1996 IEEE Signal Processing Society Workshop: 62–71. CiteSeerX 10.1.1.415.3266. doi:10.1109/NNSP.1996.548336. ISBN 0-7803-3550-3. S2CID 238874.
- ^ Olivier Chapelle; Vladimir Vapnik; Olivier Bousquet; Sayan Mukherjee (2002). "Choosing multiple parameters for support vector machines" (PDF). Machine Learning. 46: 131–159. doi:10.1023/a:1012450327387.
- ^ Chuong B; Chuan-Sheng Foo; Andrew Y Ng (2008). "Efficient multiple hyperparameter learning for log-linear models" (PDF). Advances in Neural Information Processing Systems 20.
- ^ Domke, Justin (2012). "Generic Methods for Optimization-Based Modeling" (PDF). Aistats. 22.
- ^ Maclaurin, Douglas; Duvenaud, David; Adams, Ryan P. (2015). "Gradient-based Hyperparameter Optimization through Reversible Learning". arXiv:1502.03492 [stat.ML].
- ^ Franceschi, Luca; Donini, Michele; Frasconi, Paolo; Pontil, Massimiliano (2017). "Forward and Reverse Gradient-Based Hyperparameter Optimization" (PDF). Proceedings of the 34th International Conference on Machine Learning. arXiv:1703.01785. Bibcode:2017arXiv170301785F.
- ^ 샤반, A., 청, C.A., 해치, N. & 부츠, B.(2019년, 4월).복층 최적화를 위한 잘린 역전파.제22회 인공지능 및 통계 국제회의 (1723-1732페이지)PMLR
- ^ 로레인, J. & Duvenaud, D. (2018년)하이퍼 네트워크를 통한 확률적 하이퍼 파라미터 최적화. arXiv 프리프린트 arXiv:1802.09419.
- ^ 맥케이, M., 바이콜, P., 로레인, J., 듀브노, D. & Grose, R.(2019).자체 조정 네트워크: 구조화된 최적 응답 기능을 사용하여 하이퍼 파라미터의 복층 최적화.arXiv 프리프린트 arXiv: 1903.03088.
- ^ Bae, J. & Grose, R. B. (2020).Delta-stn: 구조화된 응답 jacobian을 사용하여 뉴럴 네트워크를 위한 효율적인 복층 최적화.신경 정보 처리 시스템의 진보, 33, 21725-21737.
- ^ Liu, H., Simonyan, K. 및 Y.(2018).다트: 차별화 가능한 아키텍처 검색.arXiv 프리프린트 arXiv:1806.09055.
- ^ Kousiouris G, Cuccinotta T, Varvarigou T (2011). "The effects of scheduling, workload type and consolidation scenarios on virtual machine performance and their prediction through optimized artificial neural networks". Journal of Systems and Software. 84 (8): 1270–1291. doi:10.1016/j.jss.2011.04.013. hdl:11382/361472.
- ^ Miikkulainen R, Liang J, Meyerson E, Rawal A, Fink D, Francon O, Raju B, Shahrzad H, Navruzyan A, Duffy N, Hodjat B (2017). "Evolving Deep Neural Networks". arXiv:1703.00548 [cs.NE].
- ^ Jaderberg M, Dalibard V, Osindero S, Czarnecki WM, Donahue J, Razavi A, Vinyals O, Green T, Dunning I, Simonyan K, Fernando C, Kavukcuoglu K (2017). "Population Based Training of Neural Networks". arXiv:1711.09846 [cs.LG].
- ^ Such FP, Madhavan V, Conti E, Lehman J, Stanley KO, Clune J (2017). "Deep Neuroevolution: Genetic Algorithms Are a Competitive Alternative for Training Deep Neural Networks for Reinforcement Learning". arXiv:1712.06567 [cs.NE].
- ^ Li, Ang; Spyra, Ola; Perel, Sagi; Dalibard, Valentin; Jaderberg, Max; Gu, Chenjie; Budden, David; Harley, Tim; Gupta, Pramod (2019-02-05). "A Generalized Framework for Population Based Training". arXiv:1902.01894 [cs.AI].
- ^ a b López-Ibáñez, Manuel; Dubois-Lacoste, Jérémie; Pérez Cáceres, Leslie; Stützle, Thomas; Birattari, Mauro (2016). "The irace package: Iterated Racing for Automatic Algorithm Configuration". Operations Research Perspective. 3 (3): 43–58. doi:10.1016/j.orp.2016.09.002.
- ^ a b Birattari, Mauro; Stützle, Thomas; Paquete, Luis; Varrentrapp, Klaus (2002). "A Racing Algorithm for Configuring Metaheuristics". Gecco 2002: 11–18.
- ^ Jamieson, Kevin; Talwalkar, Ameet (2015-02-27). "Non-stochastic Best Arm Identification and Hyperparameter Optimization". arXiv:1502.07943 [cs.LG].
- ^ Li, Liam; Jamieson, Kevin; Rostamizadeh, Afshin; Gonina, Ekaterina; Hardt, Moritz; Recht, Benjamin; Talwalkar, Ameet (2020-03-16). "A System for Massively Parallel Hyperparameter Tuning". arXiv:1810.05934v5 [cs.LG].
- ^ Li, Lisha; Jamieson, Kevin; DeSalvo, Giulia; Rostamizadeh, Afshin; Talwalkar, Ameet (2020-03-16). "Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization". Journal of Machine Learning Research. 18: 1–52. arXiv:1603.06560.
- ^ a b Diaz, Gonzalo; Fokoue, Achille; Nannicini, Giacomo; Samulowitz, Horst (2017). "An effective algorithm for hyperparameter optimization of neural networks". arXiv:1705.08520 [cs.AI].
- ^ a b Hazan, Elad; Klivans, Adam; Yuan, Yang (2017). "Hyperparameter Optimization: A Spectral Approach". arXiv:1706.00764 [cs.LG].
- ^ Feurer M, Klein A, Eggensperger K, Springenberg J, Blum M, Hutter F (2015). "Efficient and Robust Automated Machine Learning". Advances in Neural Information Processing Systems 28 (NIPS 2015). 28: 2962–2970.
- ^ "Open-sourcing Ax and BoTorch: New AI tools for adaptive experimentation". 2019.
- ^ Baptista, Ricardo; Poloczek, Matthias (2018). "Bayesian Optimization of Combinatorial Structures". arXiv:1806.08838 [stat.ML].
- ^ Falkner, Stefan; Klein, Aaron; Hutter, Frank (2018). "BOHB: Robust and Efficient Hyperparameter Optimization at Scale". arXiv:1807.01774 [stat.ML].
- ^ "skopt API documentation". scikit-optimize.github.io.
- ^ Hutter F, Hoos HH, Leyton-Brown K. "Sequential Model-Based Optimization for General Algorithm Configuration" (PDF). Proceedings of the Conference on Learning and Intelligent OptimizatioN (LION 5).
- ^ a b "[QUESTION] How to use to optimize NN hyperparameters · Issue #1 · facebookresearch/nevergrad". GitHub.
- ^ a b "Nevergrad: An open source tool for derivative-free optimization". December 20, 2018.
- ^ "A toolkit for making real world machine learning and data analysis applications in C++: davisking/dlib". February 25, 2019 – via GitHub.
- ^ King, Davis. "A Global Optimization Algorithm Worth Using".