🚀 DistilBERT-PoliticalBias
DistilBERT-PoliticalBias
是一個基於 DistilBERT 的模型,經過微調後可檢測並減少文本中的政治偏見。該模型採用了一種新穎的方法,將擴散技術與從經過微調的 RoBERTa 教師模型進行知識蒸餾相結合,以實現無偏見的文本表示。
🚀 快速開始
要使用這個模型,你可以使用 Transformers 庫加載它:
from transformers import DistilBertForSequenceClassification, RobertaTokenizer
model = DistilBertForSequenceClassification.from_pretrained('cajcodes/DistilBERT-PoliticalBias')
tokenizer = RobertaTokenizer.from_pretrained('cajcodes/DistilBERT-PoliticalBias')
✨ 主要特性
- 基於 DistilBERT 架構,經過微調以檢測和減少文本中的政治偏見。
- 採用新穎的方法,結合擴散技術和知識蒸餾,實現無偏見的文本表示。
📦 安裝指南
暫未提及具體安裝步驟,可參考 Transformers 庫的官方文檔進行安裝。
💻 使用示例
基礎用法
from transformers import DistilBertForSequenceClassification, RobertaTokenizer
model = DistilBertForSequenceClassification.from_pretrained('cajcodes/DistilBERT-PoliticalBias')
tokenizer = RobertaTokenizer.from_pretrained('cajcodes/DistilBERT-PoliticalBias')
高級用法
import torch
sample_text = "We need to significantly increase social spending because it will reduce poverty and improve quality of life for all."
inputs = tokenizer(sample_text, return_tensors='pt')
outputs = model(**inputs)
predictions = torch.softmax(outputs.logits, dim=-1)
print(predictions)
📚 詳細文檔
訓練
該模型使用一個包含 658 條陳述的合成數據集進行訓練,每條陳述都有偏見評級。這些陳述由 GPT - 4 生成,涵蓋了從高度保守到高度自由的範圍。訓練過程包括 21 個 epoch,學習率為 6e - 6。模型使用交叉熵和 KL 散度損失的組合進行優化,並使用溫度縮放從教師模型中蒸餾知識。
新穎方法
訓練採用了一種新穎的方法,將偏見視為擴散過程旨在消除的“噪聲”。通過知識蒸餾,學生模型學習使其預測與教師模型的偏見較小的輸出保持一致,從而有效減少結果文本中的偏見。
評估
該模型在驗證集上取得了以下性能指標:
- 馬修斯相關係數(MCC):0.593
- ROC AUC 分數:0.924
這些指標表明該模型在文本分類和減少偏見方面具有很強的能力。
數據集
用於訓練的數據集 cajcodes/political-bias
包含 658 條帶有偏見評級的陳述,這些陳述由 GPT - 4 生成。該數據集可用於進一步分析和模型訓練。
引用
如果你使用此模型或數據集,請按以下方式引用:
@misc{cajcodes_distilbert_political_bias,
author = Christopher Jones,
title = {DistilBERT-PoliticalBias: A Novel Approach to Detecting and Reducing Political Bias in Text},
year = {2024},
howpublished = {\url{https://huggingface.co/cajcodes/DistilBERT-PoliticalBias}},
}
📄 許可證
本項目採用 MIT 許可證。