metadata
pipeline_tag: text-classification
language: ko
license: cc-by-4.0
tags:
- hate-speech
- binary-classification
- electra
- korean
- transformers
datasets:
- jeanlee/kmhas_korean_hate_speech
model-index:
- name: kmhas_electra_binary
results:
- task:
name: Text Classification
type: text-classification
dataset:
name: KMHAS Korean Hate Speech
type: jeanlee/kmhas_korean_hate_speech
metrics:
- name: Accuracy
type: accuracy
value: 0.91
- name: F1
type: f1
value: 0.91
- name: Precision
type: precision
value: 0.91
- name: Recall
type: recall
value: 0.91
KMHAS 한국어 혐오 발언 분류기 (이진 분류)
한국어 문장에서 혐오 발언 여부를 분류하는 이진 텍스트 분류 모델.
기반 모델: beomi/KcELECTRA-base-v2022
학습에는 KMHAS 한국어 혐오 표현 데이터셋 사용
학습 정보
- Train Set: 78,977개
- Validation Set: 8,776개
- Test Set: 21,939개
- Base Model:
beomi/KcELECTRA-base-v2022
- Epochs: 5
- Batch Size: 16 (train/eval)
- Evaluation Strategy: 매 epoch마다 성능 평가
- Save Strategy: 매 epoch마다 저장 (최대 1개 유지)
성능 평가 (Test Set 기준)
Metric | Value |
---|---|
Accuracy | 0.91 |
Precision | 0.91 |
Recall | 0.91 |
F1-score | 0.91 |
클래스별 성능:
- hate: Precision 0.92 / Recall 0.91 / F1 0.92
- non-hate: Precision 0.90 / Recall 0.91 / F1 0.90
사용 예시
from transformers import AutoTokenizer, AutoModelForSequenceClassification
model = AutoModelForSequenceClassification.from_pretrained("now100/kmhas_electra_binary")
tokenizer = AutoTokenizer.from_pretrained("now100/kmhas_electra_binary")
text = "개새끼들이 나라를 망치고 있다."
inputs = tokenizer(text, return_tensors="pt")
outputs = model(**inputs)
label = outputs.logits.argmax(dim=1).item()
print("예측 결과:", "non-hate" if label == 1 else "hate")