왜 하이퍼 파라미터를 배우지 않습니까?


11

나는 매우 인기있는 논문 인 " EXLAINING AND HARNESSING ADVERSARIAL EXAMPLES "를 구현하고 있었고 논문에서 적대적인 목적 함수를 훈련시켰다.

J ''(θ) = αJ (θ) + (1-α) J '(θ).

α를 하이퍼 파라미터로 취급합니다. α는 0.1, 0.2, 0.3 등이 될 수 있습니다.

이 특정 논문에 관계없이 α를 매개 변수에 포함시키고 최고의 α를 배우는 것이 어떻습니까?

그렇게하는 단점은 무엇입니까? 과적 합 때문입니까? 그렇다면 왜 단지 1 개의 매개 변수를 더 많이 배우는 것이 너무 많은 과적 합을 야기합니까?


하이퍼 파라미터가 비용 함수 (DGP 데이터 생성 프로세스가 아님)의 매개 변수 인 경우 데이터 자체에 대한 정보가 포함되어 있는지 명확하지 않습니다.
kjetil b halvorsen

1
대부분의 경우 유효성 검사 세트에서 모델의 성능을보고 데이터를 사용하여 를 선택 합니다. (즉, 일반화 오류에 대한 프록시)α
Vimal

답변:


8

"왜 우리는 하이퍼 파라미터를 배우지 않는가?"

좋은 질문입니다! 더 일반적인 답변을 제공하려고 노력할 것입니다. TL; DR의 대답은 확실히 그냥 동일한 데이터에서, 하이퍼 파라미터를 배울 수 있다는 것입니다. 조금 더 자세한 답변을 읽으십시오.


hyperparameter은 일반적으로 학습 알고리즘의 설정보다는 매개 변수 중 하나에 해당합니다. 예를 들어, 딥 러닝의 맥락 에서 이는 특정 계층 의 뉴런 수 (고 파라미터)와 특정 에지무게 (정기적이며 학습 가능한 매개 변수) 와의 차이로 설명 됩니다.

처음에 왜 차이가 있습니까? 파라미터를 하이퍼 파라미터로 만드는 일반적인 경우 는 트레이닝 세트에서 해당 파라미터를 배우는 것이 적절하지 않다는 것입니다. 예를 들어, 더 많은 뉴런을 추가하여 훈련 오류를 낮추는 것이 항상 쉬우므로 레이어의 뉴런 수를 규칙적인 매개 변수로 설정 하면 항상 매우 큰 네트워크를 장려 할 수 있습니다. 과적 합).

귀하의 질문에, 우리는 하이퍼 매개 변수를 전혀 배우지 않는다는 것이 아닙니다. 1 분 동안 계산 문제를 제쳐두고, 하이퍼 파라미터에 대한 좋은 값을 배우는 것이 매우 가능하며, 이것이 좋은 성능을 위해 필수적인 경우도 있습니다. 첫 번째 단락에서 제안한 모든 내용은 정의에 따라이 작업에 동일한 데이터를 사용할 수 없다는 것 입니다.

데이터의 또 다른 분할을 사용하여 (훈련 세트, 검증 세트 및 테스트 세트의 세 가지 분리 된 부분을 작성 함) 이론적으로 수행 할 수있는 작업은 다음과 같은 중첩 최적화 절차입니다. 외부 루프에서 유효성 검증 손실 을 최소화 하는 하이퍼 파라미터 의 값 과 내부 루프 에서 훈련 손실 을 최소화하는 일반 매개 변수 의 값을 찾으려고합니다 .

이론적으로는 가능하지만 계산 비용이 많이 듭니다. 외부 루프의 모든 단계는 내부 루프를 해결해야합니다 (완료 될 때까지 또는 그와 가까운 곳). 일반적으로 계산이 많은 내부 루프. 더 복잡한 점은 외부 문제가 쉽지 않다는 것입니다. 하나는 검색 공간이 매우 큽니다.

위의 설정 (그리드 검색, 랜덤 검색 또는 모델 기반 하이퍼 파라미터 최적화)을 단순화하여이를 극복하기위한 많은 접근 방법이 있지만,이를 설명하는 것은 의문의 범위를 벗어납니다. 참조한 기사에서도 알 수 있듯이, 이것은 비용이 많이 드는 절차라는 사실은 종종 연구원이 단순히 생략하거나 수동으로 설정을 거의 시도하지 않음을 의미합니다 (결국 검증 세트에 따르면). 당신의 원래 질문에, 나는 매우 단순하고 생각이 많지만 이것은 여전히 ​​"학습"의 한 형태라고 주장합니다.


안녕, 답변 주셔서 감사합니다. 동일한 데이터를 사용하면 어떻게됩니까?
Aerin

7

이 논문의 하이퍼 파라미터는 종종 손실 함수에서 여러 항의 균형을 맞추는 데 사용됩니다. 그것들을 학습 가능하게 만들면 최적화 프로세스는 최적화하기 어려운 용어의 비용으로 최적화하기 쉬운 용어에 모든 가중치를 할당하는 방법을 배우는 것만으로도 용어의 균형점을 잃습니다.

