2.6 요약
• 텐서는 현대 머신 러닝 시스템의 기초입니다. 텐서는 dtype, ndim, shape 속성을 제공합니다.
• 텐서 연산(덧셈, 텐서 곱셈, 원소별 곱셈 등)을 통해 수치 텐서를 조작할 수 있습니다. 이런 연산은 기하학적 변형을 적용하는 것으로 이해할 수 있습니다. 일반적으로 딥러닝의 모든 것은 기하학적으로 해석할 수 있습니다.
• 딥러닝 모델은 가중치 텐서를 매개변수로 받는 간단한 텐서 연산을 연결하여 구성됩니다. 모델의 가중치는 모델이 학습한 ‘지식’을 저장하는 곳입니다.
• 학습(learning)은 훈련 데이터 샘플과 그에 상응하는 타깃이 주어졌을 때 손실 함수를 최소화하는 모델의 가중치 값을 찾는 것을 의미합니다.
• 데이터 샘플과 타깃의 배치를 랜덤하게 뽑고 이 배치에서 모델 파라미터에 대한 손실의 그레이디언트를 계산함으로써 학습이 진행됩니다. 모델의 파라미터는 그레이디언트의 반대 방향으로 조금씩(학습률에 의해 정의된 크기만큼) 움직입니다. 이를 미니 배치 경사 하강법이라고 부릅니다.
• 전체 학습 과정은 신경망에 있는 모든 텐서 연산이 미분 가능하기 때문에 가능합니다. 따라서 현재 파라미터와 배치 데이터를 그레이디언트 값에 매핑해 주는 그레이디언트 함수를 구성하기 위해 미분의 연쇄 법칙을 사용할 수 있습니다. 이를 역전파라고 부릅니다.
• 이어지는 장에서 자주 보게 될 두 가지 핵심 개념은 손실과 옵티마이저입니다. 이 두 가지는 모델에 데이터를 주입하기 전에 정의되어야 합니다.
• 손실은 훈련하는 동안 최소화해야 할 양이므로 해결하려는 문제의 성공을 측정하는 데 사용합니다.
• 옵티마이저는 손실에 대한 그레이디언트가 파라미터를 업데이트하는 정확한 방식을 정의합니다. 예를 들어 RMSProp 옵티마이저, 모멘텀을 사용한 SGD 등입니다.