수학/선형대수학 8

의사역행렬과 선형회귀

수학채널 쑤튜브 영상을 참고했습니다. ▶ 의사역행렬 역행렬은 정사각행렬일 경우 만들어질 수 있다. 행과 열의 수가 다른 경우 역행렬은 만들어질 수 없다. 그러나 이 행렬에 대한 의사역행렬은 만들 수 있다. 의사역행렬은 역행렬과 유사한 행렬을 의미한다. 우선 축소된 svd개념부터 살펴보자. 특이값 분해는 행과 열이 다른 행렬을 직교 행렬 U,V와 주 대각성분이 특이값으로 이뤄진 시그마 행렬의 곱으로 나타내는 것이다. 축소된 특이값 분해는 행렬에서 0으로만 이뤄진(대수적으로 무의미한) 행과 열을 모두 제거하고 나타낸 행렬곱이다. 비가역행렬과 가역행렬에서 축소된 svd는 다음과 같은 shape을 가진다. - 여기서 시그마 프라임은 모든 대각원소가 0이 아닌 정사각 대각행렬이므로 가역행렬이다. - u프라임과 v..

직선, 평면 벡터방정식

▶ 벡터방정식이란 함수에서 x에 값을 대입했을 때 도출되는 좌표값을 바로 산출할 수 있도록 하는 방정식이다. 예를들어, y= mx라는 직선 방정식이 있다고해보자. 이때 x를 1이라고 하면 y는 m, 즉 (1,m)의 좌표값을 가지게 된다. 해당 함수의 직선위에 존재하는 좌표값들은 (1,m)에 스칼라 배를 해준 좌표들을 모아놓은 값일 것이다. 해당 함수의 벡터 방정식은 다음과 같이 나타낼 수 있다. v= (1,m) (x,y)= tv 벡터가 (1,m)일 때 해당 벡터에 스칼라 배만 해주면 직선위에 존재하는 좌표값이 바로 나올 것이다. 그럼 (3,5m)좌표가 해당 직선에 포함되는 좌표인지 벡터 방정식을 통해 알아보자. x좌표가 3이 나오기 위해서 t는 3이되어야한다. 3v= 3(1,m)= (3,3m)이 벡터방정..

전치행렬

▶ 전치행렬이란 원래 행렬의 행과 열을 바꾼 행렬을 의미한다. 즉 2 x 3의 A행렬이 있으면 A의 전치행렬은 3x2 행렬이 된다 . 대각성분들은 행과 열이 같으므로 전치하더라도 위치가변화하지 않는다. 대각 성분을 제외한 성분들은 행과 열이 서로 바뀌기 때문에 대각선을 기준으로 대칭되는 위치로 바뀐다. ▶ 전치행렬의 성질 1) 전치한 행렬에 다시 전치한 행렬은 원래 행렬과 동일하다. 2) A행렬과 B행렬을 더해 전치한 행렬과 A의 전치행렬과 B의 전치행렬을 더한 행렬은 동일하다. 3) 스칼라배한 A행렬의 전치행렬과 A행렬의 전치행렬에 스칼라배한 행렬은 동일하다. 4) A가 가역행렬이면 A의 전치행렬도 가역행렬이다.

코사인 유사도(cosine similarity)/ 파이썬 구현

▶ 코사인 유사도란? 우리는 벡터 간 유사도를 측정함으로써 두 벡터가 얼마나 비슷한지를 알 수 있다. 그 유사도를 측정하는 방법 중 하나가 코사인 유사도이다. 벡터가 "유사하다"는 것은 두 벡터의 길이와 방향이 비슷한 방향과 길이를 가진다는 의미이다. 코사인 유사도는 두 벡터의 방향, 즉 각도에 기초해서 유사도를 측정한다. 다음과 같은 좌표들을 가진 세 벡터가 있다고 해보자. 그림을 보면 A벡터와 B벡터가 A와 C벡터는 유사할 것으로 보인다. 코사인 유사도로 측정하였을 때에도 우리의 추측과 일치하는지 알아보자. ▶ 코사인 유사도 공식 이때 각도 theta, 즉 v1과 v2 사이의 각도가 0에서 90도 사이이면 코사인 값이 +값이 나오고 90에서 180도 사이로 둔각이면 -값이 나온다. 따라서 코사인 유사..

역행렬과 역행렬의 특징/ 행렬식, (비)가역행렬

