CS log
분류와 회귀 본문
cv 쓰기 ) 프로젝트도 넣기!
https://sujinlee.me/entry-level-en-resume/
1. 머신러닝
머신러닝은 신경망 기반이 아닌 주로 해석 가능한 수학적 모델을 기반으로 하는 머신러닝을 의미
딥러닝과 머신러닝의 차이점
- 머신러닝은 주어진 데이터를 인간이 먼저 처리한다. ex) 인간이 개, 고양이의 특징 추출 후 컴퓨터 학습시킴
- 딥러닝은 머신러닝에서 사람이 하던 패턴 추출 작업이 생략된다. 컴퓨터가 스스로 데이터를 기반으로 학습할 수 있도록 정해진 신경망을 이용한다. ex) 심층 신경망을 통해 스스로 개, 고양이의 특성을 훈련하여 그들을 분류함.
머신러닝 딥러닝 학습 방식 : 지도학습, 비지도 학습, 강화학습
supervised learning : 문제와 정답을 모두 알려주고 공부시키는 방법
unsupervised learning : 답을 가르쳐주지 않고 공부시키는 방법
reinforcement learning : 보상을 통해 상은 최대화, 벌은 최소화하는 방향으로 행위를 강화하는 학습
supervised learning 안에 분류와 회귀
분류 : 카테고리 예측 ex)뉴스 기사 분류
회귀 : 특성을 기준으로 연속된 값 예측 ex) 주택 가격 예측
2. 분류
분류 : 주어진 데이터를 클래스 별로 구별해내는 과정. 머신러닝이 맞혀야 하는 label이 discrete한 경우.
분류의 종류
1) naive bayes
2) KNN
주어진 데이터의 주변 이웃 데이터들의 특징을 파악하고, 가장 유사한 그룹에 포함되도록 하는 방식
과정 : 데이터 수집 - 유사도 측정 - k이웃 선택 - 다수결 투표 - 예측 또는 분류
- 간단하고 이해하기 쉬움
- 학습 데이터의 분포 고려 안해도 됨
- 높은 분류 정확도
- 적은 데이터셋에서도 잘 작동함
3) 로지스틱 회귀
https://aws.amazon.com/ko/compare/the-difference-between-linear-regression-and-logistic-regression/
a. 선형회귀 (값 예측)
독립 변수 x를 사용하여 종속 변수 y의 움직임을 예측하고 설명 -> 종속 변수와 독립 변수 간 관계
x값의 개수에 따라 단순 선형 회귀, 다중 선형 회귀로 분류함
but 종속 변수가 범주형일 때 (ex. 성별) 선형회귀를 적용하면 모델링 범위가 맞지 않는 문제 발생
* 사용하지 않는 이유
- linear regression을 사용하면 확률이 음과 양의 방향으로 무한대까지 뻗어나감
- 불균형 데이터에 대해 잘 적응하지 못함
b. 로지스틱 회귀 (확률 예측)
독립 변수가 어떤 값이든 항상 종속 변수의 범위가 [0,1] 사이에 있음 -> 사건의 확률 확인
활성함수로 logistic / sigmoid 함수 사용
선형 회귀 -> logit 변환 -> 로지스틱 회귀
odds(승산) : 임의의 사건 a가 발생하지 않을 확률 대비 발생활 확률의 비율 = p(a) / 1-p(a)
odds ratio : odds1 / odds2
logit 변환 : odds에 log를 씌어 변환하는 과정
logit 변환을 통해 선형의 식을 도출하고, 독립 변수 x에 따른 logit의 변화를 알 수 있음
sigmoid function
실수 전체를 정의역을 가지며, 반환값은 0-1 범위를 가진다. 확률 밀도 함수 (probability density function) 요건을 충족시키는 함수이다.
이진분류(binary classification)과 다중분류(multiple classification)
softmax function : 각 클래스마다 소수의 확률을 할당하여 총 확률의 합이 1이 되게 함. 각 클래스가 정답일 확률로 표현
threshold : 로지스틱 회귀 알고리즘의 결과 값은 '분류확률' 이므로 확률이 특정 수준 이상 확보되면 샘플이 클래스에 속할지 말지 결정할 수 있다. 도메인에 따라 threshold를 다르게 설정한다.
3. 성능평가
* type 1 error(FP), type 2(FN) error 면접 질문 많이 나옴
accuracy(정확도) : 모델이 올바르게 분류한 부분의 비율, (tp+tn)/(tp+fn+fp+tn)
precision(정밀도) : 모델이 positive라 분류한 것 중 실제값이 positive인 비율, tp/(tp+fp)
recall(재현도) : 실제값이 positive인 것 중 모델이 positive라 분류한 비율, tp/(tp+fn)
f1 score : precision과 recall의 조화평균, (2*precision*Recall) / (precision+recall)
TP : 실제 Positive인 정답을 Positive라고 예측(True)
TN : 실제 Negative인 정답을 Negative라고 예측 (True)
FP : 실제 Negative인 정답을 Positive라고 예측 (False) - Type Ⅰ error
FN : 실제 Positive인 정답을 Negative라고 예측 (False) - Type Ⅱ error
'AI' 카테고리의 다른 글
EfficientNet (0) | 2024.09.26 |
---|---|
ResNet (0) | 2024.09.26 |
DL 기초 (ANN, DNN, CNN) (0) | 2024.08.13 |
Decision Tree / Ensemble & Random Forest (0) | 2024.08.07 |
회귀 regression (1) | 2024.07.24 |