Problem Solving with Algorithms

728x90
반응형

혁펜하임의 선형대수학 강의는 “선형대수학을 눈으로 보이게” 만드는 것을 목표로 한, 총 40강짜리 시각 중심 강의 시리즈입니다. 선형대수의 기본 개념부터 고급 분해 기법과 응용까지 차근차근 다루고 있어, 공대/컴공 전공자뿐 아니라 머신러닝·데이터사이언스를 공부하는 학습자에게 최적의 커리큘럼이라 할 수 있습니다.

 

전체 강의 소개는 아래 포스팅을 참고하세요.

 

혁펜하임의 "보이는" 선형대수학 (Linear Algebra)

 

 

 

[선대] 2-1강. 벡터의 덧셈과 뺄셈 그리고 스칼라배 쉬운 설명

이 강의에서는 벡터의 기본 연산인 덧셈, 뺄셈, 스칼라배가 무엇인지와 그 기하학적 의미를 다룹니다. 같은 길이의 벡터끼리는 각 원소를 위치별로 더하거나 빼면 되며, 스칼라배는 벡터의 각 성분에 같은 실수를 곱해 주는 연산입니다.​​



기하학적으로 벡터 덧셈은 “평행이동 후 끝점끼리 잇기”로 볼 수 있어서, 두 화살표를 머리와 꼬리로 이어 그 결과가 새로운 벡터가 되도록 이해할 수 있습니다.

스칼라배

스칼라배는 벡터의 방향은 유지한 채 크기만 늘리거나 줄이는 동작이며, 음수 스칼라배는 방향까지 반대로 뒤집는 효과가 있습니다.​

 

 

 

[선대] 2-2강. 전치 (Transpose) 쉬운 설명

[선대] 2-2강. 전치 (Transpose) 쉬운 설명

 

전치는 행렬의 행과 열을 맞바꾸는 연산으로, i행 j열에 있던 성분을 j행 i열 위치로 보내는 작업입니다. 엑셀이나 Pandas DataFrame에서 행·열을 뒤집는 기능과 동일한 동작을 한다고 이해하면 직관적입니다.​​

전치를 했을 때도 위치가 변하지 않는 주대각선 원소들을 대각 성분이라고 부르고, 나머지 원소를 모두 뒤집는 구조를 가집니다. 어떤 행렬이 전치해도 자기 자신과 같다면 대칭행렬이라고 부르며, 이후 내적·정사영·분해 등에서 중요한 역할을 하게 됩니다.​​

 

 

 

 

 

[선대] 2-3강. 내적과 정사영 (inner product & projection) 직관적 설명

이 강의에서는 두 벡터의 내적이 “단순한 곱셈 공식”을 넘어서, 벡터 사이의 각도와 투영을 측정하는 도구라는 점을 강조합니다. 내적은 두 벡터의 크기와 그 사이 각도의 코사인으로 표현되며, 값이 0이면 서로 수직이라는 것을 의미합니다.​​

 

내적은 두 벡터가 닮은 정도

닷 프로덕트, 내적
8이 스칼라이기 때문에 이것도 성립

 

 

정사영은 한 벡터를 다른 벡터 방향으로 ‘그림자처럼’ 떨어뜨리는 연산으로, 그 결과는 기준 벡터의 방향만을 가진 성분이 됩니다. 내적을 이용하면 이 정사영 벡터를 공식으로 깔끔하게 표현할 수 있고, 나머지 오차(수직 성분)는 최소제곱, 회귀분석 등의 기반이 됩니다.​

벡터의 크기는 막대기를 한쪽에 두개씩 쓴다. 각 성분의 제곱을 더해서 루트를 취해주면 된다.

 

반드시 기억. 내적은 정사영이다. 내적은 프로젝션이다.
노란색은 정사영 내린것이고 곱하면 원래 벡터 두개곱한 길이가 나온다.

 

크기를 구할때(방향은 그대로):노말라이즈
[닮은 정도라는 말의 의미] 내적의 해석: 파란색 벡터가 노란색 벡터 방향으로 4만큼 가지고 있다.
반대로향할떄: 안닮은거 아니고 음으로 닮았다.
여러분이 선대를 공부하다가 처음으로 막히는 그 식

 

 

위의 내용에 대한 기하학적 풀이

 

 

 

 

 

 

[선대] 2-4강. 벡터의 norm 쉬운 설명

벡터의 노름(norm)은 벡터의 “길이” 또는 “크기”를 수치로 표현한 것입니다. 가장 익숙한 2-노름은 피타고라스 정리를 이용해 각 성분 제곱의 합의 제곱근으로 계산하며, 이 값이 클수록 원점에서 더 멀리 떨어진 벡터입니다.​​