▶ 역행렬이란 정사각(nxn) 행렬의 역원을 역행렬이라고 한다. 역원은 행렬 A에 X행렬을 곱했을 때 나온 결과값이 항등행렬이면 X행렬을 A의 역원이라고 한다. 역행렬은 하나의 행렬에 대해 유일한 하나의 역행렬만 존재한다. 즉 X라는 역행렬은 A행렬에 대해 유일하게 존재하는 역행렬이라고 말할 수 있다. ▶ 역행렬의 공식 역행렬의 공식은 다음과 같다. 역행렬에서 ad-bc부분이 0이면 역행렬이 존재하지 못할 것이다. 따라서 우리는 A라는 행렬이 역행렬이 존재하는 행렬인지 아닌 행렬인지를 ad-bc가 0인지 아닌지를 통해 알 수 있다. 여기서 ad-bc를 우리는 판별식 또는 행렬식(determinant)로 det(A)라고 나타낸다. det(A)가 0이 아니라서 역행렬이 존재하는 행렬을 가역행렬이라고 부른다...

연립 일차 방정식, 행렬로 풀기/ 가우스조던 소거법, 역행렬

▶ 연립일차방정식을 행렬로 연립일차방정식을 행렬로 나타내고 행렬을 통해 계산할 수 있다. 행렬을 통해 푸는 방법으로는 가우스 조던 소거법과 역행렬을 이용한 방법이 있다. 연립일차방정식에서 구해야할 해가 적다면 충분히 원래 알고 있던 방정식을 푸는 방식으로 풀 수 있지만 구해야 하는 해가 5개만 넘어가도 풀기 복잡해진다. 이럴 때 행렬을 사용하면 해를 더 간단하게 구할 수 있고 컴퓨터를 통해 더 효율적으로 연산을 처리할수 있다. 그럼 두가지 방식에 대해 하나씩 알아보자. ▷ 가우스조던 소거법 먼저 가우스 조던 소거법을 사용하여 방정식을 풀어보자. 가우스 조던 소거법은 행연산에 상수배를 하여 다른 행에 더함으로써 첨가행렬(위 그림에서 1번 행렬)을 기약 행 사다리꼴로 변환하여 해를 구하는 방법이다. 여기서 ..

행렬의 연산/ 덧셈, 뺄셈, 곱셈

▶ 행렬의 연산 ▷ 1. 덧셈과 뺄셈 행렬의 덧셈과 뺄셈은 행렬내 동일한위치에 있는 요소들끼리 더하고 빼는 연산이다. ▷ 2. 곱셈 행렬의 곱셈은 덧셈, 뺄셈과는 다른 방식으로 이뤄진다. 행렬의 덧셈과 뺄셈은 교환 법칙 즉 A와 B의 위치를 바꿔 계산해도 같은 값이 나오는 반면 행렬의 곱셈은 교환법칙이 성립하지 않는다. 즉 행렬 A와 행렬 B의 위치를 바꾸면 다른 답이 나온다. 행이 m, 열이 n인 행렬 A와 행이 n, 열이 r인 행렬 B가 있다고 해보자. 두 행렬에 대한 곱셈은 다음과 같이 이뤄진다. 위에서 볼 수 있듯이 첫째 행렬의 행과 둘째 행렬의 열을 기준으로 곱셈이 수행된다. 이처럼 행렬의 곱이 성사되기 위해서는 첫번째 행렬의 열 개수와 두번째 행렬의 행개수가 동일해야 곱셈이 성립될 수 있다. ..

내적, 점곱이란 / 파이썬 내적 구현

▶내적이란? 한 벡터가 다른 벡터에 대해 가한 힘에 의해 변화된 스칼라 값을 얻는 곱이라고 할 수 있다. 즉 내적은 한 벡터 w가 벡터 v의 방향에 대해 어느정도의 힘을 가했는지를 알 수 있도록 해준다. 위의 그림에서 내적을 통해 우리는 w가 v벡터에 어느정도의 힘을 가했는지 알 수 있을 것이다. 내적 공식은 다음과 같다. v의 norm(크기) * w의 norm(크기) * cosθ 로 내적 스칼라를 구할 수 있다. 아래의 예시를 보자. (1) 의 경우는 w와 v벡터의 방향이 같은 경우다. 이때 w가 v의 방향에 힘을 가함으로써 변화된 스칼라는 3이라고 볼 수 있다. (2) 는 w와 v의 방향이 다른 경우이다. w가 v의 방향에 가한 스칼라를 구하기 위해 v와 같은 방향인 벡터 a를 구해보자. a의 nor..