안녕하세요!
서울대 수리과학부를 졸업하고 현재는 직장인입니다.
그동안 수학 공부한게 아까워서 다시 공부 시작하려고 하는데, 선형대수학 같이 공부하고 싶으신 분들 함께해요!
* 선형대수 개념 공부 및 손으로 문제 풀어보고, 파이썬 이용해서 문제들 풀 예정입니다!
- 일시: 매주 수요일 저녁
(2월 18일 수요일 첫 수업 예상)
- 장소: 홍대 스터디룸
- 교재: 자체 교재
* 20차시 커리큘럼이고, 아래 참고하세요!
* 이전에 공부해둔 자료 프린트해서 드릴 예정입니다!
- 비용: 스터디룸 비용 1/n
링크: https://forms.gle/QUnvvbM5wBTc4m4j7
🍳커리큘럼
1차시: 선형대수와 코딩의 관계
- 선형대수는 왜 필요한가
- 벡터/행렬이 코드에서 어떤 의미인지
- 스칼라 vs 벡터 vs 행렬
- NumPy 기본 구조
2차시: 벡터(Vector)
- 벡터의 의미
- 벡터 덧셈, 스칼라 곱
- 벡터의 길이(norm)
- 코드로 벡터 연산 구현
3차시: 내적(Dot Product)
- 내적의 의미 (유사도, 투영)
- 코사인 유사도
- ML에서의 활용 (추천 시스템)
- np.dot, @ 연산자
4차시: 행렬(Matrix)
- 행렬의 의미 (데이터 테이블)
- 행렬의 덧셈, 곱셈
- 차원(dimension) 이해
- 브로드캐스팅 개념
5차시: 행렬 곱(Matrix Multiplication)
- 행렬 곱의 직관
- 연산 순서 중요성
- 코드에서의 행렬 곱
- 실수하기 쉬운 차원 오류
6차시: 선형 변환(Linear Transformation)
- “행렬 = 변환”
- 이동, 확대, 회전
- 2D 좌표 변환 예제
7차시: 단위행렬 & 역행렬
- 단위행렬의 의미
- 역행렬의 직관
- 연립방정식 풀이
- np.linalg.inv
8차시: 연립방정식과 행렬
- Ax = b 형태
- 직접 풀이 vs 라이브러리
- 수치적 안정성 개념
9차시: 행렬식(Determinant)
- 행렬식의 의미
- 0이면 무슨 뜻인가?
- 역행렬과의 관계
- 계산보다는 해석 중심
10차시: 랭크(Rank)
- 랭크의 의미
- 정보량 관점에서 이해
- 중복 데이터 감지
- np.linalg.matrix_rank
11차시: 고유값 & 고유벡터 (직관)
- 고유값, 고유벡터의 의미
- 시각적 설명
12차시: 고유값 분해(Eigendecomposition)
- 행렬의 구조 파악
- 시스템 안정성
- np.linalg.eig
13차시: 직교 & 정규직교
- 직교 벡터의 의미
- 정규화(normalization)
- 머신러닝 전처리
14차시: 정사영(Projection)
- 벡터를 다른 공간에 투영
- 최소제곱법 개념
- 회귀분석과 연결
15차시: 최소제곱법(Least Squares)
- 오차 최소화
- 선형 회귀의 수학적 원리
- 코드로 직접 구현
16차시: SVD (특이값 분해)
- 가장 중요한 분해 기법
- 차원 축소의 핵심
- np.linalg.svd
17차시: PCA (주성분 분석)
- 데이터 압축
- 시각화
- ML 파이프라인에서의 위치
18차시: 수치 계산 이슈
- 부동소수점 오차
- 역행렬을 피해야 하는 이유
- 안정적인 계산 방법
19차시: 선형대수와 딥러닝
- 신경망 = 행렬 곱의 연속
- 가중치, 입력, 출력의 의미
- 역전파와 선형대수의 연결
20차시: 종합 프로젝트
- 작은 데이터셋 분석
- PCA + 회귀 모델
- 코드로 전체 흐름 정리
- “선형대수 → 문제 해결” 체감