미분 3

[Deep Learning] 6. 경사 하강법, 기울기

전 포스팅에서 수치 미분을 통해 함수의 기울기를 구했습니다. 이번에는 손실 함수의 기울기를 구하고, 경사 하강법을 통해 손실 함수가 최소가 되는 최적의 매개변수 값을 찾을 때까지 가중치를 갱신해보겠습니다. 이 전의 포스팅과 같이 구현과 관련된 내용은 제 깃허브 링크를 참고해주시기 바랍니다. https://github.com/Kingnamji/BigAI/blob/main/%EB%B0%91%EC%8B%9C%EB%94%A51_re/04_NNTrain.ipynb 기울기 변수가 여럿인 함수 (다변수 함수)에 대해 특정 변수를 제외한 나머지 변수를 상수로 간주하고 미분하는 것을 편미분이라고 하고, 모든 변수에 대한 편미분을 좌표로 갖는 벡터를을 기울기(gradient)라고 합니다. (이전 포스팅 내용) $f(x_0..

[Deep Learning] 5. 배치, 미니배치, 수치 미분, 기울기

전 포스팅에서 신경망 학습과 손실 함수에 대해 알아봤습니다. 이번에는 미니배치, 수치 미분, 기울기에 대해 다뤄보겠습니다. 이 전의 포스팅과 같이 구현과 관련된 내용은 제 깃허브 링크를 참고해주시기 바랍니다. https://github.com/Kingnamji/BigAI/blob/main/%EB%B0%91%EC%8B%9C%EB%94%A51_re/04_NNTrain.ipynb 미니배치 신경망의 학습은 훈련데이터로부터 이뤄진다고 했습니다. 학습동안 훈련데이터에 대한 손실 함수의 값을 구하고, 그 값을 최대한 줄여주는 매개변수를 찾습니다. ( 이 내용은 https://kingnamji.tistory.com/18 에서 다뤘습니다. ) MNIST 데이터셋의 경우 훈련 데이터의 갯수가 60,000개 입니다. 이렇게..

스칼라 미분, 벡터 미분, 행렬 미분

딥러닝 이론 공부 중 역전파의 수식을 보다가 스칼라, 벡터, 행렬에 대한 미분을 정리해놓는 게 좋을 것 같아서 기록합니다. 스칼라, 벡터, 행렬 스칼라는 크기만 있고 방향을 가지지 않는 양입니다. 상수나 변수 함수 모두 크기만 있고 방향을 가지지 않는다면 스칼라가 될 수 있습니다. 벡터는 스칼라와 대비되는 개념으로 크기와 방향을 가집니다. 열벡터 또는 행벡터를 아울러 의미합니다. 행렬(matrix)이란 실수 또는 복소수를 위 그림의 좌변과 같이 직사각형으로 배열한 것 입니다. 원소로 다항식이 들어가는 경우도 있습니다. CASE 스칼라, 벡터, 행렬 간 미분에서 따져볼 경우는 아래와 같습니다. 나머지 부분(행렬-벡터, 행렬-행렬)은 스칼라 - 벡터 또는 스칼라 - 행렬 간의 미분처럼 생각하면 구할 수 있겠..