Post

1-(1) 선형대수학이란 어떤 학문이며, 왜 머신러닝에 필요한지

1-(1) 선형대수학이란 어떤 학문이며, 왜 머신러닝에 필요한지

🟢 (1) 선형대수학이란 어떤 학문이며, 왜 머신러닝에 필요한지 설명해보세요.

🟡 들어가기 앞서..

선형대수학(Linear Algebra)는 개인적으로 애착이 있는 과목이고 학부~대학원 시절까지 여러번 나를 괴롭혔던 과목이기도 하다. 그래서 개인적으로 이 주제가 나왔을때 할말이 정말 많아서 어떤 것부터 얘기할까 고민을 하다가 데드라인에 쫓겨서 두서 없이 한 번 글을 써보기로 마음을 먹었다.

🟡 전기전자전공

과거 학부 시절에 수학은 필수로 공학수학(1)~(4)까지 배웠던 기억이 있다. 대학 기초 미적분부터 PDE 같은 복잡한 미분 방정식까지 다뤘던 기억이 있다. 수학에는 자신이 있었기 때문에 수학 관련된 과목을 듣고 싶었지만 확률&통계, 수치해석 외에는 수학 과목이 열리지 않았다.

그러다가 평소 컴공에 관심이 많아서 컴공 커리큘럼을 보게 되었는데… 얘네는 미적분을 안배우고 선형대수와 이산수학을 배운다는 사실을 알게 되었다. 아니 대체 프로그래밍하는 사람들이 왜 선형대수라는 요상한 과목을 배우는건지 궁금해서 수강을 해봤는데… 그게 선형대수를 시작하게 된 계기였다.

🟡 대수? 행렬?

선형대수를 보고 과거 고등학교 수학1에서 배웠던 행렬과 비슷해서 기초적인 행렬로 생각하고 약간 방심하고 들어갔는데… 그게 실수였다. 이건 도대체 왜 배우는건지 eigen value는 대체 뭐고 왜 이걸 구하고 있는지 알지는 못한채… 3-by-3 inverse matrix 공식만 외우다가 학기가 흘렀다.

🟡 대학원 시절에는

그러다가 대학원에 입학하고 고급선형대수라는 과목을 듣게 되었는데 해당 교수님이 우리 나라에서 선형대수 최고 권위자셨다. 암호&보안 관련한 수학을 하시는 분인데 그 당시 신기했던게 flipped learning 방식으로 교수를 하시는 분이었다. 다른게 아니라 수업을 듣기 전에 해당 주제에 대한 MIT 수업을 먼저 듣고 토론하는 수업이었다. 맨날 공식 외우고 문제 풀기만 할줄 알았지… 토론이라니… 그것도 선형대수를? 주입식 교육의 산물이자 권위자로서 상당히 도전적인 일이었다.

🟡 Gilbert Strang 교수님

그러나 이 코스는 정말 큰 쾌감을 선사해준 수업이었는데… 그 이유는 바로 fillepd learning의 영상 주인공이 MIT의 Gilbert Strang이라는 교수님이었기 때문이다. 엄청 노해한 교수님이 큰 칠판에 예제 하나 써놓고 썰어버리는 그 느낌은 큰 충격이었으며 공식 알려주고 문제 풀어주는 강사님들이랑은 차원이 달랐다. MIT 18.06SC Linear Algebra이라는 과정인데 여전히 선형대수에서는 손에 꼽는 명강의라고 알고 있고 특히 공대생들에게는 절대적으로 추천하는 강의다.

🟡 결국 이 강의가 좋았던 이유는

선형대수 대가의 insight를 배울 수 있다는게 가장 중요하다. 교수님이 한학기 강의 내내 강조하는 부분은 결국 Vectorspace에 대한 이해이다. 나처럼 공대생 관점에서 선형대수는 데이터를 다루는 언어이자 도구이기도 하며 무엇보다다 데이터에 대한 깊은 통찰력이 생긴다는 점이 중요하다.

🟡 다시 돌아가서.. 결론은

AI는 복잡한 모델을 학습시키는 것이고 이러한 네트워크의 파라미터와 데이터는 선형적이기 때문에 우리가 다루는 모든 학습은 선형대수를 사용하지 않을 수가 없다.

라고 공대생의 관점에서 결론을 내려보고~ 마지막은 Strang 교수님 책의 한한 구절으로 마무리하겠다.

“A key goal is learning to “read” a matrix”

Gilbert Strang

🟢 예시 답안 (코드잇 제공)

선형대수학이란? 선형대수학은 벡터, 행렬, 그리고 선형 변환을 다루는 수학 분야입니다. 데이터를 표현하고, 변환하며, 계산하는 데 사용되는 도구를 제공합니다. 이 학문은 특히 다차원 공간에서 데이터를 이해하고 다루는 데 적합합니다. 왜 머신러닝/딥러닝에 필요한가요? **<데이터 표현과="" 구조화="">** 머신러닝과 딥러닝에서 데이터는 보통 벡터(1차원 배열)나 행렬(2차원 배열)로 표현됩니다. 예를 들어, 이미지 데이터는 픽셀 값을 가진 행렬로, 텍스트 데이터는 단어 벡터로 변환됩니다. **<모델 연산의="" 기초="">** 행렬 곱셈은 딥러닝 모델의 가중치와 입력 데이터를 결합하는 핵심 연산입니다. 딥러닝의 기본인 신경망은 여러 층의 행렬 연산과 활성화 함수로 구성됩니다. **<특성 추출과="" 차원="" 축소="">** 고차원 데이터를 효율적으로 다루기 위해 주성분 분석(PCA) 같은 차원 축소 기법을 사용합니다. 이 과정은 선형대수학의 기초 원리를 따릅니다. **<최적화와 학습="" 알고리즘="">** 머신러닝 모델은 손실 함수를 최소화하는 방향으로 학습합니다. 이 과정에서 기울기 계산과 같은 작업이 선형대수학 기반으로 이루어집니다. 딥러닝에서 역전파(*backpropagation*)는 선형대수학과 미적분의 결합된 활용입니다.

This post is licensed under CC BY 4.0 by the author.

© 2025 Soohyun Jeon ⭐

🌱 Mostly to remember, sometimes to understand.