온라인 많은 자습서에서 그라디언트 디센트에 대해 이야기하고 거의 모든 단계가 고정 단계 크기 (학습 속도 )를 사용합니다. 역 검색 (예 : 역 추적 라인 검색 또는 정확한 라인 검색)을 사용하지 않는 이유는 무엇 입니까?
온라인 많은 자습서에서 그라디언트 디센트에 대해 이야기하고 거의 모든 단계가 고정 단계 크기 (학습 속도 )를 사용합니다. 역 검색 (예 : 역 추적 라인 검색 또는 정확한 라인 검색)을 사용하지 않는 이유는 무엇 입니까?
답변:
바닐라 그래디언트 디센트는 라인 검색을 사용하여보다 안정적으로 만들 수 있습니다. 나는 이것을하는 알고리즘을 작성했으며 매우 안정적인 알고리즘을 만듭니다 (반드시 빠르지는 않지만).
그러나 확률 적 그라디언트 방법에 대한 라인 검색은 거의 의미가 없습니다 . 내가 말하는 이유는 전체 손실 함수를 최소화하여 라인 검색을 수행하면 확률 론적 방법을 수행하는 주요 동기 중 하나를 즉시 잃었 기 때문입니다. 이제 각 업데이트에 대해 전체 손실 함수를 계산해야합니다. 일반적으로 전체 1 차 도함수를 계산하는 데 필적하는 계산 비용이 있습니다. 계산 비용으로 인해 전체 기울기를 계산하지 않으려는 경우 전체 손실 함수를 계산해도 괜찮을 것 같지 않습니다.
또는 무작위로 샘플링 된 데이터 포인트를 기반으로 라인 검색과 같은 작업을 수행 할 수도 있습니다. 그러나 이것은 좋은 생각이 아닙니다. 이것은 너무 멀리 밟았는지 여부에 대해 아무 것도 알려주지 않습니다 (줄 검색의 주요 이점). 예를 들어 로지스틱 회귀를 수행한다고 가정합니다. 그런 다음 각 결과는 단순히 0 또는 1이고, 하나의 샘플에 따라 우리의 회귀 매개 변수에 대한 최적의 솔루션을 하찮게 그래서 단일 샘플, 우리는 사소 완벽한 분리를 얻을 또는 ∞ Hauck는 도너 효과에 의해. 그 좋지 않다.
편집하다
@DeltaIV는 이것이 개별 샘플뿐만 아니라 미니 배치에도 적용된다고 지적합니다.
이 자습서에서는 그라디언트 디센트에 대해 이야기합니다. 최적화에 사용되는 가장 간단한 알고리즘 중 하나이므로 설명하기 쉽습니다. 이러한 자습서는 대부분 간단하기 때문에 간단한 내용에 중점을 둡니다. 딥 러닝에 사용되는 단순한 기울기 하강을 넘어서는 몇 가지 인기있는 최적화 알고리즘이 있습니다. 실제로 사람들은 대개 다른 알고리즘을 사용하지만 일반적으로 더 빨리 수렴하기 때문에 경사 하강입니다. 그들 중 일부는 일정하지 않은 학습률을 가지고 있습니다 (예 : 시간이 지남에 따라 감소). 이러한 알고리즘을 검토하려면 Sebastian Ruder (또는 arXived paper )가 게시 한 그래디언트 디센트 최적화 알고리즘 개요를 확인하십시오 .