Day02. 넘파이 & 맷플롯립
딥러닝 학습 기록입니다 2일차로 넘파이와 맷플롯립을 둘러봤습니다.
밑바닥부터 시작하는 딥러닝 1 | 사이토 고키 | 한빛미디어 - 예스24
딥러닝 분야 부동의 베스트셀러!머리로 이해하고 손으로 익히는 가장 쉬운 딥러닝 입문서이 책은 딥러닝의 핵심 개념을 ‘밑바닥부터’ 구현해보며 기초를 한 걸음씩 탄탄하게 다질 수 있도록 도와주는 친절한 안내서이다. 라이브러리나 프레임워크에 의존하지 않고 딥러닝의…
넘파이
- 고성능 다차원 배열 객체 제공 라이브러리
import numpy as np # as = alias배열 생성
import numpy as np
x = np.array([1.0, 2.0, 3.0])
print(x)
print(type(x))
z = np.array([[1,2], [3,4]])
print(z)
print(z[0][1]) # 2[1. 2. 3.]
<class 'numpy.ndarray'>
[[1 2]
[3 4]]
2배열(Vector) 연산
print('x + y', x + y)
print('x * y', x * y)
print('x / y', x / y)
print('x // y', x // y)x + y [2. 4. 6.]
x * y [1. 4. 9.]
x / y [1. 1. 1.]
x // y [1. 1. 1.]행렬(Matrix) 연산
z = np.array([[1,2], [3,4]])
print(z)
print('각 행렬의 원소 수: ', z.shape)
h = np.array([[5,6], [7,8]])
print(h)
print('각 행렬의 원소 수: ', h.shape)
print(z + h) # 행렬간의 연산 가능. 각 요소의 위치에 맞게 계산됨[[1 2]
[3 4]]
각 행렬의 원소 수: (2, 2)
[[5 6]
[7 8]]
각 행렬의 원소 수: (2, 2)
[[ 6 8]
[10 12]]브로드캐스트
- 서로 다른 배열 끼리도 계산 가능
print("브로드캐스트 예시")
a = np.array([[1,2,3], [4,5,6], [7,8,9]])
print(a * 10)
a = np.array([[1,2,3], [4,5,6], [7,8,9]])
print(a * np.array([10,20,30]))브로드캐스트 예시
[[10 20 30]
[40 50 60]
[70 80 90]]
[[ 10 40 90]
[ 40 100 180]
[ 70 160 270]]
맷플롯립
- 시각적 그래프를 그려주는 라이브러리
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 10, 0.1) # 0 에서 10 까지 0.1 간격으로 생성
y = np.sin(x) # sin 함수
# 그래프 그리기
plt.plot(x, y)
plt.show()
