Please enable JavaScript.
Coggle requires JavaScript to display documents.
수학여행 8일차 행렬: 데이터를 편리하게 다룰 도구 - 넘파이 - Coggle Diagram
수학여행 8일차 행렬: 데이터를 편리하게 다룰 도구 - 넘파이
넘파이 어레이(ndaray)
행렬을 더 일반화시킨 다차원 배열
연산
행렬
행렬곱셈의 해석
넘파이의 행렬곱
np.dot()
선형결합
미지수 벡터 \(x_1, x_2 .... x_n\)과 계수 벡터 \(a_1, a_2 .... a_2\)의 원소들을 곱하고 모두 더한 결과벡터의 형태를 선형결합이라고 부릅니다.
\(b = a_1x_1 + a_2x_2 + ..... a_nx_n\)
선형독립
\(b = 0\)일때, 모든 계수 벡터가 \(0\)인 경우
선형종속
\(b = 0\)일때, 모든 계수 벡터가 \(0\)이 아닌 경우
행렬곱셈 해석
열결합
\(AB = \begin{bmatrix} a_1 & a_2 & a_3 \end{bmatrix} \begin{bmatrix} b_11 & b_12 \\ b_21 & b_22 \\ b_31 & b_32 \end{bmatrix} = \begin{bmatrix} a_{1}b_{11} + a_{2}b_{21} + a_{3}b_{31} & a_{1}b_{12} + a_{2}b_{22} + a_{3}b_{32} \end{bmatrix} \)
A의 열벡터와 행렬B의 각열 에대해 열벡터 요소로 두번 선형결합하게 됩니다.
행결합
외적합
행렬을 이용한 코딩
벡터화
python은 반복문 쓰면 느리니까
numpy 모듈의 행렬곱과 벡터 내적 적극 활용
특별한 행렬
단위 행렬
$$IA = AI = A$$
역행렬
$$AA^{-1} = A^{-1}A = I$$
대각 행렬
대각 요소만 값을 가지는 행렬
대칭행렬
$$S^T = S$$
인덱싱
방법
슬라이싱 이용
인덱스 번호를 배열로 만들어 지정
축의 인덱스 번호로 지정
축
axis = 0 : 세로방향
axis = 1 : 가로방향
축 순서 바꾸기
transpose()
브로드캐스팅
큰 차원과 연산을 하는 작은 차원의 넘파이 어레이의 축을 추가하여 데이터 확장
브로드캐스팅시 새로운 축은 항상 0
생성
np.random.rand(3,2)
np.ones((3,2))
np.ones_like(A)
np.zeros((3,2))
np.np.zeros_like(A)
np.full((3,2),1)
np.arange(3,2)
tensor
어레이의 차원이 확장된 다차원 배열