또 다른 방법은 손실 함수가 "생성 이미지 생성이 현실적으로 보여야 함"또는 "적대적인 예에 ​​저항해야한다"와 같이 정의하거나 최적화하기 어려운 실제 목표에 대한 대리라는 것입니다. 이 경우 진정한 목표는 대리 손실을 최소화하기 위해 하이퍼 파라미터를 찾는 것이 아니라, 대리모를 최적화하기 위해 나머지 매개 변수에 대해 SGD를 실행할 때 우리는 진정한 성능을 얻을 수 있도록 하이퍼 파라미터를 찾는 것입니다. 객관적인".


4

"종이에 관계없이"물었으므로 간단한 선형 회귀 (Ridge / Lasso)라는 간단한 예를 들겠습니다.

이러한 경우, 나는 두 가지 이유를 생각할 수 있습니다. 그러나 먼저 여기에는 두 가지 기능이 있습니다. (F1) 손실 함수, 하이퍼 파라미터의 분석 함수 및 데이터 (연결된 논문에서, 이것의 제이~; (F2) 일반화 오차의 추정치는 (F1)에 대한 최적의 해법과 (F1)에서 선택한 하이퍼 파라미터에 따라 달라집니다.

주의 사항 : 논문을 간략히 살펴보면 저자가 MNIST 데이터 세트에 대한 신경망 분류기를 훈련시키는 것으로 나타났습니다. 하이퍼 파라미터를 선택하는 방법을 명시 적으로 말하지 않습니다.α하지만 하나를 선택했을 것입니다 α 최상의 모델의 유효성 검사 오류를 최소화합니다.

  1. 하이퍼 파라미터를 최적화하기위한 목적 함수는 일반화 오류에 대한 프록시 인 표현식입니다. 이 표현은 차별화 할 수있는 간단한 분석 함수로 작성하기는 어렵지만 기본 최적화 문제를 간단히 해결하면 어느 시점에서 쉽게 평가할 수 있습니다.

  2. 함수 (F2)를 평가하려면 비용이 많이 드는 최적화 문제를 해결해야합니다. 따라서 F2가 기울기 하강을 수행하기 위해 기울기를 근사 할 수는 있지만 비용이 많이 들고 느립니다. 이러한 경우 그리드 검색을 수행하는 것이 종종 "충분한"것입니다.

그러나 하이퍼 파라미터에 대한 의존성으로 인해 부드러움 구조를 가정하여 블랙 박스 목적 함수 (예 : F2)를 최적화하는 기술이 있습니다. 예를 들어, 올가미 모델의 성능이 하이퍼 파라미터에 따라 어떻게 다른지 보여주는이 게시물을 볼 수 있습니다λ:

올가미 모델 성능

(이 게시물에서 가져온 이미지 : https://stats.stackexchange.com/a/26607/54725 )

일부 참고 문헌 :


당신은 구체적으로 논문 J (θ, x + esign (∇xJ (θ, x, y))의 두 번째 용어를 F2로
언급하고

@ 아론 제이 비용 함수입니다. 제이~정규화 된 비용 함수입니다. 그들은 분류기를 구축하고 있기 때문에 F2가 유효성 검사 손실 함수 일 수 있다고 말합니다. 신문은 실제로 그들이 고른 것을 말합니다α 충분히 잘 작동하여 0.5가되었습니다 (다른 값을 탐색하지 않았습니다) α또는 선택 전략 α).
Vimal

그래서 논문에서 F1과 F2로 무엇을 말하고 있습니까?
Aerin

F1은 제이~유효성 검사 오류를 F2로 사용했을 것입니다. 나는 이것을 명확히하기 위해 대답을 업데이트 할 것입니다.
Vimal

1

하이퍼 파라미터를 꽂으면 1 차 상태가 어떻게 보일지 봅시다 α 같은 방식으로 배우려고 노력합니다 θ 데이터에서 :

α제이(θ)=αα제이(θ)+α(1α)제이'(θ)=제이(θ)제이'(θ)=0
그 후,
제이(θ)=제이'(θ)

이 하이퍼 파라미터가 최적화되면 J와 J '가 동일한 기능, 즉 동일한 가중치가됩니다. 당신은 사소한 해결책으로 끝날 것입니다.

보다 일반적인 철학을 원한다면 이것을 고려하십시오 : 하이퍼 파라미터는 일반적으로 데이터와 얽혀 있지 않습니다. 무슨 뜻이야? 신경망 또는 단순한 회귀 분석에서 모델 매개 변수는 몇 가지 방식으로 데이터와 직접 상호 작용합니다.

와이=엑스β
=σ(와이)
엑스+1=
레이어 아래로 내려갑니다. 당신은 방법을 참조하십시오β데이터에 얽히게됩니다. 따라서 파생 상품을β 목적 함수의 경우 행렬, 헤 시안, 교차 곱 등에서 명백하지 않은 방식으로 결과를 입력하는 데이터 포인트를 얻습니다.

그러나 하이퍼 파라미터에 대한 1 차 오더 조건을 추정하려고하면이 효과가 나타나지 않습니다. 하이퍼 파라미터의 파생물은 종종 매개 변수에 대한 파생물과 같은 부분을 섞지 않고 모델의 전체 덩어리를 작동합니다. 그렇기 때문에 하이퍼 파라미터를 최적화하면 종종 특정 용지에 대해 제공 한 것과 같은 사소한 솔루션으로 이어집니다. 하이퍼 파라미터를 최적화한다고해서 데이터 세트에 문제가 생기지 않고 흥미로운 것을 생성 할 수있을 정도로 불편 해집니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.