👩‍💻LEARN : ML&Data/Book Study 42

[알고리즘 구현으로 배우는 선형대수] #13. LU분해

1. 기본 행렬 기본 행렬(E) : 단위 행렬에서 기본 행 연산을 수행한 행렬 단위행렬에서 n행에 p를 곱해서 j 행에 더하는 등의 연산을 수행한 모든 행렬을 기본 행렬이라고 함 기본 행렬의 역행렬 대각 행렬일 경우 : 주 대각 원소의 역수를 대각 원소에 대입 대각 행렬이 아닐 경우 : 주 대각 원소가 아닌 값(0이 아님)에 마이너스를 취함 2. LU분해 개념 Ax = b 일 때, A = LU 의 곱 형태로 분해하는 것 L : 하삼각행렬, U : 상삼각행렬 방법 A를 가우스 행렬 형태인 U로 변환하는 과정에서 L을 구할 수 있음 행렬 A에 기본행렬을 계속 곱해가며 가우스 행렬을 만들어가면서 LU분해 진행 가능 En x En-1 x ...x E2 x E1 x A = U A = (En x En-1 x .....

[알고리즘 구현으로 배우는 선형대수] #12. 대각화

1. 대각화의 개념 행렬의 대각화 : 행렬을 대각 행렬로 만드는 것 정사각 행렬 A에 대해, P-1AP가 대각 행렬이 되는 가역 행렬 P가 존재한다면 행렬 A은 대각화 가능 이라고 함 행렬의 대각화 가능 여부 : 해당 행렬의 고유값 개수가 nxn 행렬에서 n개의 서로 다른 고윳값을 가져야 함 2. 직교 대각화의 개념 D = P-1AP = PtAP (D:대각행렬) 행렬 A에 선형 변환(P,P-1)을 취한 결과 대각 원소만 남는 대각 행렬이 됨 위 식을 만족하는 직교 행렬 P가 존재할 경우 A는 직교대각화 가능하며 직교 행렬 P가 A를 직교대각화하는 것임 조건1. 행렬A의 고유벡터는 n개의 정규 직교 벡터를 만족해야 함 조건2. A는 반드시 대칭 행렬이어야 함 대칭행렬이란 At=A인 행렬을 의미함 (ex. ..

[알고리즘 구현으로 배우는 선형대수] #10. 고유값과 고유벡터

#10. 고유값과 고유벡터 1. 고윳값과 고유 벡터의 개념 Ax = λx 고유 벡터(x) 벡터에 선형 변환(A)을 취했을 때, 방향은 변하지 않고 크기만 변하는 벡터 고윳값 (eigenvalue, λ) 행렬의 특성을 나타내는 값으로 선형 변환 이후 변한 크기 (λ)로, 기존 벡터 x의 방향은 변하지 않고 길이만 λ만큼 변한 것을 의미 구분 길이 변화 방향 변화 λ

[알고리즘 구현으로 배우는 선형대수] #9. 다양한 곱 연산

1. 외적과 크로네커 곱 벡터의 외적 (텐서곱) 벡터의 내적과 달리 외적의 연산 결과는 행렬로 도출됨 크로네커 곱 외적의 특수한 경우로, 표기법은 동일함 행렬 A가 nxp행렬이고 B가 mxd 행렬일 때, A,B의 크로네커 곱은 크기가 nmxpd인 행렬이다. 2. 벡터곱 (크로스곱) 정의 3차원 공간의 벡터들 간에 적용할 수 있는 연산으로, 벡터 u,v의 벡터곱 uxv의 의미는 u와 v에 수직인 벡터를 의미한다 기하학적 의미 벡터 a,b가 있을 때 a x b는 두 벡터에 수직인 벡터를 의미한다. ||a x b|| = 0 : 만약 벡터 a,b가 평행한다면 (같은 선 상에 있다면) 벡터 곱의 크기는 0이다. ||a x b||의 의미 벡터 a,b와 수직하는 벡터의 길이 a,b가 만드는 평행사변형의 넓이(!) 평..

[알고리즘 구현으로 배우는 선형대수] #8. 내적(inner product)

아 선생님 살려주세용 내적 자체는 안어렵네 했는데 직교 나오고 분해 나오면서 정신이 안드로메다로 가버렸어용 #8. 내적(inner product) 1. 내적의 개념 내적 공간 다음 공리를 만족하는 벡터 공간을 내적 공간이라고 한다. = = + = a >= 0 내적 정의 내적이란 벡터 간 연산의 한 종류로, 벡터와 벡터의 연산 결과로 스칼라가 나온다. 이 때 두 벡터 간 n*p , p*m 형태여야 하는데 그렇지 못할 경우 (p*n등)한 행렬을 전치시켜서 내적 연산을 수행한다. 내적 성질 내적 → 벡터의 길이(norm) , 벡터 사이 관계 파악 가능 벡터 사이의 관계 내적 > 0 → 두 벡터 사이의 각도 90 내적 = 0 → 두 벡터 사이의 각도 = 90 ⭐️ (추후 직교와 연관) 벡터의 길이 (||u||)..

[딥러닝 파이토치 교과서] #4. 딥러닝 시작

사실 앞에 머신러닝 기법 파이토치로 구현하느 것도 있는데 정리 안하고 패스함..패스패스... 그렇다고 다 안다는 뜻은 아님... 그냥 코드로 구현하고 지쳤을뿐... 기존 텐서로 구현하던 것들을 이제 파이토치로 구현하는 법을 알면 되니까 짱쉬울줄 알았는데, 생각보다...음...?^^?? 하게 되는 부분이 많다. 아무래도 코딩 더 열심히 해야겠지 그렇지... #4. 딥러닝 시작 1. 딥러닝 용어 가중치(w) 입력값이 연산 결과에 미치는 영향력을 조절하는 요소. wx+b에서 w 가중합(sum(wx+b)) 전달함수라고도 하며, 각 노드에서 들어온 신호에 가중합을 곱한 값을 모두 더한 합계 가중합이 계산되면 이를 활성화 함수로 넘긴다. 활성화 함수 가중합을 출력할 때 일정 기준에 따라 출력값을 변화시키는 비선형 ..

[알고리즘 구현으로 배우는 선형대수] #7. 기저와 차원

3차원 현실 생활도 버거운데 ..난 2D 캐릭터가 딱 맞는데... 여튼 n차원을 ..가보자... #7. 기저와 차원 1. 벡터 공간 개념 벡터의 덧셈과 스칼라곱이 정의된 공간으로 선형공간임🤔.. 이라 하면 뭔말인가 싶은데 각 차원마다 기저벡터가 있고, 이에 대해 n을 곱하거나 벡터 간 더한 값으로 공간이 정의되기 때문에 위와 같은 정의가 된 것으로 보임 벡터 공간 안에서는 벡터의 길이, 방향을 구분하고 비교할 수 없음 (이는 추후 내적공간에서 확인) 벡터 공간의 공리 공간 V에 속하는 벡터 u,v에 대해서 두 벡터의 합 u+v도 공간V에 속한다 a가 임의의 스칼라이고 벡터 u가 공간 V에 속하면 au도 속한다 차원에 따른 벡터 1차원일 경우 원점 기준으로 +2, -2 등 하나의 원소로 구성됨 2차원일 경..

[알고리즘 구현으로 배우는 선형대수] #6. 역행렬

역행렬까진 쉽죠...기저 차원이 얼탈뿐... #6. 역행렬 역행렬의 개념 행렬 A의 역행렬 B는 AB = I를 만족한다. 즉 행렬곱한 결과가 단위 행렬I가 되는 것을 의미한다. 단 역행렬을 구하고자 하는 행렬의 행렬식이 0일 경우 역행렬은 존재하지 않음 가역행렬 : 역행렬이 존재(유일), 행렬식 !=0 특이행렬 : 역행렬이 없음, 행렬식 = 0 역행렬 계산 2*2일때 A = [[a,b],[c,d]]일때, 먼저 행렬식 !=0확인한 다음 좌측과 같이 계산 n*n일때 1. 각 원소 별 여인수(Cij)를 구함 2. 여인수로 이뤄진 여인수 행렬을 구함 3. 여인수 행렬의 전치행렬(transpose)인 행렬 A의 수반행렬(adj)을 구함 3. 행렬식을 구한 다음 (1/det(A)) * adj(A)로 역행렬 계산 정..

[알고리즘 구현으로 배우는 선형대수] #5. 행렬식

행렬식과 역행렬을 보며 코웃음 치던 저는 몰랐죠... 기저와 차원을 배우며 아찔해질 줄은.... #5. 행렬식 행렬식의 개념 행렬의 특성을 하나의 숫자로 표현하는 방법으로, 정사각 행렬을 스칼라로 변환하는 함수 행렬식을 통해 역행렬 구할 수 있음 해당 행렬의 특성을 알 수 있음. 3차원일 경우, 행렬의 벡터로 구성되는 육면체의 부피를 구하는 것 행렬식 계산법 2차원 행렬의 경우 det(A) = |A| = a11a22 - a12a21 주 대각행렬 원소를 곱한 값에 나머지 원소를 곱한 값을 빼는 것 3차원 이상 행렬의 경우 소행렬 : 원소 aij에 대한 소행렬은 i행과 j열 을 제외한 나머지 행렬로 구성된 행렬 소행렬식(Mij) : aij에 대한 소행렬식은 행렬 i행 j열을 제외하고 구성된 부분행렬의 행렬식..

[딥러닝 파이토치 교과서] #1. 파이토치 기초

텐서에 익숙해져있다가 파이토치로 넘어가려니 아직은 어렵다... +이번 책 끝내고, 나중에 여유 좀 생기면 파이토치 튜토리얼도 봐야지! PyTorch 소개 Introduction|| Tensors|| Autograd|| Building Models|| TensorBoard Support|| Training Models|| Model Understanding 아래 영상이나 youtube 를 참고하세요. PyTorch Tensors: 03:50 에 시작하는 영상을 시청하세요. PyTorch를 import할 것 tutorials.pytorch.kr #1. 파이토치 기초 파이토치 아키텍처 파이토치 API torch : GPU 지원 텐서 패키지 torh.autograd : 자동 미분 패키지. 신경망에 변경이 생길 ..