선형변환 (Linear Transformation)
쉽게 풀면
투명한 격자무늬 종이를 놓고 회전시키거나, 한쪽 방향으로만 쭉 늘이거나, 비스듬히 기울이는 모습을 떠올려보세요. 이렇게 바뀌어도 격자의 직선은 여전히 직선이고, 평행한 선은 여전히 평행하며, 원점은 항상 원점에 그대로 남아 있습니다. 선형변환은 바로 이런 "규칙을 지키면서 공간을 바꾸는" 변환을 말합니다. 반대로 종이를 구기거나 휘게 만드는 것처럼 직선이 곡선이 되어버리는 변환은 선형변환이 아닙니다.
왜 중요한가
선형변환은 행렬 연산으로 정확히 표현할 수 있어 계산이 예측 가능하고 분석하기 쉽기 때문에, 신경망의 각 층에서부터 신호처리의 필터링, 컴퓨터그래픽스의 좌표 변환에 이르기까지 매우 폭넓게 쓰입니다. 복잡한 현상을 다룰 때도 국소적으로는 선형변환으로 근사할 수 있는 경우가 많아, 미적분과 결합한 근사·최적화 이론의 기초 개념으로도 중요하게 다뤄집니다. 이런 이유로 수학뿐 아니라 공학, 컴퓨터과학 전반의 논문에서 공간을 다루는 거의 모든 계산의 바탕에 선형변환이 깔려 있습니다.
논문에서는 이렇게 쓰입니다
이 문장은 신경망의 한 층이 입력을 단순히 회전·확대·축소하는 선형변환으로 바꾼 다음, 그 결과에 비선형 함수를 씌워 더 복잡한 패턴을 학습할 수 있게 만든다는 뜻입니다. 선형변환만 반복해서 쌓으면 결국 하나의 선형변환과 다를 바 없기 때문에, 신경망에는 반드시 비선형 요소가 함께 필요합니다.
컴퓨터그래픽스 분야에서는 물체의 위치와 자세를 바꾸는 여러 연산이 선형변환 행렬로 표현되고, 이를 순서대로 곱해 최종 화면상의 좌표를 계산합니다.
신호처리·역문제 연구에서는 관측 과정 자체를 하나의 선형변환으로 모델링하고, 그 역변환을 구해 원래 신호나 이미지를 복원하는 방식으로 이 개념이 활용됩니다.
조금 더 깊게 보면
선형변환을 특정 기저에서 행렬로 나타내면, 그 행렬의 고유값과 고유벡터를 통해 변환이 어떤 방향으로는 얼마나 늘리거나 줄이는지를 파악할 수 있습니다. 여러 선형변환을 이어 붙이는 것은 대응하는 행렬들을 곱하는 것과 같고, 변환이 가역적인지(원래대로 되돌릴 수 있는지)는 행렬식이 0이 아닌지로 판단합니다. 또한 회전이나 반사처럼 벡터의 길이와 각도를 보존하는 특별한 선형변환은 직교변환(orthogonal transformation)으로 따로 구분해, 데이터의 형태를 왜곡하지 않고 좌표계만 바꾸는 용도로 자주 활용됩니다.
주의할 점
모든 선형변환은 행렬로 표현할 수 있지만, 행렬은 특정한 기저와 차원를 기준으로 선형변환을 숫자로 나타낸 "표현"일 뿐이며, 선형변환 자체는 기저 선택과 무관한 더 추상적인 개념이라는 점에 주의해야 합니다.