분류 전체보기229 [scikit-plot] plot_confusion_matrix skplt.metrics.plot_confusion_matrix는 scikit-learn(사이킷런)의 확장 패키지인 scikit-plot(skplt)을 사용하여 분류 모델의 혼동 행렬(confusion matrix)을 시각화하는 함수입니다. 혼동 행렬은 모델의 성능을 평가하는 데 사용되며, 실제 클래스와 모델이 예측한 클래스 간의 관계를 보여줍니다. 이 함수의 시그니처는 다음과 같습니다 skplt.metrics.plot_confusion_matrix(y_true, y_pred, labels=None, title='', normalize=False, figsize=(8, 6), cmap=None) y_true: 실제 타겟 클래스(레이블)의 배열 또는 리스트. y_pred: 모델의 예측 클래스(레이블)의 배.. 2023. 9. 7. 모델별 적합한 상황과 장단점 각 모델의 적합한 상황과 장단점에 대해 설명해드리겠습니다. 선형 모델 (Linear Models) 적합한 상황 데이터가 선형적인 관계를 가질 때. 고차원 데이터셋에서 잘 작동함. 장점 계산 효율적이고 간단한 모델. 해석이 쉽고 설명력이 좋음. 단점 비선형 데이터에 대해 잘 작동하지 않음. 고차원 데이터에서 과적합 가능성이 있음. 로지스틱 회귀 (Logistic Regression) 적합한 상황 이진 분류 문제에서 효과적. 확률 기반 예측이 필요한 경우. 장점 간단하고 해석이 쉽다. 과적합을 제어할 수 있는 정규화 파라미터 사용 가능. 단점 비선형 관계를 모델링하기 어렵다. 고차원 피처 공간에서 성능이 낮을 수 있다. 의사결정트리 (Decision Trees) 적합한 상황 비선형 관계를 모델링할 때. 데이.. 2023. 9. 4. D드라이브 Conda환경 생성 conda config --append "conda config --append" 명령어는 Conda 패키지 관리자를 사용하여 Conda 환경 및 구성 파일에 새로운 설정을 추가하는 데 사용되는 명령어입니다. 이 명령어를 사용하면 기존의 설정을 유지하면서 새로운 설정을 추가할 수 있습니다. 여기에 명령어의 각 부분에 대한 설명이 있습니다: "conda config": Conda 패키지 관리자의 구성(config)을 조작하려는 명령어입니다. "--append": 이 플래그는 기존 설정을 변경하지 않고 새로운 설정을 추가하도록 Conda에 지시하는 부분입니다. 다시 말해, 새 설정을 추가하면서 기존 설정을 변경하지 않습니다. 예를 들어, Conda 환경을 만들거나 관리하는 동안 어떤 설정을 추가하려고 할 때.. 2023. 9. 3. 불균형 데이터 처리 - 샘플링 불균형 데이터를 다루는 것은 기계 학습 모델을 훈련시킬 때 중요한 과제 중 하나입니다. scikit-learn의 imbalanced-learn 라이브러리는 불균형 데이터셋에 대한 다양한 샘플링, 가중치 조정 및 리샘플링 기술을 제공하여 이러한 문제를 해결하는 데 도움을 줍니다. 아래에서는 imbalanced-learn 모듈을 사용하여 불균형 데이터를 다루는 주요 기술과 함수들에 대해 간단히 설명하겠습니다. 오버샘플링 (Over-sampling) 오버샘플링은 소수 클래스의 샘플 수를 증가시켜 데이터셋의 클래스 균형을 조정하는 기술입니다. RandomOverSampler, SMOTE, ADASYN 등 다양한 오버샘플링 방법을 imbalanced-learn에서 제공합니다. RandomOverSampler Ra.. 2023. 9. 3. 시계열 데이터 분석 - ARIMA 정상성(Stationarity) 정상성(Stationarity)은 시계열 데이터에서 중요한 개념으로, 시간에 따라 평균과 분산이 일정하며 시계열 데이터의 자기상관이 시간에 독립적으로 유지되는 특성을 의미합니다. 정상성을 가진 시계열 데이터는 이전 시간과 미래 시간 사이의 관계가 변하지 않기 때문에 통계 분석이나 예측 모델링이 더 간단하고 신뢰성 있게 수행될 수 있습니다. 정상성을 만족하는 시계열 데이터는 다음의 세 가지 조건을 충족해야 합니다: 시간에 대한 평균이 일정: 시계열 데이터의 평균값은 시간에 따라 크게 변하지 않아야 합니다. 추세나 계절성과 같은 패턴이 없어야 합니다. 시간에 대한 분산이 일정: 시계열 데이터의 분산은 시간에 따라 일정해야 합니다. 데이터의 변동성이 일정하게 유지되어야 합니다... 2023. 9. 2. [sklearn] KMeans KMeans는 데이터를 비지도 학습 방법으로 클러스터링하기 위해 사용되는 머신러닝 알고리즘 중 하나입니다. 클러스터링은 비슷한 특성을 가진 데이터 포인트들을 그룹화하는 작업을 의미합니다. 각 그룹은 "클러스터"라고 불립니다. KMeans 알고리즘은 데이터를 K개의 클러스터로 분류하며, 각 클러스터는 데이터 포인트들의 유사도를 기반으로 형성됩니다. KMeans 알고리즘의 작동 방식 선택한 클러스터 개수 K를 설정합니다: KMeans 알고리즘을 사용하려면 먼저 클러스터의 개수를 결정해야 합니다. 이는 사용자가 사전에 결정해야 하는 하이퍼파라미터입니다. 중심 초기화: 알고리즘은 초기에 각 클러스터의 중심을 임의의 데이터 포인트로 설정합니다. 할당 단계 (Assignement Step): 각 데이터 포인트는 가.. 2023. 8. 31. [sklearn] KFold와 cross_val_score sklearn.model_selection 모듈은 Scikit-learn 라이브러리에서 제공하는 기능 중 하나로, 모델의 성능을 평가하거나 모델을 훈련 및 테스트하기 위한 데이터를 분할하는 데 사용됩니다. 여기서는 KFold와 cross_val_score에 대해 설명하겠습니다. KFold (K-Fold Cross Validation) K-Fold 교차 검증은 모델의 성능을 평가하거나 파라미터를 튜닝할 때 사용되는 일반적인 기법 중 하나입니다. 데이터를 K개의 서브셋으로 나누고, 각각의 서브셋을 차례로 검증 데이터로 사용하고 나머지를 훈련 데이터로 사용하여 모델을 K번 훈련하고 평가하는 과정을 반복합니다. 이렇게 하면 모든 데이터가 검증에 한 번씩 사용되므로 모델의 성능을 더 정확하게 평가할 수 있습니다... 2023. 8. 31. 앙상블(Ensemble) 앙상블(Ensemble)은 머신러닝에서 여러 개의 모델을 조합하여 하나의 예측 모델을 생성하는 기법을 말합니다. 이는 단일 모델보다 더 나은 예측 성능을 달성하기 위해 사용됩니다. 앙상블은 다양한 모델의 다양한 예측을 결합하여 모델의 강점을 취하고 약점을 보완하여 더 정확하고 안정적인 예측을 할 수 있도록 도와줍니다. 앙상블은 크게 두 가지 유형으로 나뉩니다: 동일 모델의 다양한 버전을 결합하는 방법과 다양한 유형의 모델을 결합하는 방법입니다. 동일 모델의 다양한 버전 결합 이 방법은 하나의 머신러닝 알고리즘을 사용하여 다양한 버전의 모델을 생성하고, 이를 결합하여 예측을 수행하는 방식입니다. 이러한 방법은 모델을 다양하게 조정함으로써 과대적합을 줄이고 안정적인 예측을 도출할 수 있습니다. 배깅(Bagg.. 2023. 8. 30. [sklearn] 결정트리 엔트로피 클라우드 섀넌(Cloud Shannon)은 정보 이론의 선구자 중 하나로, 1948년에 "통신의 수학적 이론"이라는 논문에서 정보 이론의 기초를 제시했습니다. 이 논문에서 섀넌은 정보를 어떻게 정량화하고, 전달되는 정보의 양을 측정할 수 있는지에 대한 개념을 소개했습니다. 이러한 이론의 중요한 개념 중 하나가 "엔트로피"입니다. 엔트로피는 정보의 불확실성 또는 예측 불가능성을 나타내는 척도로 사용됩니다. 더 정확하게 말하면, 어떤 시스템이나 확률 분포에서 가능한 결과의 다양성을 측정하는 개념입니다. 엔트로피가 높을수록 가능한 결과들이 더 다양하며, 정보의 불확실성이 큽니다. 반대로, 엔트로피가 낮을수록 가능한 결과들이 제한적이며, 정보의 불확실성이 낮습니다. 정보 이론에서 엔트로피는 다음과 같은.. 2023. 8. 30. 이전 1 ··· 5 6 7 8 9 10 11 ··· 26 다음