더북(TheBook)

2.6 요약

텐서는 현대 머신 러닝 시스템의 기초입니다. 텐서는 dtype, ndim, shape 속성을 제공합니다.

텐서 연산(덧셈, 텐서 곱셈, 원소별 곱셈 등)을 통해 수치 텐서를 조작할 수 있습니다. 이런 연산은 기하학적 변형을 적용하는 것으로 이해할 수 있습니다. 일반적으로 딥러닝의 모든 것은 기하학적으로 해석할 수 있습니다.

딥러닝 모델은 가중치 텐서를 매개변수로 받는 간단한 텐서 연산을 연결하여 구성됩니다. 모델의 가중치는 모델이 학습한 ‘지식’을 저장하는 곳입니다.

학습(learning)은 훈련 데이터 샘플과 그에 상응하는 타깃이 주어졌을 때 손실 함수를 최소화하는 모델의 가중치 값을 찾는 것을 의미합니다.

데이터 샘플과 타깃의 배치를 랜덤하게 뽑고 이 배치에서 모델 파라미터에 대한 손실의 그레이디언트를 계산함으로써 학습이 진행됩니다. 모델의 파라미터는 그레이디언트의 반대 방향으로 조금씩(학습률에 의해 정의된 크기만큼) 움직입니다. 이를 미니 배치 경사 하강법이라고 부릅니다.

전체 학습 과정은 신경망에 있는 모든 텐서 연산이 미분 가능하기 때문에 가능합니다. 따라서 현재 파라미터와 배치 데이터를 그레이디언트 값에 매핑해 주는 그레이디언트 함수를 구성하기 위해 미분의 연쇄 법칙을 사용할 수 있습니다. 이를 역전파라고 부릅니다.

이어지는 장에서 자주 보게 될 두 가지 핵심 개념은 손실옵티마이저입니다. 이 두 가지는 모델에 데이터를 주입하기 전에 정의되어야 합니다.

손실은 훈련하는 동안 최소화해야 할 양이므로 해결하려는 문제의 성공을 측정하는 데 사용합니다.

옵티마이저는 손실에 대한 그레이디언트가 파라미터를 업데이트하는 정확한 방식을 정의합니다. 예를 들어 RMSProp 옵티마이저, 모멘텀을 사용한 SGD 등입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.