소개
함수가 있고 그 최소값을 찾고 싶다고 가정해 보겠습니다. 당신은 무엇을 하시겠습니까?
간단하죠? 다음 방정식만 풀면 됩니다.
문제는 의 공식을 찾는 것이 항상 쉬운 것은 아니라는 것입니다. 특히 복잡한 함수를 다루는 딥 러닝에서는 매우 복잡한 경향이 있기 때문입니다. 따라서 우리는 도함수 의 공식을 찾을 필요 없이 함수의 최소값을 제공할 수 있는 다른 방법을 찾아야 합니다.
직관력을 키워보자
해당 그래프가 있는 함수 f가 있다고 가정해 보겠습니다.
임의의 점 부터 시작하겠습니다. 목표는 이 점을 이동하여 x*이 되도록 에 점점 더 가깝게 만드는 것입니다. 따라서 문제는 두 부분으로 나눌 수 있습니다.
-
점을 어느 방향으로 움직여야 할까요? 왼쪽 또는 오른쪽?
-
얼마나 움직여야 할까요?
방향
첫 번째 질문에 답하기 위해 직관을 키워 봅시다. 다음 사항을 살펴보십시오.
참고 사항:
-
지점이 최적 지점 의 오른쪽에 있을 때 접선이 위로 올라갑니다.
-
지점이 최적 지점 의 오른쪽에 있을 때 접선이 아래로 내려갑니다.
선의 방향은 기울기의 부호에 따라 결정됩니다.
-
선이 위로 올라갑니다 기울기 는 양수입니다.
-
선이 아래로 내려갑니다 기울기 는 음수입니다.
참고 사항: \
특정 점 에서 함수의 접선의 기울기는 해당 점 의 도함수보다 크지 않습니다.
따라서 **" ?"를 어디로 이동해야 합니까?"**라는 질문에 대한 답변은 다음과 같습니다.
-
를 오른쪽으로 를 왼쪽으로 이동해야 합니다.
-
를 의 왼쪽으로 를 오른쪽으로 이동해야 합니다.
단계
이제 두 번째 질문입니다. ? 얼마를 움직여야 할까요?
다음 예를 살펴보십시오.
우리는 다음과 같이 결론을 내릴 수 있습니다.
-
는 에 가깝습니다 => 접선의 기울기가 작습니다 => 가 작습니다.
-
는 에서 멀다 => 접선의 기울기가 크다 => 가 크다.
두 질문에 답함으로써 우리는 점의 도함수에 대한 지식만이 최적 점 의 방향과 거리에 대한 많은 통찰력을 제공할 수 있다는 결론을 내렸습니다.
경사하강법
경사하강법은 이전 두 질문에 대한 답변을 공식화한 것입니다. 임의의 초기점 에서 시작하여 함수의 최소 를 근사하는 최적화 반복 알고리즘입니다. 알고리즘은 다음과 같이 기술됩니다:
어디:
-
는 점에서 의 도함수에 지나지 않습니다.
-
은 단계의 크기를 결정하는 양의 상수입니다.
다음 사항에 유의하세요.
-
는 => => => 가 왼쪽으로 이동합니다.
-
는 => => => 가 오른쪽으로 이동합니다.
-
에 가까워짐 => 에 가까워짐 => .
퀴즈
-
경사하강법은 언제 반복을 멈추나요?
-
가 충분히 작은 경우.
-
가 에 가까울 때.
-
. 트리플 엑스
-
를 선택하는 방법:
-
무작위로 선택합니다. 트리플 엑스
-
부근에서 촬영합니다.
-
문제에 따라 다릅니다.
-
왜 경사하강법이 필요한가요?
-
컴퓨터는 파생 상품을 계산할 만큼 강력하지 않기 때문입니다.
-
딥러닝 모델의 미분 공식을 찾는 것은 극히 어렵기 때문입니다. 트리플 엑스
-
함수에는 둘 이상의 로컬 최소값이 있기 때문입니다.
Code Labs Academy과 함께 데이터 과학 및 AI를 마스터하세요! 온라인 부트캠프에 참여하세요 - 유연한 파트타임 및 풀타임 옵션이 제공됩니다.