하이퍼파라미터 중 어떤 값이 메트릭의 바람직한 결과를 가장 잘 예측하고, 높은 상관관계를 보이는지 확인하세요.
상관관계는 하이퍼파라미터와 선택한 메트릭(이 경우 val_loss) 사이의 선형 상관관계입니다. 따라서 상관관계가 높다는 것은 하이퍼파라미터 값이 커질수록 메트릭 값도 커지고, 반대의 경우도 마찬가지라는 뜻입니다. 상관관계는 유용한 메트릭이지만 입력값 간의 2차 상호작용은 포착하지 못하고, 범위 차이가 큰 입력값들을 비교할 때는 해석이 어려워질 수 있습니다.
따라서 W&B는 중요도 메트릭도 계산합니다. W&B는 하이퍼파라미터를 입력으로, 메트릭을 대상 출력으로 사용해 랜덤 포레스트를 트레이닝한 뒤, 해당 랜덤 포레스트의 특성 중요도 값을 리포트합니다.
이 기법의 아이디어는 Jeremy Howard와의 대화에서 영감을 받았습니다. 그는 Fast.ai에서 하이퍼파라미터 공간을 탐색하기 위해 랜덤 포레스트 특성 중요도를 활용하는 방식을 개척해 왔습니다. W&B는 이 분석의 배경을 더 잘 이해할 수 있도록 이 강의와 노트를 꼭 확인해 볼 것을 강력히 권장합니다.
하이퍼파라미터 중요도 패널은 높은 상관관계를 보이는 하이퍼파라미터들 사이의 복잡한 상호작용을 풀어 보여줍니다. 이를 통해 모델 성능을 예측하는 데 어떤 하이퍼파라미터가 가장 중요한지 파악하여 하이퍼파라미터 검색을 더 정교하게 조정할 수 있습니다.
- W&B 프로젝트로 이동합니다.
- Add panels 버튼을 선택합니다.
- CHARTS 드롭다운을 펼친 다음, 드롭다운에서 병렬 좌표를 선택합니다.
빈 패널이 나타나면 run이 그룹화 해제되어 있는지 확인하세요.
파라미터 관리자를 사용하면 표시할 파라미터와 숨길 파라미터를 수동으로 설정할 수 있습니다.
이 패널에는 트레이닝 스크립트에서 wandb.Run.config 객체로 전달된 모든 파라미터가 표시됩니다. 이어서, 선택한 모델 메트릭(이 경우 val_loss)을 기준으로 이러한 설정 파라미터의 특성 중요도와 상관관계를 보여줍니다.
중요도 열은 각 하이퍼파라미터가 선택한 메트릭을 예측하는 데 얼마나 유용한지를 보여줍니다. 많은 하이퍼파라미터를 튜닝하기 시작한 상황을 떠올려 보세요. 이 플롯을 사용하면 그중에서 어떤 하이퍼파라미터를 더 살펴볼 가치가 있는지 좁혀 나갈 수 있습니다. 그러면 후속 Sweeps를 가장 중요한 하이퍼파라미터로만 제한해 더 나은 모델을 더 빠르고 더 적은 비용으로 찾을 수 있습니다.
W&B는 중요도를 계산할 때 선형 모델이 아니라 트리 기반 모델을 사용합니다. 트리 기반 모델이 범주형 데이터와 정규화되지 않은 데이터 모두에 더 잘 대응하기 때문입니다.
위 이미지에서는 epochs, learning_rate, batch_size 및 weight_decay가 상당히 중요했다는 것을 확인할 수 있습니다.
상관관계는 개별 하이퍼파라미터와 메트릭 값 사이의 선형 관계를 포착합니다. 즉, SGD 옵티마이저와 같은 하이퍼파라미터 사용 여부와 val_loss 사이에 유의미한 관계가 있는지에 대한 질문에 답합니다(이 경우 답은 그렇습니다). 상관관계 값은 -1에서 1 사이이며, 양수는 양의 선형 상관관계, 음수는 음의 선형 상관관계, 0은 상관관계가 없음을 나타냅니다. 일반적으로 어느 방향이든 0.7보다 크면 강한 상관관계로 봅니다.
이 그래프를 사용하면 메트릭과 더 높은 상관관계를 보이는 값을 더 탐색할 수 있습니다(이 경우 rmsprop이나 nadam보다 stochastic gradient descent 또는 adam을 선택하거나, 더 많은 에포크 동안 트레이닝할 수 있습니다).
- 상관관계는 연관성을 보여주는 증거일 뿐, 반드시 인과관계를 의미하지는 않습니다.
- 상관관계는 이상치에 민감하므로, 특히 시도한 하이퍼파라미터의 표본 수가 적으면 강한 관계가 중간 정도의 관계로 약해질 수 있습니다.
- 마지막으로, 상관관계는 하이퍼파라미터와 메트릭 사이의 선형 관계만 포착합니다. 강한 다항식 관계가 있더라도 상관관계로는 포착되지 않습니다.
중요도와 상관관계의 차이는, 중요도는 하이퍼파라미터 간 상호작용을 고려하는 반면 상관관계는 개별 하이퍼파라미터가 메트릭 값에 미치는 영향만 측정한다는 점에서 비롯됩니다. 또한 상관관계는 선형 관계만 포착하지만, 중요도는 더 복잡한 관계도 포착할 수 있습니다.
보시다시피 중요도와 상관관계는 하이퍼파라미터가 모델 성능에 어떤 영향을 미치는지 이해하는 데 모두 유용한 강력한 도구입니다.