우와한 개발자

[Python] AI/데이터 분석을 위한 파이썬 라이브러리

by 우와한개발자

1. 수치 계산


라이브러리 용도 설명
NumPy 배열, 행렬 계산 Python에서 고성능 수치 계산을 수행하기 위한 핵심 라이브러리로, 다차원 배열 객체(ndarray)를 제공한다. 벡터 연산, 행렬 연산, 선형대수, 통계 연산 등을 매우 빠르게 수행할 수 있으며 대부분의 데이터 분석 및 AI 라이브러리의 기반이 된다.
SciPy 수학, 과학 계산 확장 NumPy 위에서 동작하는 과학 계산 라이브러리로, 최적화(optimization), 적분, 선형대수, 신호 처리, 통계 계산 등 다양한 수학적 알고리즘을 제공한다. 공학 및 과학 계산에서 많이 사용된다.
Numba Python 코드 속도 최적화 Python 코드를 JIT(Just-In-Time) 컴파일 방식으로 최적화하여 실행 속도를 크게 향상시키는 라이브러리이다. 특히 반복문이나 수치 계산이 많은 코드에서 Python을 C 수준의 속도로 실행할 수 있도록 해준다.

2. 데이터 분석

라이브러리 용도 설명
Pandas 데이터 분석 핵심 Python에서 데이터 분석을 위해 가장 많이 사용되는 라이브러리로, 표 형태의 데이터 구조인 DataFrame을 제공한다. CSV, Excel, SQL 등 다양한 데이터 소스를 읽어 분석할 수 있으며 데이터 정제, 필터링, 집계, 통계 분석 등을 쉽게 수행할 수 있다.
Dask 대용량 데이터 처리 Pandas와 유사한 API를 제공하지만 대용량 데이터를 병렬 처리할 수 있도록 설계된 라이브러리이다. 여러 CPU 코어 또는 여러 서버에서 데이터를 분산 처리할 수 있어 빅데이터 분석에 사용된다.
Statsmodels 통계 분석 통계 분석과 통계 모델링을 위한 라이브러리로, 선형 회귀, 로지스틱 회귀, 시계열 분석, 가설 검정 등 다양한 통계 모델을 제공한다. 데이터 분석과 통계 연구에서 많이 활용된다.

3. 데이터 시각화

라이브러리 용도 설명
Matplotlib 기본 그래프 Python에서 가장 기본적인 데이터 시각화 라이브러리로, 선 그래프, 막대 그래프, 산점도, 히스토그램 등 다양한 형태의 그래프를 생성할 수 있다. 대부분의 다른 시각화 라이브러리의 기반이 된다.
Seaborn 통계 시각화 Matplotlib 기반의 통계 시각화 라이브러리로, 데이터 분포나 관계를 시각적으로 쉽게 표현할 수 있다. 히트맵, 박스플롯, 바이올린 플롯 등 통계 분석에 유용한 그래프를 간단한 코드로 생성할 수 있다.
Plotly 인터랙티브 그래프 인터랙티브(상호작용 가능한) 그래프를 생성할 수 있는 시각화 라이브러리로, 웹 기반 대시보드나 데이터 분석 결과를 시각적으로 표현할 때 많이 사용된다. 줌, 마우스 오버 정보 표시 등 다양한 기능을 제공한다.

4. 머신러닝

머신러닝 (Machine Learning) : 컴퓨터가 데이터를 통해 규칙이나 패턴을 학습하여 스스로 예측하거나 판단하도록 만드는 기술

