본문 바로가기

파이썬/Pandas & Numpy4

실습) 행렬 norm이란? 배워서 어디다 쓰게? Norm (위키백과 정의) : 벡터의 길이 혹은 벡터의 크기를 나타낸다. 이를 행렬로 확장하면 다음의 식으로 정의된다. 쉽게 말해서 행렬에서 크기를 구하는 방법 중 하나라고 생각하면 된다. 보통 p값으로 1 또는 2(프로베니우스 놈)을 가장 많이 사용하므로, 수식을 정의 한 뒤 실습을 진행해보겠다. p = 1인 놈을 보통 L1 Norm, p = 2인 놈은 L2 Norm으로 쓴다. L2 Norm은 우리가 알고 있는 Euclidean Norm라고도 부르며, 두 점의 거리를 구할 때 제곱한 것을 다 더해서 루트를 씌워주었던 바로 그것이다. 프로베니우스 놈(Frobenius norm)은 vector L2 Norm을 행렬로 확장한 버전이다. L1 Norm: 절대값의 합 L2 Norm: 원점과의 거리(피타고라스 정.. 2020. 3. 12.
보충) numpy로 푸는 선형방정식, 행렬식 numpy의 linalg 서브패키지의 solve를 활용하여 선형 연립방정식을 풀어보자. ex) 2x + 3y = 1 x - 2y = 4 를 만족하는 x, y는 무엇인가? 행렬식 (위키백과 정의) : 선형대수학에서, 행렬식은 정사각행렬에 수를 대응시키는 함수의 하나이다. det(A) 로 정의하며, 연립 방정식이 해를 가지는지 아닌지를 결정하는 데 사용된다. 행렬 norm 참고 영상: https://www.youtube.com/watch?v=o44YKdEH8a0 2020. 3. 12.
2.2) Numpy로 공부하는 선형대수(행렬, 텐서, 전치연산) * 본 포스팅은 김도형의 데이터사이언스 스쿨(수학편)을 읽고 썼으며, 책에서 설명이 부족한 부분은 따로 보충했습니다. 행렬: 복수의 차원을 가지는 데이터 레코드를 합쳐서 표기한 것. (데이터 레코드의 모음집)ex. 한 송이의 붗꽃이 4차원 벡터(데이터 수가 4개)라면, 아래의 행렬은 6송이의 붗꽃 데이터를 표기한 것과 같다. 데이터를 행렬로 묶어서 표시할 때는 붗꽃 하나에 대한 데이터 레코드, 즉 하나의 벡터가 열이 아닌 행으로 표시하나의 데이터 레코드를 단독으로 벡터로 나타낼 때는 하나의 열로 나타내고, 복수의 데이터 레코드 집합을 행렬로 나타낼 때는 하나의 데이터 레코드가 하나의 행으로 표기된다. 텐서: 데이터 사이언스 분야에서 다차원 배열을 텐서라고 부른다. 같은 크기의 행렬이 여러 개 묶여 있는 .. 2020. 3. 7.
2.1) Numpy로 공부하는 선형대수 * 김도형의 데이터사이언스 스쿨(수학편)을 토대로 작성했으며, 책에서 설명이 부족한 부분은 따로 보충했습니다. 선형대수의 데이터 유형: 스칼라, 벡터, 행렬, 텐서 스칼라: 숫자 하나만으로 이루어진 데이터 벡터: 여러 숫자가 특정한 순서대로 모여 있는 것, 한 송이의 붗꽃에서 나온 4가지 특징 데이터의 묶음 특징 벡터: 데이터 벡터가 예측 문제에서 입력 데이터로 사용되면 특징 벡터라고 한다. [numpy를 사용한 벡터 표현] 1) 넘파이를 사용하여 벡터를 표현할 때는 2차원 배열 객체로 표현한다. 대괄호 2개를 이용하여 행렬의 형태로 만드는 것이다. 데이터는 항상 (n_samples, n_features) 의 구조를 가진 2D 배열. 아래 코드는 (4, 1) 행렬 * 벡터는 열의 수가 1인 행렬이라고 볼.. 2020. 3. 5.