본문 바로가기

분류 전체보기25

[scikit-learn] SelectKBest scoring 함수, f_regression vs mutual_info_regression 목차1. 서론2. 주요 scoring 함수 소개2-1. f_regression2-2. mutual_info_regression3. 실전 예제 비교4. 결론1. 서론특성 선택(Feature Selection)은 머신러닝 성능을 높이는 핵심 과정 중 하나입니다. 특히 SelectKBest는 특정 기준에 따라 가장 중요한 피처를 골라주는 유용한 도구입니다. 하지만 어떤 scoring 함수를 사용하느냐에 따라 결과가 크게 달라질 수 있습니다.이번 글에서는 회귀(Regression) 문제를 중심으로, f_regression과 mutual_info_regression 두 가지 스코어링 함수를 비교하고 각각의 특징과 활용 방법을 정리해보겠습니다.2. 주요 scoring 함수 소개2-1. f_regressionf_re.. 2025. 4. 28.
[scikit-learn] 특성 선택 기법 비교: VarianceThreshold, SelectKBest, RFE, SelectFromModel 목차1. 서론2. 주요 기법 소개2-1. VarianceThreshold2-2. SelectKBest2-3. RFE (Recursive Feature Elimination)2-4. SelectFromModel3. 결론1. 서론머신러닝 모델의 성능을 높이고, 해석 가능성을 높이며, 과적합을 방지하기 위해 꼭 필요한 과정이 바로 특성 선택(Feature Selection)입니다. 특성 선택은 모델에 불필요한 피처를 제거함으로써 학습 속도를 높이고, 모델을 단순화하며 예측 성능 향상에도 기여할 수 있습니다.이번 글에서는 scikit-learn에서 제공하는 대표적인 특성 선택 기법 4가지를 비교합니다. VarianceThreshold, SelectKBest, RFE, SelectFromModel 각각의 동작 원.. 2025. 4. 24.
[scikit-learn] 회귀(Regression) 모델 실전 비교 목차1. 서론2. 주요 모델 소개2-1. Linear Regression2-2. Ridge Regression2-3. Lasso Regression2-4. SVR (Support Vector Regression)2-5. Random Forest Regressor3. 결론1. 서론회귀(Regression)는 머신러닝에서 연속적인 수치를 예측하는 데 사용되는 대표적인 문제 유형입니다. 예를 들어 집값, 매출, 기온, 수요량 등 다양한 비즈니스 문제에 적용되며, 분류보다 더 넓은 응용 분야를 가집니다. 이번 글에서는 scikit-learn을 이용해 다양한 회귀 모델을 실전 예제와 함께 비교해보고, 각 모델의 특징과 장단점을 파악해보겠습니다.다룰 모델은 Linear Regression, Ridge, Lasso,.. 2025. 4. 23.
[scikit-learn] 분류(Classification) 모델 실전 비교 목차1. 서론2. 주요 모델 소개2-1. Logistic Regression2-2. K-Nearest Neighbors2-3. SVC (Support Vector Classifier)2-4. Decision Tree2-5. Random Forest3. 결론1. 서론머신러닝에서 가장 기본적이면서도 중요한 문제 유형 중 하나는 분류(Classification)입니다. 타겟 변수가 범주형일 때, 우리는 이 데이터를 통해 새 샘플이 어떤 클래스에 속할지 예측하고자 합니다. 이 글에서는 대표적인 분류 알고리즘 5가지를 소개하고, 동일한 데이터셋에서 비교 분석함으로써 각 모델의 특성과 성능 차이를 실감할 수 있도록 구성했습니다.소개할 분류 모델은 Logistic Regression, K-Nearest Neighbo.. 2025. 4. 22.
[scikit-learn] 파이프라인과 ColumnTransformer로 전처리 자동화하기 목차1. 서론2. 주요 함수 소개2-1. Pipeline2-2. ColumnTransformer2-3. 파이프라인과 모델 통합2-4. GridSearchCV 적용3. 결론1. 서론머신러닝 실무에서는 전처리, 모델링, 하이퍼파라미터 튜닝 등의 과정이 여러 단계로 나뉘고 반복적으로 실행됩니다. 이 과정을 코드로 일일이 반복 작성하면 실수도 많아지고 유지보수도 어려워집니다. 이를 해결해주는 가장 강력한 도구가 바로 Pipeline과 ColumnTransformer입니다.2. 주요 함수 소개2-1. PipelinePipeline은 여러 전처리 단계를 순차적으로 연결해주는 도구로, 코드의 재사용성과 일관성을 높여줍니다. 예를 들어, 데이터 스케일링 → 특성 선택 → 모델 학습 과정을 하나로 묶어 실행할 수 있습니.. 2025. 4. 21.
[Pandas] 결측치 탐색과 처리 함수 (isna, fillna, dropna 등) 목차1. 개요2. 내용2-1. 결측치란?2-2. isna()2-3. notna()2-4. 결측치 탐색 활용 예제2-5. fillna()2-6. dropna()2-7. interpolate()3. 결론 1. 개요데이터 분석에서 결측치는 피할 수 없는 문제입니다. 센서 오작동, 사용자의 미입력, 크롤링 실패 등 다양한 이유로 누락된 값이 생기며, 이를 제대로 처리하지 않으면 분석 결과가 왜곡될 수 있습니다. Pandas는 결측치를 탐지하고, 채우거나 제거하는 강력한 함수들을 제공합니다.이번 글에서는 isna(), notna(), fillna(), dropna(), interpolate() 함수들을 중심으로 결측치 처리의 모든 것을 실습과 함께 정리해봅니다.2. 내용2-1. 결측치란?Pandas에서 결측치는 .. 2025. 4. 20.
[NumPy] 값 비교 및 검증 함수 총정리 (isnan, isfinite, allclose, array_equal 등) 목차1. 개요2. 내용2-1. np.isnan()2-2. np.isfinite()2-3. np.isinf()2-4. np.allclose()2-5. np.array_equal()3. 결론1. 개요데이터 분석과 수치 계산을 수행하다 보면, 종종 배열 내의 값이 NaN(결측값)인지, 유한한 값인지, 무한대인지 등을 검증해야 할 상황이 많습니다. 또한, 두 배열이 거의 같은 값인지, 완전히 같은지를 비교할 수 있는 함수들도 자주 사용됩니다. NumPy에서는 이러한 검증과 비교를 위한 강력한 도구들을 제공합니다.이번 글에서는 np.isnan(), np.isfinite(), np.isinf(), np.allclose(), np.array_equal() 등의 함수를 중심으로 값 비교 및 검증 함수들을 실습과 함께 .. 2025. 4. 19.
[scikit-learn] 모델 성능을 높이는 전처리 핵심 - 특성 선택(Feature Selection) 목차1. 서론2. 주요 함수 소개2-1. VarianceThreshold2-2. SelectKBest2-3. mutual_info_classif2-4. RFE (Recursive Feature Elimination)2-5. SelectFromModel3. 결론1. 서론머신러닝 모델의 성능은 좋은 알고리즘뿐 아니라, 올바른 입력 특성(feature)을 선택하는 데 달려 있습니다. 너무 많은 피처는 과적합을 유발하고, 불필요한 피처는 노이즈로 작용하여 성능을 저하시킵니다. 이번 글에서는 scikit-learn에서 제공하는 특성 선택(Feature Selection) 도구들을 정리하고, 실전 예제와 함께 사용하는 법을 소개합니다.특성 선택은 모델 학습 전에 사전 처리로 수행하거나, 모델 기반 방식으로 학습 결.. 2025. 4. 18.
[Pandas] 열 추가·삭제·변경 함수 정리 (assign, drop, rename,insert) 목차1. 개요2. 내용2-1. 열 추가: df['열'] = 값2-2. 열 추가: assign()2-3. 열 추가: insert()2-4. 열 삭제: drop()2-5. 열 이름 변경: rename()3. 결론1. 개요데이터 분석 과정에서는 열을 새로 만들거나 제거하거나 이름을 바꾸는 일이 자주 발생합니다. 이번 글에서는 assign, drop, rename, insert 등의 함수와 함께 df['열'] = 값 방식도 함께 정리합니다.2. 내용2-1. 열 추가: df['열'] = 값가장 기본적인 방식은 df['새로운열'] = 값으로 직접 열을 생성하는 방법입니다.import pandas as pddf = pd.DataFrame({ 'Name': ['Alice', 'Bob', 'Charlie'], .. 2025. 4. 17.
[Pandas] 데이터 필터링과 조건 선택 함수 정리 (boolean indexing, query, isin 등) 목차1. 개요2. 내용2-1. Boolean 인덱싱2-2. query()2-3. isin()2-4. between()2-5. duplicated()3. 결론1. 개요데이터 분석에서 가장 중요한 작업 중 하나는 조건에 맞는 데이터를 선별해내는 것입니다. Pandas는 다양한 방식으로 조건 필터링을 지원하며, 이번 글에서는 Boolean 인덱싱, query(), isin(), between(), duplicated() 등을 정리해봅니다.2. 내용2-1. Boolean 인덱싱Boolean 인덱싱은 조건식을 만족하는 행만 선택하는 가장 기본적인 방법입니다. df[조건] 형식으로 작성합니다.import pandas as pddf = pd.DataFrame({ 'Name': ['Alice', 'Bob', 'C.. 2025. 4. 16.