군집 평가(Cluster Evaluation) 비지도학습의 특성상 어떠한 지표라도 정확하게 성능을 평가하기는 어렵다. 군집화의 성능을 평가하는 대표적인 방법으로 실루엣 분석을 이용한다. 실루엣 분석의 개요 실루엣 분석은 각 군집 간의 거리가 얼마나 효율적으로 분리되어 있는지를 나타낸다. → 효율적으로 잘 분리됐다는 것은 다른 군집과의 거리는 떨어져있고 군집 내에서는 서로 가깝게 잘 뭉쳐져있다는 의미이다. 실루엣 분석은 실루엣 계수(Silhouette coeficient)를 기반으로 한다. 개별 데이터가 가지는 실루엣 계수는 해당 데이터가 같은 군집 내의 데이터와 얼마나 가깝게 군집화돼 있고, 다른 군집과는 얼마나 멀리 분리돼있는지 나타내는 지표이다. 실루엣 계수식 a(i): 해당 데이터 포인트와 같은 군..
NMF(Non-Negative Matrix Factorization) NMF 개요 NMF는 TruncatedSVD와 같이 낮은 Rank를 통한 행렬 근사 방식의 변형이다. NMF는 원본 행렬 내의 모든 원소값이 양수라는게 보장되면 더 간단하게 두 개의 기반 양수 행렬로 분해될 수 있는 기법이다. NMF는 SVD와 유사하게 차원 축소를 통한 잠재 요소 도출로 이미지 변환 및 압축, 텍스트의 토픽 도출 등의 영역에서 사용되고 있다. In [1]: from sklearn.datasets import load_iris from sklearn.decomposition import NMF import matplotlib.pyplot as plt iris = load_iris() iris_ftrs = iris.dat..
LDA(Linear Discriminant Analysis) LDA 개요 LDA는 선형 판별 분석법으로 불리며 PCA와 매우 유사하다 PCA와 유사하게 입력 데이터셋을 저차원 공간에 투영해 차원을 축소하는 기법이지만, LDA는 '지도학습의 분류'에서 사용하기 쉽도록 개별 클래스를 분별할 수 있는 기준을 최대한 유지하면서 차원을 축소한다 LDA는 입력 데이터의 타겟값 클래스를 최대한으로 분리할 수 있는 축을 찾는다 특정 공간상에서 클래스 분리를 최대화하는 축을 찾기 위해, 클래스 간 분산(between-class scatter)과 클래스 내부 분산(within-class scatter)의 비율을 최대화하는 방식 즉, 클래스 간 분산은 최대한 크게, 클래스 내부 분산은 최대한 작게 가져가는 방식 LDA는 클..
차원 축소 개요 차원 축소는 매우 많은 피처로 구성된 다차원 데이터셋의 차원을 축소해 새로운 차원의 데이터셋을 생성하는 것 피처가 수백 개 이상이면 상대적으로 적은 차원에서 학습된 모델보다 예측 신뢰도가 떨어진다 또, 피처가 많으면 피처들끼리 상관관계가 높을 수도 있다 → 다중공선성 문제 차원을 축소하여 피처 개수를 줄이면 직관적으로 데이터를 해석할 수 있다 피처 선택: 특정 피처에 종속성이 강한 불필요한 피처는 아예 제거하고 데이터의 특징을 잘 나타내는 주요 피처만 선택하는 것 피처 추출: 기존 피처를 저차원의 중요 피처로 압축해서 추출하는 것 새롭게 추출된 피처는 기존 피처와는 완전히 다른 값이 된다 피처를 함축적으로 잘 설명할 수 있는 또 다른 공간으로 매핑하여 추출함 기존 피처가 전혀 인지하기 어..
회귀 실습 - 캐글 주택 가격: 고급 회귀 기법 본 경연에서는 RMSE로 성능을 평가하되 예측값과 실제값의 로그 변환을 기반으로 수행한다고 했으니 결론적으로는 RMSLE와 동일한 방식이다 가격이 비싼 주택일수록 예측 결과 오류가 전체 오류에 미치는 비중이 높으므로 이를 상쇄하기 위해 로그 변환된 RMSLE를 이용하자 데이터 전처리 In [1]: import pandas as pd import numpy as np import seaborn as sns import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') house_df_org = pd.read_csv('/content/house_price.csv') house_..
회귀 실습 - 자전거 대여 수요 예측 https://www.kaggle.com/competitions/bike-sharing-demand/data 데이터 설명 datetime - hourly date + timestamp season - 1 = spring, 2 = summer, 3 = fall, 4 = winter holiday - whether the day is considered a holiday workingday - whether the day is neither a weekend nor holiday weather 1: Clear, Few clouds, Partly cloudy 2: Mist + Cloudy, Mist + Broken clouds, Mist + Few clouds, Mist ..