일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- stopwords
- auc
- ML
- PYTHON
- EarlyStopping
- 인공지능
- 그리디
- 파일입출력
- json
- Logistic linear
- AI
- 잡담
- Django
- 원소주
- pandas
- selenium
- category_encoders
- 트러블슈팅
- 이것이 코딩 테스트다
- semi-project
- beautifulsoup
- 머신러닝
- SMTP
- Trouble shooting
- IOPub
- 크롤링
- aof
- find_all()
- pos_tag
- Roc curve
- Today
- Total
개발 블로그
Logistic Regression & Cross-entropy function & ROC Curve, AUC 본문
01 Logistic Regression
로지스틱 회귀(영어: logistic regression)는 영국의 통계학자인 D. R. Cox가 1958년에 제안한 확률 모델로서 독립 변수의 선형 결합을 이용하여 사건의 발생 가능성을 예측하는데 사용되는 통계 기법이다.
(출처 : https://ko.wikipedia.org/wiki/로지스틱_회귀)
머신러닝에서 로지스틱 회귀는 이진분류(binary classification) 문제를 해결하기 위한 모델입니다.
ex) 스팸 메일 분류, 질병 양성/음성 분류, 신용카드 거래에서 정상 거래 및 이상 거래 분류 등...
- Sigmoid function을 이용하여 기본적으로 특정 Input data가 양성 class에 속할 확률을 계산
- Sigmoid function의 정확한 y 값을 받아 양성일 확률을 예측하거나, 특정 cutoff(Threshold or Decision boundary)를 넘는 경우 양성, 그외에는 음성으로 예측할 수 있습니다.
시그모이드 함수는 S자형 곡선 또는 시그모이드 곡선을 갖는 수학 함수이다. 시그모이드 함수의 예시로는 첫 번째 그림에 표시된 로지스틱 함수가 있으며 다음 수식으로 정의됩니다.
- 여러 종류의 시그모이드 함수는 인공 뉴런의 활성화 함수로 사용되었습니다. 통계학에서도 로지스틱 분포, 정규 분포, 스튜던트 t 분포 등의 누적 분포 함수로 시그모이드 곡선이 자주 등장합니다. 시그모이드 함수는 가역 함수로, 그 역은 로짓 함수입니다.
(출처 : https://ko.wikipedia.org/wiki/시그모이드_함수)
- 성능 지표로 Mean Squared Error가 아니라 분류를 위한 Cost function인 Cross-entropy를 활용합니다.
(예측값의 분포와 실제값의 분포를 비교하여 그 차이를 Cost로 합니다.)
손실함수란?
손실함수는 머신러닝에서 모델이 나타내는 확률 분포와 데이터가 따르는 실제 확률 분포 사이의 차이를 나타내는 함수입니다.
즉, 손실함수의 값이 0에 가까울수록 모델의 정확도가 높고, 0에서 멀어질수록 모델의 정확도가 낮습니다.
02 Cross entropy
크로스 엔트로피는 두 확률 분포의 차이를 구하기 위해서 사용됩니다.
실제 분포인 q와 q를 예측하는 p분포를 만들었을 때 아래와 같이 Cross-entropy가 정의됩니다.
(p와 q가 모두 들어가서 Cross-entropy라고 합니다.)
머신러닝을 통한 예측 모형에서 훈련 데이터에서 실제 분포인 q를 알 수 있기 때문에 Cross-entropy를 계산할 수 있게 됩니다. 이를 바탕으로 Cross-entropy함수를 통해 실제값과 예측값의 차이를 계산할 수 있습니다.
(참고 블로그 : https://velog.io/@rcchun/머신러닝-크로스-엔트로피cross-entropy)
03 ROC Curve & AUC
ROC(Reciever Operating Characteristic) 커브는 머신러닝 모델에 대한 성능을 평가할때 쓰입니다.
FPR(False positive rate)를 x축, TPR(True positive rate)를 y축으로 하여 그린 그래프입니다.
- TPR(True positive rate) : 1인 케이스에 대해 1로 바르게 예측하는 비율 (암 환자에 대해 암이라고 진단)
- FPR(False positive rate) : 0인 케이스에 대해1로 틀리게 예측하는 비율 (정상 환자에 대해 암이라고 진단)
AUC (Area Under the ROC Curve)는 ROC curve의 밑면적을 말합니다.
성능평가에 있어서 수치적인 기준이 될 수 있는 값으로, AUC가 1에 가까울수록 그래프가 좋은 모델이라고 할 수 있습니다.
<참고>
Accuracy(정확도), Recall(재현율), Precision(정밀도), 그리고 F1 Score :https://eunsukimme.github.io/ml/2019/10/21/Accuracy-Recall-Precision-F1-score/
Tea Time! ☕️ Computer Vision #3: Recall, Precision, F1 and ROC, AUC
물체 검출 알고리즘 성능 평가방법 AP(Average Precision)의 이해
'AI' 카테고리의 다른 글
Accuracy, Recall, Precision, F1 score에 대해서 (2) | 2022.07.18 |
---|---|
Deep Learning이란? (0) | 2022.04.27 |
Linear Regression(선형 회귀) & Gradient Descent Algorithm(경사하강법) (0) | 2022.04.15 |
PCA ( Principal Component Analysis) (0) | 2022.04.13 |
K-Means algorithm (0) | 2022.04.13 |