25.10.2023
1. ML Project Process
- 큰 그림 그리기
- 데이터 얻기
- 데이터에 대한 인사이트를 얻기 위해 데이터 비쥬얼라이징
- ML 알고리즘을 위해 데이터 전처리
- 트레이닝 모델 결정하기
- 모델 파인튜닝하기
- 모델 배포, 모니터링, 유지보수하기
1. Supervised vs unsupervised
Supervised Learning: 데이터셋이 레이블되어있는 경우 사용
Unsupervised Learning: 데이터셋이 레이블되어있지 않은 경우 사용
2. Classification vs Regression vs Clustering vs Reinforcement
Classification: 카테고리처럼 분류 하는 것
Regression: 실제 값을 예측한다.
Clustering:
Reinforcement:
3. Cross-Validation, Accuracy
클래시피케이션 문제를 풀 때 skewed datasets을 다룬다면 Accuracy, 정확도를 이용해 성능을 측정하는 것은 선호되지 않는다.
이에 대한 대안이 Confusion Matrix이다.
4. Confusion_Matrix
True Negatives: 정답이 아닌 것들을 정답이 아니라고 잘 분류
False Positives: 정답이 아닌 것들을 정답이라고 분류
Flase Negatives: 정답인 것들을 정답이 아니라고 분류
True Positives: 정답인 것들을 정답이라고 잘 분류
6. Precision vs Recall
Precision: TP / TP + FP, 예측한 것 중에 몇 개를 잘 맞췄는지
Recall: TP / TP + FN, 실제 맞는 값 중에 몇 개를 잘 맞췄는지
둘은 트레이드 오프 관계에 있는데 중간의 그레이존의 쓰레스 홀드가 있기 때문.
3. Batch Learning vs Online Learning
Batch Learning: 시스템이 학습을 한 번에 진행하는 것, 데이터가 큰 경우 하드웨어가 서포팅되어야한다
Online Learning: 시스템이 학습을 점진적으로 진행하는 것,
4. Feature Scaling
성능향상을 위하여 트레이닝데이터 인풋 피쳐들의 범위를 줄이는 것
Min-max Scaling(normalization): 값들을 0과 1사이로 들어가게끔 값들을 옮기는 방법.
Standardization: 평균값을 뺀 뒤 standard deviation으로 나누는 방법, 아웃라이어에 영향을 덜 받는다.
Bucketizing: 분포도를 거의 같은 사이즈로 조각조각 낸 뒤 버켓 인덱스에 따라 집어넣는 방법.
5.
Overfitting: 데이터에 너무 많이 피팅된 것. RMS 값이 0이 나오면 오버피팅 가능성이 있음. 발리데이션이 필요.
Underfitting:
5. Fine-Tuning
하이퍼 파라미터들을 최적화 할 수 있는 조합을 찾는 것
6. Grid Search vs Randomized Search
둘다 파인튜닝을 하는 기법
Grid Search: 파인튜닝의 한 기법. 좋은 하이퍼 파라미터들의 조합을 찾을 때까지 수동적으로 조작함. 시간이 많이 들지만 그만큼 확실함.
Randomized Search: 특정 숫자만큼 랜덤으로 조합을 돌린다. 하이퍼파라미터 서치 범위가 클때 사용된다.
7. Train, Test, Validation
8. Comparison of Linear Regression
9. SVM
서포터 벡터 머신이란 최대 마진 값을 가지는 디시전 바운더리를 찾는 방식의 머신러닝 모델이다. versatile하며 데이터셋이 복잡하며 그 크기가 중간 이하일 때 적합하다.
10. Support Vector
서포터 벡터란 디시전 바운더리의 마진(스트릿) 안에 들어와있는 데이터 포인터들이다.
11. Soft margin vs Hard margin
Hard margin: 스트릿 안으로 데이터 인스턴스들이 들어오지 못하게 함. 선형적으로 분리 가능한 데이터셋에만 사용 가능.
Soft margin: 스트릿 안으로 데이터 인스턴스들이 들어오는 것을 최소화함. 하드마진보다 유연함.
12. Decision Tree
디시전 트리란 사람이 이해하기 쉬운 트리형태로 프리딕션을 진행하는 가장 강력한 ML 알고리즘이다.
12. Gini vs Entropy
두개 모두 Impurity를 나타내며 작을수록 pure하다는 의미이다.
Gini: 1 - (value1 / samples)² - (value2 / samples)² (when values are [value1, value2]
Entropy: 수식적으로 로그가 포함되어있음.
13. CART
CART는 Classification And Regression Tree의 약어로, 디시전 트리를 학습시키는 알고리즘이다. 항상 이진 트리만을 생성한다.
그리디 알고리즘을 쓰기 때문에 납득할만큼의 솔루션을 제공하지만, 최적의 솔루션을 개런티받기는 어렵다.
13. Ensemble
여러 종류의 weak 클래시파이어 또는 리그레서를 학습시킨 후 하나의 strong 모델을 도출해내는 기법
14. Ensemble Models
Voting Classifiers: 투표를 통한 메이저리티를 찾아내는 기법. 가장 득표수가 많은 클래시파이어를 hard voting classifier라고 한다.
Bagging: 데이터를 서브셋으로 랜덤 샘플링을 진행하여 서로 다른 데이터에 대해 똑같은 모델을 여러개 만듬. 샘플링 된 인스턴스는 다시 이용됨
Pasting: 데이터를 서브셋으로 랜덤 샘플링을 진행하여 서로 다른 데이터에 대해 똑같은 모델을 여러개 만듬. 샘플링 된 인스턴스는 다시 사용되지 않음.
Random Patches and Random Subspaces: 배깅/페이스팅과 비슷하지만 데이터 대신 피쳐를 샘플링한다.
Random Forests: 앙상블 기법을 디시전 트리에 적용한 모델. 각 피쳐의 상대적 중요도를 측정하기 쉽다.
Boosting: 프리딕터를 순차적으로 학습시킨다. AdaBoosting와 Gradient Boosting이 가장 많이 이용된다.
AdaBoost: 에러를 많이 냈던 트레이닝 인스턴스에 조금 더 어텐션을 줘서 학습을 시킨다.
Gradient Boost:
Stacking: 하드보팅같이 작은 함수를 쓰는 대신 ㅁㅇㄹㅁㄴㅇㄹㅁ
15. Out-ofBag
배깅에서 한 번도 샘플링되지 않은 인스턴스들
'CS > ML' 카테고리의 다른 글
10주차 - ANN (1) | 2023.12.11 |
---|---|
[ML] 9주차 - Dimensionality Reduction (1) | 2023.11.03 |
[ML] 5주차 - SVM (1) | 2023.10.23 |
[ML] 4주차 - 트레이닝 모델 (1) | 2023.10.22 |
[ML] 머신러닝 3주차 - Classification (2) | 2023.10.08 |