Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- dfs
- map
- 모델링
- BFS
- 취준
- Queue
- 백준
- 프로그래머스
- 코딩테스트
- 코테공부
- 파이썬
- 크롤링
- 코테
- C++
- 미니프로젝트
- 알고리즘
- 코테준비
- kt에이블스쿨
- 데이터전처리
- 21609
- 음수와 size 비교
- 개인정보수집유효기간
- 스터디
- 에이블스쿨
- 머신러닝
- 상어중학교
- Ai
- 코딩
- 코테연습
- python
Archives
- Today
- Total
얼레벌레
[5주차] 머신러닝 모델링 - 성능 본문
모델링의 목표
모든 데이터셋은 모집단의 부분집합 -> 모델링의 목표는 부분집합을 학습해서 모집단을 적절히 예측하는 것 (적절한 성능을 얻는 것)
성능 튜닝
- 선형 모델 - 변수 선택법
- 변수 선택법 : 전진 선택법 혹은 후진 소거법
AIC값(Akaike information criterion, 아카이케 통계량, 모델의 적합도)을 기준으로 탐색, AIC 값은 낮을수록 좋다
AIC 값은 작을수록 좋은 모델이다
AIC = - 모델의 적합도 + 변수의 개수 (모델의 적합도(설명력)이 높을수록, 변수의 개수는 적정 개수일수록 좋음)
AIC값이 가장 작은 모델을 단계별, 순차적으로 탐색- feature 별로 각각 단순회귀 모델을 생성하고 AIC 값 비교하여 제일 작은 변수 선정
- 단계 1에서 선정된 변수에 나머지 변수를 하나씩 추가해가며 AIC 값이 가장 작은 모델의 변수를 선정
(여기서 단계 1보다 AIC 값이 낮아져야 함) - 더이상 AIC 값이 낮아지지 않을 때까지 단계 2를 반복함.
- 변수 선택법 : 전진 선택법 혹은 후진 소거법
-
- hyper parameter tuning : Grid search 와 Random search
일반화 성능
성능을 높이기 위해서는 편차(variance)를 줄이고, 오차(bias)를 줄여야 함
variance : 모든 조건(알고리즘, 하이퍼 파라미터)이 같더라도 데이터가 달라지면 성능은 변한다.
bias : 현실세계와 모델 간에는 오차가 존재한다.
- Variance 대처 - 성능의 평균으로 평가하기.
- 여러 번 반복 실행해서 평균 성능을 만들기 : 데이터에 따라서 성능이 들쑥날쑥할 수 있으니까, 여러번 반복 실행하고 각각의 성능 결과를 가지고 평균으로 계산하기.
- k-fold cross validation : 모든 데이터가 한번씩은 validation용으로 사용되도록 데이터를 k등분해서 k번 수행하고 평균 성능으로 평가.
- Variance와 bias 동시에 대처 - 데이터 늘리기.
- Q. 데이터가 많을수록 항상 좋은가?
데이터가 많을수록 성능이 개선되다가 어느 지점부터 성능 향상도가 꺾임
(많을수록 좋은 것 같지만 실상은 그렇지 않음 "오캄의 면도날") => 적당한 지점 찾기 위해 Elbow method 사용 "Learning Curve"
- Q. 데이터가 많을수록 항상 좋은가?
- Variance와 bias 동시에 대처 - 성능 튜닝 (하이퍼 파라미터 튜닝)
- Grid search 와 Random search
- 선형 모델의 경우 변수 선택 (변수 선택법으로 릿지, 라소 규제가 있음)
모델 복잡도와 과적합
모델의 복잡도 : 학습용 데이터에 있는 패턴을 모델에 반영한 정도
가장 단순한 모델 : 학습용 데이터에서 y값의 평균으로 예측하는 모델
가장 복잡한 모델 : 학습용 데이터에서만 존재하는 독특한 패턴까지 모두 반영한 모델
- 선형 모델의 복잡도 : x(변수) 증가 시 복잡도 증가
- 트리 모델의 복잡도 : depth가 높을수록, min_samples_leaf가 작을수록 복잡도 증가
- SVM의 복잡도 : Cost, gamma가 증가할 수록 복잡도 증가
과적합 지점 찾기 - 적합도 그래프 (Fitting Graph)
과적합 지점을 찾기 위한 방법
- train 성능과 validation 성능이 급격히 벌어지는 지점
- validation 성능의 고점
- 가능한 단순한 모델 (오캄의 면도날)
'취업 > KT AIVLE SCHOOL' 카테고리의 다른 글
[6주차] 미니프로젝트 2차 (0) | 2022.09.12 |
---|---|
[5주차] 시계열 분석 (1) | 2022.09.12 |
[5주차] 머신러닝 모델링 - 기초 (0) | 2022.09.12 |
[4주차] 미니프로젝트 1차 (0) | 2022.09.05 |
[에이블스쿨] 코딩마스터스 & 메타버스 스터디룸 제작 이벤트 (0) | 2022.08.19 |