노름은 거리·오차·규제(regularization)를 정의할 때 필수 개념이기 때문에, 이후 최소제곱법이나 최적화에서 벡터가 얼마나 큰지 측정하는 기준으로 반복해서 등장합니다. 방향은 같고 노름만 달라지는 경우를 비교하면, 같은 방향의 벡터지만 “세기”가 다른 것으로 해석할 수 있습니다.​​

 

벡터의 끝점이 모여서 어떤 도형을 이룰수 있다는 사실을 기억해주세요.

 

 

 

 

 

 

[선대] 2-5강. 행렬의 곱셈과 네 가지 관점 (열공간 (column space) 등)

인공신경망도 다 이렇게 표현 가능합니다. 그래서 선형대수학이 중요한 것!

 

이 강의에서는 행렬 곱셈을 단순히 “공식대로 계산하는 법”이 아니라, 네 가지 시각으로 해석하는 것이 핵심입니다. 특히 행렬 곱셈을 “열벡터의 선형결합”으로 보는 관점이 중요하며, Ax는 행렬 A의 열벡터들을 적당히 섞어 새로운 벡터를 만들어 내는 연산으로 설명됩니다.​

 

또 다른 관점으로는 행렬을 “좌표변환을 수행하는 함수”로 보아, 입력 벡터를 다른 공간이나 방향으로 보내는 선형 변환으로 해석합니다. 이렇게 여러 관점을 익혀 두면, 이후 column space, rank, 선형 독립 같은 개념을 훨씬 자연스럽게 이어서 이해할 수 있습니다.​

딥러닝 트랜스포머 공부할때 도움되는 4번




 

 

[선대] 2-6강. span 과 column space (열공간) 직관적 설명

span: 스판처럼 늘어난다는..

 

span은 여러 벡터의 모든 “선형결합으로 만들어지는 벡터들의 집합”을 의미합니다. 예를 들어 2차원에서 서로 평행하지 않은 두 벡터의 span은 평면 전체를 채울 수 있고, 한 방향만 가진 벡터 하나의 span은 그 방향의 직선만 채우게 됩니다.​​

column space(열공간)는 행렬의 열벡터들이 span하는 공간으로, 행렬 A가 만들 수 있는 모든 Ax 결과 벡터들의 집합입니다. 결국 “어떤 b에 대해 Ax=b가 가능한가?”라는 질문은, b가 이 column space 안에 속하는지 여부를 묻는 것과 같습니다.​​

 

 

[선대] 2-7강. 선형 독립과 기저 (linearly independent & basis) 직관적 설명

선형 독립은 “벡터들 중 어느 것도 나머지 벡터들의 선형결합으로 표현되지 않는 상태”를 의미합니다. 직관적으로는 서로 겹치거나 평행하지 않는, 완전히 새로운 방향 정보를 추가해 주는 벡터들이라고 볼 수 있습니다.​​

노란색이 추가되면 이 면을 밀어줄수있다. 그래서 2차원뿐만 아니라 3차원도 갈 수 있다.

 

차원: 인디펜던트 한 벡터들의 수, 2개면 2차원 3개면 3차원 등 n개면 n차원



기저(basis)는 어떤 공간을 완전히 표현하기 위해 필요한, 선형 독립인 벡터들의 최소 집합입니다. 예를 들어 2차원 평면에서는 서로 평행하지 않은 두 벡터가 기저가 되며, 이 둘의 선형결합만으로 평면의 모든 점(벡터)을 표현할 수 있습니다.​​

 

[1,0][1,1]은 2차원 공간을 나타내는 기저 맞음. 크기가 1이 아니어도 되는건가.. 오른쪽 위꺼는 안됨.

 

 

 

 

 

 

[선대] 2-8강. 항등행렬, 역행렬, 그리고 직교행렬 (identity matrix & inverse & orthogonal matrix)

항등행렬(identity matrix)은 아무 연산도 하지 않는 “1 같은 역할”을 하는 행렬로, Ix=x를 만족하는 행렬입니다. 대각선에는 1, 나머지 성분에는 0이 들어가며, 행렬 곱셈에서 곱해도 원래 벡터나 행렬을 그대로 유지해 줍니다.​

 

항등행렬(identity matrix)



역행렬(inverse matrix)은 행렬이 한 번 한 선형 변환을 완전히 되돌려 주는 행렬입니다. A −1 A=I를 만족할 때 A −1 를 역행렬이라고 부르며, 이때 Ax=b는 x=A −1 b로 깔끔하게 풀 수 있습니다.​

