Professional Documents
Culture Documents
Bert Fine Tuning Concept Explained
Bert Fine Tuning Concept Explained
안재학 프로
BertForSequenceClassi cation
• Metric
• f1_score
• roc_auc_score
• Accuracy
• Loss
• BCEWithLogitsLoss
fi
Metric
• f1_score
• roc_auc_score
• Accuracy
Confusion Matrix
• Accuracy (정확도)
• Recall (재현률)
• Precision (정밀도)
Confusion Matrix
• Accuracy (정확도)
• ( TP + TN ) / ( TP +
TN + FP + FN )
• Recall (재현률)
• TP / ( TP + FN )
• Precision (정밀도)
• TP / ( TP + FP )
Accuracy의 문제점
• 6월에 눈이 내릴지 여부 예측
• Recall을 사용해보자
Recall
• 6월에 눈이 내릴지 여부 예측
• 실제 눈이 내린 날( TP + FN ) 중 몇
번이나 맞췄는가( TP )?
• 전부 Positive 로 예측
• 정확도 99.9%
• 그럼 Precision 사용하자
Precision
• 6월에 눈이 내릴지 여부 예측
• 눈이 내릴 것이라고 한 날( TP + FP )
중 실제로 몇 일이나 내렸나( TP )?
• 두 개를 평균내자
• Recall, Precision의 조화 평균
• Recall = Sensitivity
• 1 - Speci city
fi
ROC curve
• True Positive Rate(TPR)
• Recall = Sensitivity
• TP / ( TP + FN)
• 1 - Speci city
• 1 - ( TN / (TN + FP) )
• FP / ( FP + TN )
fi
Draw ROC
• T = [ 1, 0, 0, 1, 1, 0 ]
• Threshold = 0.5
• P = [ 1, 1, 0, 0, 0, 1 ]
(0.6, 0.3)
• TPR = TP / ( TP + FN ) = 1 / 3
• FPR = FP / ( FP + TN ) = 2 / 3
Draw ROC
(0.6, 1.0)
• T = [ 1, 0, 0, 1, 1, 0 ]
• Threshold = 0.3
• P = [ 1, 1, 0, 1, 1, 1 ]
(0.6, 0.3)
• TPR = TP / ( TP + FN ) = 3 / 3
• FPR = FP / ( FP + TN ) = 2 / 3
Draw ROC
(0.6, 1.0) (1.0, 1.0)
• T = [ 1, 0, 0, 1, 1, 0 ]
• Threshold = 0.1
• P = [ 1, 1, 1, 1, 1, 1 ]
(0.6, 0.3)
• TPR = TP / ( TP + FN ) = 3 / 3
• FPR = FP / ( FP + TN ) = 3 / 3
Draw ROC
(0.6, 1.0) (1.0, 1.0)
• T = [ 1, 0, 0, 1, 1, 0 ]
• P = [ 1, 1, 0, 1, 0, 1 ]
(0.6, 0.3)
• TPR = TP / ( TP + FN ) = 2 / 3
• FPR = FP / ( FP + TN ) = 2 / 3
Draw ROC
• 어떻게 비교..?
AUC
• 코드 : transformers/modeling_bert.py
BCEWithLogitsLoss()
..?
BCEWithLogitsLoss()
• Wn 무시
• Yn = True
• Xn = Prediction
• Log = 자연로그
• = sigmoid
BCEWithLogitsLoss()
• Y = [ 1, 0, 0, 1 ]
• Y = [ 1, 0, 0, 1 ]
• Y = [ 1, 0, 0, 1 ]
• Y = 1일 때의 loss : 3.968
BCEWithLogitsLoss()
• Y = [ 1, 0, 0, 1 ]
• Y = [ 1, 0, 0, 1 ]
• Y = [ 1, 0, 0, 1 ]
• Y = 1일 때의 loss : 3.968
• Y = 0일 때의 loss : 5.8274
True = [ 1, 0, 0, 1 ]
BERT
• “이 카페 디저트 진짜 맛있 Multi-Label
Predict = [ -3.9, -3.7, 5.8, 3 ]
Back Propagation
fi