본문 바로가기

분류 전체보기227

[머신러닝] [문제] 비행기 연착 추측 분류 미국 교통부 교통 통계국에서 제공된 2011년 10월 한달 간의 비행기 출발/ 도착 정보를 이용하여 비행기 연착 추측 모델 구축하기데이터 준비기본적인 패키지 로딩import numpy as npimport pandas as pdfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.linear_model import LogisticRegression 데이터 1 로딩df_airport = pd.read_csv('./dataset/Airport Codes Dataset.csv')print(df_airport.shape)display(df_airport.head())(365, 4) 데이터 2 로딩df_flight = pd.read_csv('./data.. 2023. 11. 23.
[머신러닝] 분류분석 : 앙상블 러닝 - Voting, Boosting 실습문제 [실습] 보스톤 집값 Voting - Regressionfrom sklearn.linear_model import Lasso, Ridge, LinearRegressionfrom sklearn.ensemble import VotingRegressorfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import mean_squared_error, r2_scoreimport numpy as npimport pandas as pd 데이터 로드 및 분할boston.fillna(method='ffill') 을 사용하여 근처에 있는 값으로 결측치를 채워 분석하였다.boston = pd.read_csv('./dataset/HousingDa.. 2023. 11. 23.
[머신러닝] 분류분석 : 의사 결정 트리, 앙상블 러닝 - Bagging 의사결정 트리 Decision Tree의사 결정 규칙과 그 결과들을 트리구조로 도식화한 의사결정 지원 도구의 일종이다.직관적으로 이해하기 쉬운 알고리즘이다.루트노드 : 최상위 노드 / 규칙 노드: 규칙 조건  / 리프 노드 : 결정된 클래스 값새로운 규칙 조건마다 서브 트리가 생성된다.하지만 많은 규칙은 분류를 결정하는 방식이 더욱 복잡해진다는 의미인 것으로 트리의 깊이가 너무 깊어지면 예측성능이 저하될 수 있다 (과적합의 위험이 있기 때문)때문에 가능한 적은 노드로 높은 예측 정확도를 가질 수 있도록 결정노드의 규칙을 정해야한다. 의사결정 트리 알고리즘 구조- 정보함수: 정보 가치를 반환하는데 발생할 확률이 적은 사건일수록 정보의 가치가 크다.l(x) = log21/p(x)- 정보획득량: 어떤 사건이 .. 2023. 11. 22.
[머신러닝] 분류분석 : K-NN K-Nearest Neighbors(K-최근접 이웃)새로운 데이터를 입력받으면 기존 클러스터에서 모든 데이터와 유클리드 기반 거리를 측정 후 가장 많은 속성을 가진 클러스터에 할당하는 분류 알고리즘이다. 새 데이터가 어떤 카테고리에 속하는지 알기 위해서는 가까이에 있는 k개의 정답데이터를  보고 추론한다. 유클리드거리 2차원 평면에 서로 다른 두 점 A(a1,a2) 와 B(b1,b2) 가 있을때, 둘 사이의 거리를 구하는 방법A와 B의 대각선 거리를 구하는 식은 √(a1-b1)^2 + (a2-b2)^2 으로 표현된다. 여기서 k는 홀수로 잡아야 동등한 값이 나오지 않게 하기 위해 홀수로 지정하는 것이 좋다. [실습] 붓꽃 품종 분류패키지 로딩K-NN은 neighbors 의 KNeighborsClassif.. 2023. 11. 22.
[머신러닝] 분류분석 : 나이브 베이즈 분류 확률- 독립사건: 사건 A가 발생하고 그 다음 사건 B가 발생할 때 선행 사건의 결과가 후행 사건의 결과에 영향을 미치지 않는 경우- 종속사건: 선행 실험의 결과가 후행 실험의 결과에 영향을 미치는 경우- 조건부확률 : 사건 A가 발생한 상태에서 사건 B가 발생활 확률  = P(B|A)         - P(B|A) = P(A∩B) / P(A) 이다. (단, 독립사건의 경우 P(B|A) = p(B) 이다.)- 베이즈 이론: 추론대상의 사전확률과 추가적인 정보를 기반으로 해당 대상의 사후 확률을 추론하는 통계적 방법(경험을 바탕으로 추론한다는 점이 머신러닝/ 딥러닝과의 공통점이어서 많이 사용된다.)        - P(B|A) = P(A|B)*P(B) / P(A) 이다.        - P(A∩B) = P.. 2023. 11. 22.
[머신러닝] 분류분석 : [다지분류]로지스틱 회귀분석 임계값 Threshold : 결정함수각 샘플의 결정함수를 사용하여 점수를 계산하고 이 점수가 임계값 보다 크면 샘플을 양성으로 판단하고 그렇지 않으면 음성으로 판단한다.임계값의 위치에 따라 정밀도와 재현율이 달라지는 것을 알 수 있다.다중클래스 혼동행렬1:n  의 모양으로 혼동행렬을 만든다. 예시에서는 사과인 것과 - 사과가 아닌 것Micro F1마이크로 평균 F1 score 라고 하며 모델의 전체 TP, 전체 FP, 전체 FN을 고려하여 계산된다.하나의 클래스 간에 TP끼리, FP끼리, FN 끼리 더한다.Macro F1각 클래스에 대해 메트릭을 계산한 다음 측정값의 가중되지 않은 평균을 말한다. (각 클래스 별의 메트릭을 산술평균(f1-score를 산술평균한 것 ))Weighted F1매크로F1 과 달.. 2023. 11. 21.
[머신러닝] 분류분석 : [이지분류] 로지스틱 회귀분석 - (실습) 유방암 확률 예측, 개인 신용도 기반 대출 가능 여부 예측 유방암 확률 예측패키지 로딩해당 데이터는 sklearn 에 저장되어있는 유방암 환자 데이터 이다.from sklearn.datasets import load_breast_cancer # 유방암환자 데이터 제공from sklearn.linear_model import LogisticRegressionfrom sklearn.preprocessing import StandardScalerfrom sklearn.metrics import accuracy_score, precision_score, recall_score, roc_curve, roc_auc_score, confusion_matrixfrom sklearn.model_selection import train_test_splitimport pandas .. 2023. 11. 21.
[머신러닝] 지도학습 알고리즘 - 분류분석 : 로지스틱 회귀분석 분류분석 Classification Analysis - 로지스틱 회귀분석종속변수가 범주형인 데이터에 대해 데이터의 유사성이 높은 것들을 같은 종류로 분류 되도록 하는 분석방법(종속변수가 미리 결정된 범주 중 하나에 속할 가능성 또는 확률을 예측(확률분포로 나타난다.))종류    - 로지스틱 회귀분석: 종속변수가 범주형일때 사용하는 회귀분석 (이진분류에 많이 사용)    - 의사결정트리 : 나무 형태의 그래프로 의사결정을 표현하는 데이터 분류 알고리즘(시각화, 도식화 가능)    - 나이브 베이즈: 데이터 집합의 예측변수가 독립적이라고 가정하는 분류 알고리즘(조건부확률 사용)    - K-nearest Neighbors: 데이터 포인터 간의 거리를 기반으로 예측 분류 및 예측하는 알고리즘로지스틱 회귀분석 .. 2023. 11. 20.
[머신러닝] 회귀분석 - 교차검증 교차검증 Cross Validation데이터를 분할하여 모델 생성 및 적용에 번갈아 가면서 일반화하는 모델검증 평가방법(모든 데이터셋을 검증에 1번씩 사용한다.)1. K-Fold cross validation자료를 k 개로 분류하고 k-1개를 훈련데이터, 1개를 평가데이터로 구분하여 모델생성과정을 k번 검증한다.K-Fold() 는 데이터셋을 순서대로 일정한 간격으로 분할하기 때문에 분류 분석일 경우 종속변수의 데이터 분포가 치우칠 수 있다 (위에서 부터 순차적으로 끊기 때문이다) -> shuffle = True 로 지정하여 임의 추출로 해결할 수 있지만, 한쪽의 비율이 더 많을수도 있다는 단점 존재.주로 회귀분석에서 사용한다.2. Stratified K-Fold cross validation원본데이터의 .. 2023. 11. 20.