>  기사  >  기술 주변기기  >  이 글은 경사하강법이 무엇인지 이해하는 데 도움이 될 것입니다.

이 글은 경사하강법이 무엇인지 이해하는 데 도움이 될 것입니다.

王林
王林앞으로
2023-05-17 17:04:122827검색

이 글은 경사하강법이 무엇인지 이해하는 데 도움이 될 것입니다.

경사하강법은 기계 학습의 원천입니다

이전 두 섹션에 이어 기계 학습의 원천인 경사하강법에 대해 이야기할 수 있습니다.

경사하강법은 그다지 복잡한 수학적 도구는 아닙니다. 그 역사는 200년이 넘었습니다. 그러나 사람들은 이렇게 비교적 간단한 수학적 도구가 많은 기계 학습 알고리즘의 기초가 될 것이라고는 예상하지 못했을 것입니다. 신경망으로 딥러닝 혁명을 일으켰습니다.

1. 그래디언트란

다변량 함수의 각 매개변수의 편도함수를 구한 후, 구해진 각 매개변수의 편도함수를 벡터의 형태로 작성하는 것이 바로 그래디언트입니다.

구체적으로 두 독립 변수의 함수 f(x1, x2)는 기계 학습 데이터 세트의 두 특성에 해당합니다. x1과 x2에 대해 각각 편도함수를 구하면 구한 기울기 벡터는 (∂f / ∂x1, ∂f/∂x2) T, 이는 수학적으로 Δf(x1, x2)로 표현될 수 있습니다. 그렇다면 그래디언트 벡터를 계산하는 요점은 무엇입니까? 기하학적 의미는 함수가 변화하는 방향으로, 가장 빠르게 변화하는 방향이다. 함수 f(x)의 경우 점 (x0, y0)에서 기울기 벡터의 방향은 y 값이 가장 빠르게 증가하는 방향입니다. 즉, 기울기 벡터 Δf(x0)의 방향을 따라 함수의 최대값을 찾을 수 있습니다. 반면, 기울기 벡터의 반대 방향, 즉 -Δf(x0) 방향을 따라 기울기가 가장 빠르게 감소하며 함수의 최소값을 찾을 수 있습니다. 특정 지점에서 그래디언트 벡터의 값이 0이면 미분 값이 0인 함수의 가장 낮은 지점(또는 로컬 최저 지점)에 도달한 것입니다.

2. 경사하강법: 내리막길 메타포

머신러닝에서 경사하강법에 대한 비유로 내리막길을 사용하는 것은 매우 일반적입니다. 당신이 큰 산 어딘가에 서서 멀리 끝없이 펼쳐져 있는 지형을 바라보고 있지만, 멀리 있는 위치가 여기보다 훨씬 낮다는 것만 알고 있다고 상상해 보십시오. 산을 내려가는 방법을 알고 싶지만 단계적으로만 내려갈 수 있습니다. 즉, 특정 위치에 도달할 때마다 현재 위치의 기울기를 찾을 수 있습니다. 그런 다음 기울기의 음의 방향을 따라 한 단계 아래로 내려갑니다. 즉, 가장 가파른 곳으로 내려가서 새 위치의 기울기를 계속 풀고, 새 위치에서 가장 가파른 곳으로 계속 한 단계 아래로 내려갑니다. 아래 사진처럼 산기슭까지 한걸음 한걸음씩 걸어가시면 됩니다.


이 글은 경사하강법이 무엇인지 이해하는 데 도움이 될 것입니다.

위의 설명을 보면 왜 방금 함수의 오목함과 볼록함을 언급했는지 이해하기 어렵지 않습니다. 왜냐하면 비볼록함수에서는 산 아래까지 도달하지 못하고 특정 계곡에서 멈출 수도 있기 때문이다. 즉, 볼록하지 않은 함수에 대한 경사하강법은 항상 전역 최적해를 찾을 수는 없으며 지역적 최적해만 얻을 수 있습니다. 그러나 함수가 볼록형인 경우 경사하강법은 이론적으로 전역 최적해를 얻을 수 있습니다.

3. 경사하강법의 용도는 무엇인가요?

경사하강법은 기계 학습에 매우 유용합니다. 간단히 말해서 다음 사항에 주의할 수 있습니다.

머신러닝의 핵심은 최적의 함수를 찾는 것입니다.

함수가 최적인지 측정하는 방법은 무엇입니까? 예측값과 참값(머신러닝에서는 손실값이라고도 함) 사이의 오차를 최소화하는 방법입니다.

오차와 모델 매개변수 사이에 함수를 설정할 수 있습니다(볼록 함수 선호).

경사하강법은 볼록 함수의 전역 최소값, 즉 오류가 가장 작은 매개변수를 찾는 데 도움이 됩니다.

위 내용은 이 글은 경사하강법이 무엇인지 이해하는 데 도움이 될 것입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제