라이브러리 용도 설명
Scikit-learn 기본 ML 알고리즘 Python에서 가장 널리 사용되는 머신러닝 라이브러리로, 분류(Classification), 회귀(Regression), 군집화(Clustering), 차원 축소(Dimensionality Reduction) 등 다양한 머신러닝 알고리즘을 제공한다. 데이터 전처리와 모델 평가 기능도 포함되어 있다.
XGBoost 성능 좋은 부스팅 모델 Gradient Boosting 기반의 고성능 머신러닝 알고리즘 라이브러리로, Kaggle 등 데이터 분석 대회에서 매우 많이 사용된다. 높은 예측 성능과 빠른 학습 속도를 제공한다.
LightGBM 빠른 부스팅 모델 Microsoft에서 개발한 Gradient Boosting 기반 머신러닝 라이브러리로, 대용량 데이터에서도 빠르게 학습할 수 있도록 설계되었다. 메모리 사용량이 적고 학습 속도가 빠른 것이 특징이다.
CatBoost 범주형 데이터 강함 Yandex에서 개발한 Gradient Boosting 알고리즘 기반 머신러닝 라이브러리로, 범주형 데이터를 별도의 전처리 없이 효과적으로 처리할 수 있는 것이 특징이다.

5. 딥러닝

딥러닝 (Deep Learning) : 인공신경망(Neural Network)을 여러 층으로 쌓아 데이터를 학습하는 머신러닝 방법

라이브러리 용도 설명
TensorFlow Google 딥러닝 프레임워크 Google에서 개발한 딥러닝 프레임워크로, 신경망 모델을 정의하고 학습시키는 기능을 제공한다. 이미지 인식, 자연어 처리, 음성 인식 등 다양한 AI 분야에서 활용되며 GPU 및 분산 학습을 지원한다.
Keras TensorFlow 기반 고수준 API TensorFlow 위에서 동작하는 고수준 딥러닝 API로, 복잡한 딥러닝 모델을 간단한 코드로 구현할 수 있도록 도와준다. 현재는 TensorFlow의 공식 API로 통합되어 사용된다.
PyTorch Meta 딥러닝 프레임워크 Meta(구 Facebook)에서 개발한 딥러닝 프레임워크로, 동적 계산 그래프(dynamic computation graph)를 지원하여 연구 및 실험 환경에서 많이 사용된다. 직관적인 코드 구조와 높은 유연성이 특징이다.

6. LLM / NLP

LLM (Large Language Model) 대규모 언어 모델 : 엄청난 양의 텍스트 데이터를 학습한 거대한 AI 언어 모델

NLP (Natural Language Processing) 자연어처리 : 컴퓨터가 인간의 언어(텍스트, 문장)를 이해하고 처리하도록 만드는 기술

라이브러리 용도 설명
HuggingFace Transformers GPT, BERT 등 모델 사용 GPT, BERT, T5 등 다양한 사전 학습된 자연어 처리 모델을 쉽게 사용할 수 있도록 제공하는 라이브러리이다. 텍스트 분류, 번역, 요약, 질의응답 등 다양한 NLP 작업을 수행할 수 있다.
HuggingFace Datasets NLP 데이터셋 머신러닝 및 자연어 처리에서 사용되는 대규모 데이터셋을 쉽게 다운로드하고 관리할 수 있도록 제공하는 라이브러리이다. 다양한 공개 데이터셋을 빠르게 로드하여 실험에 활용할 수 있다.

7. 컴퓨터 비전

컴퓨터 비전(Computer Vision) : 컴퓨터가 이미지나 영상을 보고 이해하도록 만드는 기술

라이브러리 용도 설명
OpenCV 이미지 처리 이미지와 영상 처리를 위한 대표적인 컴퓨터 비전 라이브러리로, 이미지 필터링, 객체 인식, 얼굴 인식, 영상 분석 등 다양한 기능을 제공한다.
TorchVision PyTorch 이미지 모델 PyTorch 기반의 컴퓨터 비전 라이브러리로, 이미지 처리 기능과 함께 ResNet, VGG 등 다양한 사전 학습된 이미지 모델을 제공한다.

 

주요 라이브러리
용도 라이브러리
데이터처리 NumPy, Pandas
시각화 Matplotlib, Seaborn
머신러닝 Scikit-learn, XGBoost
딥러닝 TensorFlow, PyTorch
LLM/NLP HuggingFace
컴퓨터 비전 OpenCV

블로그의 정보

우와한개발자 님의 블로그

우와한개발자

활동하기