머신 러닝을 공부하다보면 항상 벡터 미분이라는 개념이 등장하고, 신경망 구조의 backpropagation의 근본 원리이기 때문에 아주 중요한 개념이 된다. 다만, 일반적인 미분과 달리 의미와 정의부터 매우 생소하고, 미분 결과에서 전치(transpose)가 붙는 규칙을 이해하기 힘들어 종종 애를 먹는 경우가 있다. 이번 포스팅에서는 매우 기초적인 예제를 중심으로 벡터 미분의 의미와 트랜스포즈가 붙는 이유를 설명하려고 한다. 벡터로 미분 정의 다음과 같은 열벡터 \(x\)를 생각해보자. 일반적으로 벡터라하면 열벡터를 의미한다. $$ x = (x_1, x_2, ... , x_n)^T $$ 벡터 \(x\)와 관계를 가지는 함수 \(f(x)\)를 생각해보자. 여기서 이 함수\(f(x)\)의 출력 값은 스칼라,..