본 블로그 글은 <Do it! 정직하게 코딩하며 배우는 딥러닝 입문>을 기반으로 요점 정리하는 형식으로 만들었습니다.
코랩(Colab)은 구글이 제공하는 클라우드 기반의 무료 Jupyter 노트북 환경입니다. Jupyter 노트북은 데이터 분석, 머신 러닝, 딥 러닝 등의 작업을 할 때 매우 유용한 인터랙티브한 환경을 제공합니다. 코랩은 이러한 환경을 클라우드 상에서 무료로 사용할 수 있도록 제공하며, 다음과 같은 주요 특징이 있습니다
NumPy(넘파이)는 파이썬에서 사용되는 수학적인 연산을 위한 핵심 라이브러리입니다. "Numerical Python"의 약자로, 다차원 배열과 행렬 연산을 지원하며, 데이터 분석, 과학적 연구, 머신 러닝 등 다양한 분야에서 활용됩니다. NumPy는 파이썬의 기본 데이터 구조인 리스트보다 효율적인 연산과 메모리 사용을 제공하며, 수치 연산에 특화된 함수와 도구를 제공합니다.
다차원 배열 (ndarray): NumPy의 핵심 데이터 구조는 다차원 배열입니다. 배열은 동일한 데이터 타입을 가진 원소들의 집합으로, 행렬과 유사한 구조를 가집니다. NumPy 배열은 리스트와 비교하여 훨씬 빠른 연산과 메모리 사용을 제공합니다.
브로드캐스팅 (Broadcasting): 다른 차원의 배열들 간에도 연산이 가능한 기능을 제공합니다. 예를 들어, 크기가 다른 두 배열 간의 연산이 필요한 경우, NumPy는 자동으로 크기를 맞춰 연산을 수행합니다.
유용한 수학 함수: NumPy는 다양한 수학 함수를 제공하여 고속 연산이 가능하며, 선형 대수, 통계, 특이값 분해, 푸리에 변환 등의 연산을 지원합니다.
난수 생성: 무작위 수를 생성하는 다양한 함수를 제공하여 시뮬레이션 등에 활용할 수 있습니다.
인덱싱과 슬라이싱: 배열의 특정 원소에 접근하거나 범위를 추출하는데 사용되는 인덱싱과 슬라이싱 기능을 지원합니다.
선형 대수 연산: 행렬의 곱셈, 역행렬 계산, 고유값 분해 등의 선형 대수 연산을 지원합니다.
파일 입출력: NumPy는 배열 데이터를 파일에 저장하고 불러오는 기능을 제공하여 데이터의 지속적인 관리가 가능합니다.
빠른 연산: NumPy는 내부적으로 C와 C++로 구현되어 있어서 벡터화 연산과 브로드캐스팅을 통해 빠른 연산을 지원합니다.


pip install numpy
