FLY AI 4기 5일차: 비지도학습

염지현·2024년 1월 1일

FLY AI 4기

목록 보기
6/16

5일차: 비지도학습

5일차 요약

  • 오전: 비지도학습 이론 수업 및 실습 코드 작성
  • 오후: 팀별 프로젝트 아이디어 회의 진행

의사 결정 나무(Decision Tree)

  • 데이터 전처리 필요없음
    - 문자열 사용 가능
    • 스케일링 필요 없음(일반적으로 현업에서는 의사 결정 트리 + a를 사용하기 때문에 스케일링은 하는 편)
    • 이상치에 영향을 덜 받음
    • 성능이 좋지는 않음

CART(Classification And Regression Tree)

  • yes/no로 분리하는 의사결정트리 알고리즘 중 1개
  • Infromation Gain: 질문을 통해 불순도의 차이가 생긴 것을 정보 이득, information gain 이라고 함

의사결정나무 모델 실습 코드

from sklearn.tree import DecisionTreeClassifier

clf = DecisionTreeClassifier(random_state=42)
clf = clf.fit(X_train, y_train)

의사결정나무 depth를 보면서 어떻게 이진으로 나누어지는지 시각화

from sklearn.tree import plot_tree

plot_tree(clf, feature_names = cols, filled=True)
plt.show()

Ensemble Learning(앙상블)

  • 강력한 하나의 모델을 사용하는 대신 보다 약한 모델 여러 개를 조합하여 더 정확한 예측에 도움을 주는 방식
  • 많은 모델이 있으므로 한 모델의 예측이 어긋나더라도 어느 정도 보정이 되는 효과가 있음
  • 종류: 보팅, 배깅(랜덤 포레스트), 부스팅

군집화(K-means clustering)

  • 비지도 학습
  • k개씩 묶으며 군집화 진행

PCA: 주성분 분석

from sklearn.decomposition import PCA

pca = PCA(n_components=2)
X_p = pca.fit_transform(X_s)

k-means clustering

from sklearn.cluster import KMeans

km = KMeans(n_clusters=3)
km.fit(X_p)

실습 코드를 작성하는 시간이 많아짐에 따라 코드는 github에 따로 올려서 정리해야겠다..

0개의 댓글