안녕하세요.
튜나편입에서 수학을 가르치고 있는 송두원T 입니다.
지난 시간 1편에서, 우리는 선형대수의 시작으로 ‘선형 조합’에 대해 알아봤어요! 그러나 막상 우리가 공부를 해보면 선형조합에서 어려움을 겪기 이전에 연립방정식의 첫번째 풀이 방법으로 등장한 소거법이 이름과 난이도가 살짝 바뀌어 가우스-조르단이라는 두 수학자들의 이름을 달고 한층 복잡해진 꼴로 나타나 우리를 괴롭힙니다.. 그리고 이어서 행렬의 rank, 벡터의 직교성, 고유값, 고유벡터 등등 무척이나 생소한 개념들이 튀어나오죠. 그럼 이번 시간에는 선형대수의 시작에 이어서 선형대수학에서 배우는 것들과 궁극적인 그 목적에 대해 이야기해 봅시다!
선형대수학 과목의 목표
이전에 제가 작성했던 칼럼에서 미적분학을 얘기할 때, 그토록 오랜 시간 우리가 미적분을 배우는 이유가 결굴 최종적으로는 미분방정식을 세우고 풀어내기 위함이었다 라는 사실, 기억하시나요? 마찬가지로 선형대수학에서의 목표부터 말씀드리고 시작할게요. 여러분이 공대에서 선형대수를 접하고 배우는 이유 중 하나는 결국 SVD(Singular Value Decomposition)를 풀기 위함입니다.
네..? SVD 뭐요..? 당황스럽죠 저게 무슨말인가 ㅎㅎ.. 괜찮습니다. 어렵긴 하지만 편입수학에서 자주 출제되는 문제 유형은 아니니까요! 예~전에 성균관대학교 편입수학 문제에서 출제가 된적이 있지만 SVD 관련 문제가 나온적이 있지만 거의 안나온다고 봐도 무방합니다.
저 역시 여기에서 SVD가 무엇인지 설명을 하진 않을 겁니다. 그러기 위해선 알아야하는 선형대수 얘기들이 많고 이미 잘 안나온다고 이갸히 해놔서 여러분들이 관심이 없을테니까요. 그럼에도 불구하고 굳이 선형대수 이야기를 들려 드리는 것은 선형대수에 대해서 갑자기 튀어나온 암기과목, 도대체 무엇에 쓰는지 모르겠는 과목이라고 말하는 수험생들을 많이 봐왔기 때문입니다. 조금이나마 이런 것들을 배우는구나! 하고 생각해 볼 기회가 되었으면 해요.
원론적인 이야기
그럼, 편입 수학 시험 범위에 나오는 선형대수의 개념들 중 일부에 대해 가볍게 얘기해 볼게요. 고등학교때 [기하와 벡터]라는 과목이 있었죠. 맨 마지막에 평면의 방정식과 함께 벡터가 공간을 이룰 수 있다는 사실을 맛보기로 배우는 그런 부분이었습니다. (문과였다면 그냥 그렇구나.. 하고 넘어가주세요!) 여튼 고등학교 과정을 넘어서서 대학교로 넘어가서는 벡터가 나타내는 공간이란 것을 심도 있게 배우게 됩니다. 우리가 상상하는 도형과 같은 개념의 공간이 아닌 추상적인 수학적 공간이기 때문에 처음 접하게 되면 무척 생소 할거예요. 벡터 공간에서 가장 중요한 개념은 직교성 (orthogonality) 입니다. 직교 그 자체는 여러분이 이미 다들 알고 있는 바로 그 내용이예요. 하지만 그 개념이 우리가 다뤄왔던 직관적으로 알 수 있던 직선과 평면을 넘어 n차원 공간의 수학적 개념으로 정의되는 거죠! 말은 무척 어려워 보이지만, 막상 배우실 땐 당연한 소리잖아? 하고 받아들일 수 있을 내용이예요.
또 한편으로 [행렬]은 결국 데이터(숫자)의 집합이라고 볼 수 있어요. 숫자들을 질서 있게 정렬한 것이니까요. 우리 공대생의 관심사는 단순한 쓸모없는 수의 나열이 아닙니다. 수열에서도, 우리는 수열의 규칙을 찾고 싶어 했죠? 마찬가지로 행렬에서도 데이터의 의미를 찾고 싶은 겁니다. 우리는 행렬의 데이터를 이용하기 위해 목적에 따라 다양하게 행렬의 성질을 배우고 행렬을 분해하여 다루는 방법들을 익히게 됩니다. 그 중의 하나로 우리는 고유값(eigenvalue)과 고유벡터(eigenvector) 라는 새로운 개념도 접하게 됩니다. 사실 이 고유~ 라고 말하는 개념들을 접하기 전까지의 내용들은 곧잘 따라오는데 보통 이 고유값, 고유벡터 내용부터 여러분들이 @_@ 이렇게 되곤 하더라구요(…).
하지만 워낙 중요한 개념이라 간단히 설명 드릴게요.
행렬을 벡터와 곱해주면, 해당 벡터의 크기와 방향이 변하게 됩니다. (이를 ‘선형변환’이라고 합니다.) 그러나 벡터에 행렬을 곱해주었더니 방향은 그대로이고 크기만 변화하는 방향은 그대로인! 그런 경우가 있을 수 있어요. 이렇게 벡터에 행렬을 곱한 연산의 결과가 벡터에 어떠한 숫자를 곱한 것과 마찬가지일 때 (방향은 그대로! 크기만 바뀜) 우리는
이 수를 해당 행렬의 고유값(eigenvalue)이라고 합니다. 그리고 이러한 고유값을 갖는 벡터를 고유벡터(eigenvector)라고 해요.
SVD는 위에서 말한 내용들이 모~두 들어가는 개념이랍니다. 굳이(?) 설명 드리자면 직교하는 벡터 집합에 대해 선형 변환 후 그 크기는 변해도 직교성을 유지하는 직교 집합을 구하는 행렬의 분해 방법… 이라고 할 수 있는데, 지금은 그냥 한 귀로 듣고 흘려 주세요~ 여러분이 기억해 주셨으면 하는 사실은 행렬로 표현되는 데이터를 분석하고 다루는 그 모든 수학적 과정이 곧 선형대수 라는 겁니다.
결론
선형대수학에 대한 고찰 (2편)
지금까지 많이 어렵게 느껴지셨나요? 음.. 결론을 얘기하면 선형대수를 통해 우리는 주어진 데이터를 비로소 유의미하게 다룰 수 있게 된다는 것이 중요합니다. 선형대수는 공업수학에서 미적분과 궤를 달리하는 동떨어진 이야기가 아닙니다. 예를 들어 여러분은 공업수학의 마지막 끝에 이르러 [푸리에 변환]을 배우게 되는데, 변환식은 미적분으로 적혀 있지만 결국 신호도 벡터로 표현되기 때문에 푸리에 변환은 선형대수로 계산됩니다. 특히, 여러분이 전공 과목을 배우며 C, Phython 외에 MATLAB이라는 프로그래밍 언어를 사용하게 된다면 이 언어는 모든 연산이 행렬을 바탕으로 동작한다는 것을 기억해두세요! 여러분이 행렬을 이해하고 있는 정도에 따라 같은 수식이라도 훨씬 빠르고 깔끔하게 결과를 볼 수 있는 멋진 코딩을 할 수 있을테니까요!
언제나 말씀드리지만 편입 수학은 시험 범위가 무척 넓은 시험입니다. 편입시험 자체는 무지성으로 암기를 해도 어느정도 합격이 가능한 수준의 점수가 형성될 수 있어요. 그러나 이렇게 무지성으로만 암기만 하면, 편입 합격 이후 전공 과목을 접했을 때, “아 분명히 배웠는데 전공책에서 만나니까 하나도 모르겠네..” 이렇게 말이 나오는 기적 같은 상황을 맞을 수 있어요. 암기만으로 일단 편입수학 시험에서 선형대수학 점수는 잘 맞았지만, 대학교 전공 공부를 하니 하나도 모르겠는 상황이죠.
지금 이 글을 읽고있는 학생분들 대부분은 대학교 전공공부에 대한 고민보다는 일단 합격하고 봐야되는 입시생이기 때문에 제가 오늘 작성한 글이 크게 와닿지 않을 수 있습니다. 그러나 여러분들의 미래를 위해서라도 부디 지금 힘겹게 공부하는 선형대수학 내용이 나중에 결국 어떻게 사용되는지 정도는 간단하게나마 기억해 주었으면 하는 마음입니다!
이상으로 이번 글은 여기서
마무리 하도록 하겠습니다!
지금까지 송두원T 였습니다.
“편입을 경험했기에, 합격은 튜나입니다.”