먼저 스칼라(scalar)와 벡터(vector)의
개념부터 차근히 짚고 넘어가자. 이 두 용어는 물리학이나 수학에서 자주 등장하는 기본 개념이지만, 강화학습에서도 매우 중요한 역할을 한다.
스칼라는 크기만 있는 값이다. 예를 들어, 몸무게 60kg, 수학 점수 85점, 키 170cm처럼, 숫자로 표현되며 방향이 없는 데이터를 스칼라라고 부른다. 이러한 값들은 어느 쪽으로 영향을 주는지에 대한 정보는 없고, 단순히 ‘얼마나’인지만 나타낸다.
반면에 벡터는 크기와 방향을 동시에 가진 값이다. 예를 들어, 속도 60km/h가 동쪽을 향하고 있다면, 이건 단순한 스칼라가 아니라 벡터다. 방향이 존재하기 때문이다. 물리에서 자주 등장하는 자기력, 가속도, 힘(force) 같은 값들이 전형적인 벡터이다.
함수 f(x) = x²을 예로 들어보자. 이
함수는 x라는 입력값에 따라 y라는 결과값이 결정되는 단순한 2차 함수다. 예를 들어, x =
-1일 때 y = 1, x = 1일 때도 y = 1이
된다. 여기서 (x, y)라는 쌍은 각각 단순한 숫자들이며, 방향 정보가 없기 때문에 스칼라라 할 수 있다.
이제 이 함수를 미분해 보자. f'(x) = 2x. 이 미분함수는 어떤 x값을 넣었을 때 그 지점에서의 순간 변화율을 알려준다. 예를 들어, x = -1일 때의 변화율은 -2, x = 1일 때의 변화율은 2가 된다.
이 숫자들은 단지 크기뿐 아니라 방향성도 가지고 있다. 예를 들어, 변화율이 -2라는 것은 감소하는 방향, 즉 x가 커질수록 y가
작아지는 음의 방향임을 뜻한다. 반대로 2라는 값은 증가하는
방향, 즉 양의 방향으로 값이 커져간다는 뜻이다. 이렇게
변화율이 방향을 나타내기 시작하면서, 벡터의 성질이 등장하게 된다.
즉, 스칼라 함수를 미분하면 그 결과는 벡터적 성질을 가지게 된다. 특히 편미분을 통해 여러 변수에 대해 각각의 방향으로의 변화율을 구하게 되면,
그 결과는 자연스럽게 기울기의 벡터, 즉 그래디언트(gradient)가
된다.
강화학습에서 이 개념은 매우 중요하다. 왜냐하면 에이전트가 어떤 방향으로 행동을 바꿔야
보상을 더 많이 받을 수 있는지 알려주는 정보가 바로 이 방향성 있는 변화율, 즉 벡터 형태의 값들이기
때문이다.
결론적으로, 스칼라는 방향이 없는 수치, 벡터는
방향이 있는 수치이며, 강화학습에서는 스칼라 값을 미분하거나 편미분함으로써 방향성 있는 학습 신호를
얻을 수 있다. 이것이 바로 스칼라에서 벡터로, 정적인 수치에서
동적인 변화 방향으로 넘어가는 학습의 핵심 흐름이라 할 수 있다.