Numpy

cherry·2024년 6월 18일
1

Naver AI Precourse

목록 보기
1/21

아래 내용은 네이버 AI precourse 강의를 개인 공부를 위해 정리한 내용입니다.



Numpy의 특징

  • 일반 list에 비해 빠르고, 메모리 효율적
    • C의 Array를 사용하여 배열 생성
  • 반복문 없이 데이터 배열에 대한 처리 가능
  • import numpy as np 형태로 사용
    • np.array([1, 2, 3], float) 과 같은 형태로 배열 생성
  • 하나의 데이터 type만 배열에 넣을 수 있음
    • 리스트는 [1, 0.7, 0.5] 가능하지만 넘파이는 안됨!
    • dynamic typing이 지원되지 않음




Array Shape

Array의 Rank별 명칭

RankNameExample
0Scalar7
1Vector[10, 10]
2Matrix[[10, 10],[15, 15]]
33-tensor[[[1, 5, 9], [2, 6, 10]], [[3, 7, 11], [4, 8, 12]]]
nn-tensor




Shape과 Axis

  • 1차원일 때에는 column만 존재
  • (4,)에서 4는 column 개수

  • 차원이 늘어날수록 기존 차원 앞으로 쌓임
  • (3,4)에서 3은 row, 4는 column
  • (3,4) 각각 (axis=0, axis=1)

  • (4,3,4) 각각 (axis=0, axis=1, axis=2)
  • size는 데이터(element)의 개수를 의미함!




Numpy의 다양한 기능

1. reshape

2. flatten

3. indexing

  • 앞의 인덱스는 row, 뒤는 column을 의미

4. np.zeros(shape)

  • 0으로 가득한 ndarray 생성
np.zeros((2,5))		# 2 by 5 - zero matrix 생성

5. np.ones(shape)

6. np.identity(n)

  • 단위 행렬(identity matrix) 생성
np.identity(3)
# array([[1,0,0],
#		 [0,1,0],
#        [0,0,1]])

7. mean(), std()

  • 괄호 안에 axis 지정 가능

8. concatenate(ndarray, axis)

9. broadcasting

  • shape이 다른 배열 간 연산 지원
    • matrix - scalar 연산도 가능
profile
Physics Informed Machine Learning 천재만재

0개의 댓글

관련 채용 정보