Machine Learning 28

[4장-1] 분류(classfication)와 결정트리(decision tree)

1. 분류란? - 학습 데이터로 주어진 데이터의 피처와 레이블값을 머신러닝 알고리즘으로 학습해 모델을 생성하고, 생성된 모델에 새로운 데이터 값이 주어졌을 때 미지의 레이블 값을 예측하는 것 2. 결정트리와 앙상블 1) 결정 트리 - 매우 쉽고 유연하고 적용될 수 있는 알고리즘, 데이터의 스케일링이나 정규화 등의 사전 가공의 영향이 매우 적음 - 데이터에 있는 규칙을 학습을 통해 자동으로 찾아내는 트리 기반의 분류규칙을 만든다 - 장점: 쉽다, 직관적이다, 사전 가공 영향도가 크지 않다. - 단점: 과적합으로 알고리즘 성능이 떨어진다. 이를 극복하기 위해 트리의 크기를 사전에 제한하는 튜닝이 필요하다 2) 앙상블 - 매우 많은 여러개의 약한 학습기를 결합해 확률적 보완과 오류가 발생한 부분에 대한 가중치..

[1장] 머신러닝 개념 및 넘파이_파이썬 머신러닝 완벽가이드

1.머신러닝이란? - 데이터를 기반으로 패턴을 학습하고 결과를 추론하는 알고리즘 기법 - 특징: 데이터 마이닝, 영상 인식, 음성 인식, 자연어 처리에 적용 2. 머신러닝의 필요성 - 복잡한 문제를 데이터를 기반으로 숨겨진 패턴을 인지하여 해결함 - 데이터를 기반으로 통계적 신뢰도를 강화하고 예측 오류를 최소화하기 위한 다양한 수학적 기법을 적용해 데이터 내의 패턴을 스스로 인지하고 신뢰도 있는 예측 결과를 도출함 3. 머신러닝의 분류 - 지도학습: 명확한 결정값이 주어진 데이터를 학습 ex. 분류, 회귀, 추천시스템, 시각/음성 인지, 텍스트 분석, NLP - 비지도학습: 결정값이 주어지지 않는 데이터를 학습 ex. 군집화(클러스터링), 차원 축소, 강화학습 4. 머신러닝의 단점 - 데이터에 너무 의존..

[3장-3] 피마 인디언 당뇨병 예측

1. 캐글에서 데이터 다운로드 Pima Indians Diabetes Database | Kaggle Pima Indians Diabetes Database Predict the onset of diabetes based on diagnostic measures www.kaggle.com 2. 주피터 노트북에서 실행 import numpy as np import pandas as pd import matplotlib.pyplot as plt %matplotlib inline from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score, precision_score, recall_score, ro..

[3장-2] 정밀도와 재현율의 맹점

[정밀도] =TP/(TP+FP) - 확실한 기준이 되는 경우에만 사용 ex. 100명 중에 1명만 암환자가 맞다 [재현율=민감도] = TP/(TP+FN) - 모든 조건을 해당된다고 예측하며 사용 ex. 100명 중에 100명이 모두 암환자라고 생각한다 ROC 곡선 1) TPR: true positive rate : 재현율=민감도 TPR= TP / (FN+TP) 2) FPR: negative 잘못 예측한 비율(음성인데 양성으로 잘못 예측) FPR = FP / (FP+TN) ------------------------------------------------------------------------------------------ from sklearn.metrics import roc_curve # 레..

[3장-1] 분류 성능 평가 지표

성능 평가 지표(Evaluation Metric)는 모델이 회귀인지 분류인지에 따라 여러 종류로 나뉨 1) 회귀의 경우 대부분 실제값과 예측값의 오차 평균값에 기반 2) 분류의 성능 평가 지표 분류 성능 평가지표: classification - 정확도 - 오차행렬 - 정밀도 - 재현율 - F1 스코어 - ROC AUC 1) 정확도 정확도 : 실제 데이터에서 예측 데이터가 얼마나 같은지 판단하는 지표 = 예측 결과가 동일한 데이터 건수 / 전체 예측 데이터 건수 정확도는 직관적으로 모델 예측 성능을 나타내는 평가 지표이지만 이진 분류의 경우 정확도만으로 성능 평가하면 안됨 (ML 모델의 성능을 왜곡할 수 있기 때문) import sklearn print(sklearn.__version__) #버전 확인 1..

[2장-3] 타이타닉 생존자 예측 ML 구현

https://colab.research.google.com/drive/1pho8HoLe11nTAIvwRglZY83W2eTKs2IO?usp=sharing Titanic_240206 Colaboratory notebook colab.research.google.com 1) 사전작업 * 데이터 전처리 - NULL값, 불필요한 속성 제거, 인코딩 수행 *모델학습 및 검증,예측,평가 - 결정트리, 랜덤포레스트, 로지스틱회귀, K폴드 교차 검증, cross_val_score(), gridsearchCV() 2) 파일 불러오기 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns %matplotlib i..

[2장-2] 붓꽃 품종 예측_파이썬 머신러닝 완벽가이드

# 사이킷런을 이용하여 붓꽃(Iris) 데이터 품종 예측하기 1. 사이킷런 버전 확인 import sklearn print(sklearn.__version__) 2. 붓꽃 예측을 위한 사이킷런 필요 모듈 로딩(필수 라이브러리 불러오기) from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier #결정트리 from sklearn.model_selection import train_test_split #학습과 분류 데이터 3. 학습 데이터와 테스트 데이터 세트로 분리 # X_train과 y_train은 모델을 학습시킬 때 사용되고(X_train과 y_train은 서로 겹치는 데이터가 없어야 함) # X_test는..

[2장-1] 싸이킷런_파이썬 머신러닝 완벽가이드

1. 싸이킷런(scikit-learn) - 머신러닝을 위한 다양한 알고리즘과 개발을 위한 편리한 프레임워크, API 제공 - numpy와 scipy 기반에서 구축된 라이브러리 2. 용어 정리 - 피처(feature) : 일반 속성 - 레이블 : 타겟 값이 분류일 경우 → 데이터 학습을 위해 주어지는 정답 데이터 - 클래스 : 타겟 값이 분류일 경우 → 데이터 학습을 위해 주어지는 정답 데이터 - 타켓(값) → 학습할 값 - 결정(값) 3. 분류 예측 프로세스 1) 데이터 세트 분리(학습 데이터 / 테스트 데이터) 2) 모델학습 3) 예측수행 4) 평가(결과 비교 및 정확도 평가) 4. 사이킷런 기반 프레임워크 학습 : fit() 예측 : predict() 1) 내장 예제 데이터셋 - datasets.lo..

728x90