Jupyter Notebook/선형대수

    [Python] 선형 연립방정식과 역행렬

    2.4 선형 연립방정식과 역행렬 — 데이터 사이언스 스쿨 선형 예측모형의 가중치벡터를 구하는 문제는 선형 연립방정식을 푸는 것과 같다. 예를 들어 \(N\)개의 입력차원을 가지는 특징벡터 \(N\)개를 입력 데이터로 이용하고 이 입력에 대응하는 목푯값 datascienceschool.net ※ 위 내용의 복습 글입니다. 선형 연립방정식 우리가 흔히 아는 선형 연립방정식이다. 이를 행렬과 벡터의 곱셈을 이용하면 간단하게 다음과 같이 나타낼 수 있다. 역행렬 우리가 선형 연립방정식을 matrix form으로 사용하는 이유다. 역행렬만 계산하게 되면 선형 연립방정식의 해를 쉽게 구할 수 있다. 넘파이에서도 inv()라는 명령어를 통해 역행렬을 쉽게 구할 수 있다. 예제 다음 선형 연립방정식을 넘파이로 계산해보..

    [Python] 행렬의 성질

    2.3 행렬의 성질 — 데이터 사이언스 스쿨 행렬은 여러 개의 숫자로 이루어져 있으므로 실수처럼 부호나 크기를 정의하기 어렵다. 하지만 부호/크기와 유사한 개념은 정의할 수 있다. 여기에서는 이러한 개념을 살펴본다. 행렬 놈 행렬의 datascienceschool.net ※ 위 내용의 복습 글입니다. 정부호와 준정부호 양의 정부호 행렬(陽의 正符號, Positive Definite Matrix) 물리학, 수학, 전자파, RF, 초고주파, 안테나, 통신 이론, 정보 이론 ghebook.blogspot.com 영 벡터가 아닌 모든 벡터 X에 대하여 다음 부등식이 성립하면 행렬 A가 양의 정부호(positive definite)라고 한다. 만약 등호가 포함이 되면 양의 준정부호(positive semi-def..

    [Python] 벡터와 행렬의 연산 (완)

    [Python] 벡터와 행렬의 연산(1) 2.2 벡터와 행렬의 연산 — 데이터 사이언스 스쿨 벡터와 행렬도 숫자처럼 덧셈, 뺄셈, 곱셈 등의 연산을 할 수 있다. 벡터와 행렬의 연산을 이용하면 대량의 데이터에 대한 계산을 간단한 수식으 return-value.tistory.com 행렬의 교환 법칙과 분배 법칙 행렬의 곱셈은 교환 법칙이 성립하지 않으나 덧셈/뺄셈의 분배 법칙은 성립한다. 전치 연산이나 역행렬에서도 덧셈/뺄셈의 분배 법칙이 성립한다. 또한 곱셈에서도 분배 법칙이 성립하지만 곱셈의 순서가 바뀐다. 연습 문제 2.2.5 -> N x 1 @ 1 x N -> N x N -> XT : M x N, M x N @ N x 1 - > M x 1 (3) 다음 코드를 실행하면 붓꽃 전체 데이터를 모두 벡터로..

    [Python] 벡터와 행렬의 연산(1)

    2.2 벡터와 행렬의 연산 — 데이터 사이언스 스쿨 벡터와 행렬도 숫자처럼 덧셈, 뺄셈, 곱셈 등의 연산을 할 수 있다. 벡터와 행렬의 연산을 이용하면 대량의 데이터에 대한 계산을 간단한 수식으로 나타낼 수 있다. 물론 벡터와 행렬에 대한 연 datascienceschool.net ※ 위 내용의 복습 글입니다. 벡터의 사칙연산 Numpy에서 기본적인 같은 크기의 벡터들은 사칙연산을 지원한다. 두 벡터가 행렬에서 같은 위치에 있는 원소끼리 사칙연산이 가능하다. 주의하자 행렬의 사칙연산과는 다른 연산이다. 이를 요소별(element-wise) 연산이라 한다. np.array([[5,6],[7,8]]) + np.array([[10,20],[30,40]]) - np.array([[1,2],[3,4]]) 예외로 ..

    [Python] 데이터와 행렬

    2.1 데이터와 행렬 — 데이터 사이언스 스쿨 선형대수(linear algebra)는 데이터 분석에 필요한 각종 계산을 돕는 학문이다. 데이터 분석을 하려면 수많은 숫자로 이루어진 데이터를 다루어야 한다. 하나의 데이터가 수십 개에서 수만 개의 숫 datascienceschool.net ※ 위 내용의 복습 글입니다. 숫자 이미지 2차원 데이터 사이킷런 패키지에서 필기된 0과 1의 데이터들을 2차원으로 가져와 보자. from sklearn.datasets import load_digits digits = load_digits() samples = [0,10,20,30,1,11,21,31] d = [] for i in range(8): d.append(digits.images[samples[i]]) plt...