Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

딥러닝 #4

Open
Jangchanhi opened this issue Apr 7, 2023 · 0 comments
Open

딥러닝 #4

Jangchanhi opened this issue Apr 7, 2023 · 0 comments

Comments

@Jangchanhi
Copy link
Owner

머신러닝 모델링

[프로세스]
데이터 수집 -> 데이터 정리 -> 테스트 데이터 셋 / 모델 학습 -> 모델 테스트 -> 모델 배포

제대로 된 데이터를 만드는 것이 중요하다, 데이터 전처리, 정리가 중요

지도학습 : 정답을 알려주면서 진행하는 학습, 데이터와 레이블(정답)이 함께 제공됨

  • 레이블(Label) = 정답, 실제값, 타깃, 클래스, y(보통 정답)
  • 예측된 값 = 예측값, 분류값, y(yhat)

비지도학습 : 레이블(정답)없이 진행되는 학습, 데이터 자체에서 패턴을 찾아낼 때 사용함

[지도학습 모델 종류]

  1. 분류 모델(Classification) : 레이블의 값들이 이산적으로 나눠질 수 있는 문제에 사용
    ex. 밥값이 많이 나오면 남성, 적게 나오면 여성

  2. 예측 모델(회귀모델) : 레이블의 값들이 연속적인 문제에 사용
    ex. 밥값이 많이 나올수록, 팁의 크기도 계속 커짐

성능지표 : 학습이 끝난 후 모델을 평가하는 용도로 사용됨

  1. 정밀도 -> 모델이 True라고 분류한 것 중에서 실제 True인 것의 비율
  • 날씨 예측 모델이 맑다로 예측했는데, 실제 날씨가 맑았는지 나타낸 지표
  • (공식) : precision = TP / TP + FP
  1. 재현율(Recall) -> 실제 True인 것 중에서 모델이 True라고 예측한 것의 비율
  • 실제 날씨가 맑은 날 중에서 모델이 맑다고 예측한 비율을 나타낸 지표
  • (공식) : Recall = TP / TP + FN
  1. 정확도 : 가장 직관적으로 모델의 성능을 나타낼 수 있는 평가 지표
  • Accuracy = TP + TN / TP+FN+FP+TN
  1. F1 점수(F1-score) : 정밀도와 재형율의 조화평균

[머신러닝 주요 알고리즘]

  1. 회귀 : Linear Regression
- 직선을 그어서 학습하는 것
  1. 분류 : Logistic Regression
- 로지스틱 함수를 사용하여 로지스틱 회귀 곡선으로 변환하여 이진 분류 할 수 있음. # sigmoid
  1. 회귀 분류 : Decision Tree, Random Forest, K-Nearest Neighbor
- 새로운 데이터가 주어졌을 때 기존 데이터 가운데 가장 가까운 K개 이웃의 정보로 새로운 데이터를 예측하는 방법론 - 알고리즘이 간단하며 큰데이터셋과 고차원 데이터에 적합하지 않음. - 분류와 회귀 작업이 가능한 다재다능한 머신러닝 알고리즘 -> 복잡한 데이터셋도 학습할 수 있으며, 강력한 머신러닝 알고리즘인 랜덤 포레스트의 기본 구성요소 - 일련의 예측기(분류, 회귀모델)로부터 예측을 수집하면 가장 좋은 모델 하나보다 더 좋은 예측을 얻을 수 있음 1) 일련의 예측기 > 앙상블 2) 결정 트리의 앙상블 > 랜덤 포레스트
  • 훈련 세트로부터 무작위로 각기 다른 서브셋을 만들어 일련의 결정 트리 분류기를 훈련시킬 수 있음

<Ensemble 기법>

  1. Boosting : 이전 학습에 대하여 잘못 예측된 데이터에 가중치를 부여해 오차를 보와해 나가는 방식 (ex. XGBoost, LightGBM) -> 순차적인 학습을 하며 Weight를 부여해서 오차를 보와하므로 학습 시간이 길 수 있음

  2. Stacking : 여러개 모델이 예측한 결과 데이터를 기반으로 final_estimator 모델로 종합하여 예측 수행 -> 성능은 향상될 수 있으나 과대적합을 유발할 수 있음

  3. Weighted Blending : 각 모델의 예측값에 대하여 weight를 곱하여 최종 output 계산
    -> 가중치의 합은 1.0이 되도록 함

<Ensemble 대표모델>

  1. XGBoost :

  2. LightGBM :

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant