목록머신러닝 (22)
데이터로그😎
import pandas as pd import numpy as np import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') %matplotlib inline card_df = pd.read_csv('creditcard.csv') card_df 데이터 전처리 & 스케일러 함수 from sklearn.preprocessing import StandardScaler def get_preprocessed_df(df=None): df_copy = df.copy() scaler = StandardScaler() amount_n = scaler.fit_transform(df_copy['Amount'].values.reshap..
선형 - 비선형 회귀의 구분 회귀계수가 선형인지 비선형인지에 따름 선형: 선형회귀 비선형: 딥러닝, 트리... 독립변수의 선형, 비선형 여부와는 무관 규제 적용X 규제 적용O 일반 선형회귀: RSS(잔차) 최소화하는 회귀계수 + 규제 적용X 단순 선형회귀 (하나 독립변수-하나 종속변수: 선형관계) 다항 회귀(여러 독립변수-하나 종속변수: 비선형 관계) 릿지(Ridge): 선형회귀+L2 규제(회귀계수 값 작게 만드는 규제모델) 라쏘(Lasso): 선형회귀+L1 규제(예측 영향력이 작은 피처의 회귀계수를 0으로 만들어 회귀 예측 시 피처가 선택되지 않게 함 엘라스틱 넷(Elastic Net) = 릿지+라쏘. 피처가 많은 데이터 세트에 적용. L1규제로 피처 개수를 줄임과 동시에 L2규제로 계수 값 크기 조정..
회귀란? 변수들 간의 상관관계를 찾는 것 여러개의 독립변수 & 한개의 종속변수 간의 상관관계를 모델링하는 기법 ex) 아파트 가격 = W1*방개수 + W2*방크기 + W3*학군...(W = 회귀계수/regression coefficient) 독립변수(feature) = 방개수, 방크기, 학군 종속변수 = 아파트 가격 W = 회귀계수 주어진 피처와 결정 값(종속변수) 를 기반으로 학습을 통해 최적의 회귀 계수를 찾아내는 것. 회귀는 언제 사용하는가? 예측하려는 값이 연속일 때 사용 예측 결과가 숫자일 때 사용 근속연수에 따른 임금. 키에 따른 몸무게 사용 기간에 따른 스마트폰 가격 회귀의 종류 독립변수 개수 회귀 계수의 결합 1개 (단일 회귀) 선형 (선형회귀) 여러 개 (다중 회귀) 비선형 (비선형 회귀..
⭐⭐⭐⭐더 공부해서 수정 부스팅(Boosting) 여러 분류기가 순차적으로 학습 앞서 학습한 분류기가 예측이 틀린 데이터가 있다면, 그 데이터에 대해 올바르게 예측할 수 있도록 다음 분류기에 가중치를 부여하며 학습 계속해서 분류기에 가중치를 부스팅하면서 학습 진행 여러개의 약한 학습기(weak learner)를 순차적으로 학습-예측하면서 잘못 예측한 데이터에 가중치를 부여하며 오류를 개선해나가면서 학습하는 방법 가중치 업데이트 시 경사 하강법(Gradient Descent) 사용 최종적으로 결과들을 결합하여 예측 GBM(Gradient Boost), XGBoost(eXtra Gradient Boost), Light GBM(Light Gradient Boost) 특징 GBM XGBoost LightGBM ..
배깅(Bagging) 모두 같은 알고리즘 여러 dataset (데이터 중첩 허용) ex) 랜덤 포레스트 파라미터 n_estimators 생성할 트리의 개수 이 값이 높을수록 모델의 성능이 좋아질 수 있지만, 시간과 메모리 사용량이 증가할 수 있음. max_depth 트리의 최대 깊이 이 값을 높이면 복잡한 모델을 만들 수 있지만, 과적합(overfitting) 문제가 발생할 수 있음. min_samples_split 노드를 분할하기 위한 최소한의 샘플 데이터 수 이 값을 낮추면 노드가 분할되는 빈도가 높아져 모델의 복잡도가 증가할 수 있음 min_samples_leaf 리프 노드가 되기 위한 최소한의 샘플 데이터 수 이 값을 높이면 모델이 학습하는 데 사용되는 데이터 수가 줄어들어 일반화 성능이 향상될 ..
앙상블의 한 종류인 보팅에 대해 글을 쓸 것. 앙상블의 종류에 대해서는 이전에 발행한 글을 참고. 2023.09.04 - [머신러닝/지도 학습_분류] - 4. Ensemble (앙상블) 4. Ensemble (앙상블) 여러개 분류기(Classifier)를 생성하고 그 예측을 결합함으로써 보다 정확한 최종 예측을 도출하는 기법 Ensemble의 목표: 다양한 분류기의 예측결과를 결합함으로써 단일 분류기보다 신뢰성이 높은 fine-1004.tistory.com 보팅(Voting) 서로 다른 알고리즘을 가진 분류기 결합(Linear, KNN,SVM…) 하나의 dataset 하드보팅(다수결), 소프트 보팅(확률의 평균) 하드보팅: 다수결. 다수의 분류기가 결정한 예측값을 최종 보팅 결과값으로 선정 소프트보팅: ..
여러개 분류기(Classifier)를 생성하고 그 예측을 결합함으로써 보다 정확한 최종 예측을 도출하는 기법 Ensemble의 목표: 다양한 분류기의 예측결과를 결합함으로써 단일 분류기보다 신뢰성이 높은 예측값을 얻는 것 앙상블의 종류 앙상블 종류 설명 Voting (보팅) 서로 다른 알고리즘을 가진 분류기 결합(Linear, KNN,SVM…) 하나의 dataset 하드보팅(다수결), 소프트 보팅(확률) Bagging (배깅) 모두 같은 알고리즘 여러 dataset (데이터 중첩 허용) ex) 랜덤 포레스트: 랜덤 포레스트는 여러 개의 결정 트리를 생성하고 이들을 결합하여 예측을 수행하는 앙상블 기법. 각 결정 트리는 부트스트랩 샘플(복원 추출)을 기반으로 학습하고, 무작위로 선택된 특성 집합을 사용하여..
선형회귀 방식을 분류에 적용한 알고리즘 → 분류에 사용됨 Logistic Regression은 선형 회귀와 유사한데, 출력값이 0과 1 사이의 값으로 제한되도록 변형된 모델입니다. 이를 위해 입력 데이터의 **가중합(가중치와 특성값의 곱의 합)**을 시그모이드 함수(sigmoid function)에 적용합니다. 시그모이드 함수는 S자 형태의 곡선으로, 입력값이 큰 음수일 때 0에 가까운 값, 입력값이 큰 양수일 때 1에 가까운 값, 입력값이 0일 때 0.5의 값을 출력합니다. 이렇게 입력 데이터의 가중합을 시그모이드 함수에 적용하면, 모델의 출력값은 0과 1 사이의 값으로 제한됩니다. 이 값은 해당 샘플이 양성 클래스에 속할 확률로 해석할 수 있습니다. 예를 들어, 출력값이 0.7일 경우 해당 샘플이 양..