▣ 1. 넘파이(numpy) 란?
파이썬 언어에서 기본적으로 지원하지 않는 배열(array) 혹은 행렬(matrix) 의 계산을 쉽고 빠르게 해주는 라이브러리 입니다.
▣ 2. 넘파이(numpy)를 배워야 하는 이유 ?
신경망에서 데이터를 계산할 때 행렬로 계산을 하는데 행렬 계산을 아주 빠르고 쉽게 해주는 모듈이 numpy 여서 넘파이를 배워야합니다.
문제1. 아래의 행렬을 numpy 로 만드시오 !
1 2 3 4
import numpy as np
a = np.array( [ [ 1, 2 ], [ 3, 4 ] ] )
a
설명: 리스트를 numpy 의 배열로 변환을 했습니다. 이렇게 변환해야 행렬계산을 빠르게 할 수 있습니다.
문제2. 위의 a 행렬의 각 요소에 숫자 5를 더하시오 !
import numpy as np
a = np.array( [ [ 1, 2 ], [ 3, 4 ] ] )
a + 5
※ 위의 기능이 바로 numpy 의 그 유명한 "브로드 캐스트" 기능입니다.
구글에서 '한빛 미디어 라고 검색하고 부록 예제 소스 에 가서 밑바닥부터 시작하는 딥러닝 실습 파일을 다운로드 받으세요 ~
문제3. 그림 1-1 처럼 행렬 계산을 numpy 로 구현하시오. 즉 브로드 캐스트가 되는지 확인하시오 !
import numpy as np
a = np.array( [ [ 1, 2 ], [ 3, 4] ] )
print( a * 10 )
만약 브로드 캐스트가 안된다면 for loop문을 써서 계산을 해야합니다. 그런데 루프문 없이 쉽게 구현했습니다.
문제4. 그림 1-2(책 40페이지)의 브로드 캐스트 기능을 numpy 로 구현하시오 !