머신러닝 지도학습의 모든 알고리즘별 요약

 1) K-nearest neighbor - 최근접 이웃 알고리즘

작은 데이터셋일 경우 기본적으로 설명하기 쉬운 모델임, training dataset 을 그냥 저장하고, 새로운 데이터 포인트 예측 시 training dataset에서 가장 가까운 포인트 찾는 알고리즘

    code: mglearn.plots.plot_knn_classification(n_neighbors=1) 

    n_neighbors는 가장 가까운 이웃 개수 설정가능, 1개가 아니고 k 개

이웃의 수를 늘릴수록 kneighborclassifier분석 시 결정 경계가 부드러워짐 -> 더 단순한 모델을 의미 -> 복잡도 낮아짐 -> 훈련 데이터의 정확도 감소 

최근접 이웃 알고리즘에서 주요 매개변수 : 데이터 포인트 사이의 거리재는 방법, 이웃의 수 

장점: 쉽고 파라미터 조정이 많이 필요하지 않음

단점: 훈련 데이터셋이 크면 예측이 느려지고 전처리과정이 복잡, 특성값대부분이 희소한 (0이 많은) 데이터셋은 잘 작동하지 않음

따라서 예측 속도가 느리고 분류 능력이 부족해서 학습용으로만 쓰이고 실무에서는 많이 쓰이지 않음.


2) Linear mode - 선형 모델 알고리즘

대용량 데이터셋, 고차원 데이터셋에 대한 지도학습 가능

특성이 하나일 땐 직선, 두개일 땐 평면 --> 더 특성이 많은 높은 차원에서는 hyperplane(I초평면) 이 되는 회귀모델의 특징을 가지고 있음

    2-1) Linear regression (OLS, ordinarty least squares) 

    예측과 훈련셋에 있는 평균제곱오차(mean squared error)을 최소화하는 파라미터 w,b         찾고, 예측값과 목표값 차이를 제곱해서 더한 후 샘플 수로 나눔

    2-2) Ridge Regression (리지 회귀) 

    가중치(w)의 절대값을 가능한 적게 만들어서(0) 특성이 출력에 주는 영향을 최소화함으로서 회귀를 통한 선형모델 --> 훈련 세트에 대한 성능 사이를 절충할 수 있는 방법 제공

    2-3)Lasso 라소 

    리지회귀처럼 라소도 계수를 0에 가깝게 만들어 모델에서 왼전히 제외되는 특성이 생기도록 한다. 이렇게 일부 계수를 0으로 만들면 모델이 이해하기 쉬워지고 제일 중요한 특성이 뭔지 알게 된다.

    code: from sklearn.linear_model import Lasso

            lasso = Lasso(alpha=0.01, max_iter=100000).fit(X_train, y_train)

            print(~~~)

     alpha  매개변수 : 계수들을 얼마나 강하게 0으로 보낼지 조절 (기본값 1.0)

    alpha값 감소하면 모델 복잡도 증가 과소적합 감소--> max_iter  기본값을 늘려야함 


(미완, 보완 예정)


댓글

이 블로그의 인기 게시물

시험에 나오는 전기공사 산업기사정리 전기기기-직류기의 구조

익리덤 없는사람은 불쌍해,,후기, 단점, 도색 (MGEX 스트라이크 프리덤)

주식의 기술적 분석- 이큐볼륨차트(EQui volume chart)