역행렬(inverse matrix)

 

 

대각행렬 Diagonal matrix

대각행렬 Diagonal matrix

 


직교행렬(orthogonal matrix)은 열벡터들이 서로 수직이고 길이가 1인 행렬로, Q T Q=I를 만족합니다. 이 경우 Q −1 =Q T 가 되어 역행렬 계산이 매우 간단해지고, 길이와 각도를 보존하는 “회전·반사” 같은 변환으로 해석됩니다.

 

직교행렬(orthogonal matrix)

 

 

 

 

[선대] 2-9강. rank (행렬의 계수)

rank는 행렬이 가진 “서로 독립적인 열벡터(또는 행벡터)의 개수”를 나타내는 값입니다. 즉 column space의 차원과 같으며, 행렬이 실제로 몇 차원 방향으로 정보를 전달할 수 있는지를 측정합니다.​

열벡터의 선형 독립 개수와 행벡터의 선형 독립 개수는 항상 같기 때문에, rank는 row space의 차원과도 일치합니다. rank가 클수록 더 많은 독립된 방향 정보를 담고 있고, rank가 작으면 중복되는 방향이 많아져 정보가 압축된 상태라고 볼 수 있습니다.​

 

 

 

 

 

[선대] 2-10강. Null space (영공간)

Null space는 Ax=0을 만족하는 모든 벡터 x들의 집합입니다. 즉 행렬 A가 작용했을 때 완전히 0으로 ‘눌려 사라지는’ 방향들을 모아 놓은 공간입니다.​

Null space에 속하는 벡터는 서로 다른 해를 연결하는 “자유도”를 제공하며, Ax=b의 해가 여러 개 존재할 때 해들 사이의 차이가 항상 Null space 안에 있게 됩니다. rank와 Null space의 차원 사이에는 기본적인 관계(차원 정리)가 있어, 전체 차원 = rank + Null space 차원으로 나뉘게 됩니다.​

 

 

겹치는곳 원점

 

 

 

 

 

[선대] 2-11강. Ax=b 의 해의 수 알아내기

이 강의에서는 A의 rank와 행·열의 크기를 가지고 Ax=b의 해가 없는지, 하나인지, 무한히 많은지를 판단하는 방법을 설명합니다. 핵심은 column space 안에 b가 포함되어 있는지, 그리고 자유변수가 존재하는지 여부입니다.​

겹치는 선이라 점이 무한히 많다 / 평행해서 없다 / 교점만
이게 익숙하지 않다면 앞의 강의들을 복습해야 합니다.



직관적으로는

- b가 column space 밖에 있으면 해가 존재하지 않고,
- column space 안에 있으면서 자유변수가 없으면 해가 유일하며,
- column space 안에 자유변수가 있으면 무한히 많은 해가 생깁니다.​
  이때 full column rank, full row rank 같은 개념이 구체적인 경우를 분류하는 기준으로 사용됩니다.

 

 

 

 

 

[선대] 2-12강. rank 구하기 예제 풀이 | 우리 구독자들은 손도 안대고 풀지!

마지막으로 2-12강에서는 실제 행렬들을 가지고 가우스 소거법 등을 통해 rank를 계산하는 연습을 합니다. pivot(피벗)이 몇 개 나오는지, 어떤 열이 다른 열의 선형결합으로 표현되는지 등을 확인하면서 “독립적인 열이 몇 개 남는지”를 세는 과정에 익숙해지는 것이 목표입니다.​

이 예제 풀이를 통해 rank, column space, Null space, Ax=b의 해 개수 판단이 서로 연결된 개념이라는 점을 자연스럽게 복습할 수 있습니다. 계산 연습을 여러 번 하다 보면, 행렬을 보면 대략적으로 정보량(차원)과 해의 구조를 직감적으로 파악하는 감각을 기를 수 있습니다.​

 

 

 

 

 

다음 강의

[AI 인공지능 머신러닝 딥러닝/인공지능 수학] - 혁펜하임의 "보이는" 선형대수학 (Linear Algebra) 3강

 

혁펜하임의 "보이는" 선형대수학 (Linear Algebra) 3강

혁펜하임의 선형대수학 강의는 “선형대수학을 눈으로 보이게” 만드는 것을 목표로 한, 총 40강짜리 시각 중심 강의 시리즈입니다. 선형대수의 기본 개념부터 고급 분해 기법과 응용까지 차근

inner-game.tistory.com

 

728x90
반응형
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
250x250