🚀 AI文本檢測器
本模型是基於gpt2微調而來,專門用於文本分類。它支持三個類別,分別為AI生成的文本、知乎用戶回答文本以及其他文本,能夠精準地對不同來源的文本進行分類。
🚀 快速開始
本模型是gpt2的微調模型,用於文本分類。支持三個類別:AI、zhihu、other,分別代表AI生成的文本、知乎用戶回答文本和其他文本。
✨ 主要特性
- 基於gpt2微調,具備良好的文本分類能力。
- 支持AI、zhihu、other三個類別,能有效區分不同來源的文本。
📦 安裝指南
文檔未提及具體安裝步驟,故跳過該章節。
💻 使用示例
基礎用法
通過 transformers.pipeline
預設的文本分類管線即可輕鬆使用:
from transformers import pipeline
classifier = pipeline("text-classification",model="./checkpoints",device="cuda")
text = "加密通信助長犯罪的說法並不成立,理由如下:隱私權的基本保障:加密技術保障了個人和組織的隱私權,這是基本人權的一部分。無論是個人的日常通信、商業機密,還是新聞記者的來源保護,加密通信都在確保合法和正當的隱私需求不被侵犯。"
print(classifier(text))
輸出結果為
[{'label': 'AI', 'score': 0.9951270818710327}]
高級用法
使用模型本身進行推理的方法:
import torch
from transformers import AutoTokenizer, AutoModelForSequenceClassification
tokenizer = AutoTokenizer.from_pretrained("hugfaceguy0001/AITextDetector")
model = AutoModelForSequenceClassification.from_pretrained("hugfaceguy0001/AITextDetector").to("cuda")
def detect_text(text):
with torch.no_grad():
inputs = tokenizer(text, return_tensors="pt").to("cuda")
logits = model(**inputs).logits
predicted_class_id = logits.argmax().item()
return model.config.id2label[predicted_class_id]
text = "黑神話這個遊戲,你噴它優化、噴它地圖、噴它空氣牆、噴它戰鬥、噴它劇情;這些東西不管我自己覺得有沒有噴一下的必要,可也都或多或少的能理解它為什麼被噴的原因。"
print(detect_text(text))
輸出結果為
zhihu
📚 詳細文檔
訓練數據
使用 alpaca-data-gpt4-chinese
中的約52000條回答文本作為AI生成文本,Zhihu-KOL
中隨機選擇的約52000條回答文本作為知乎用戶回答文本,SkyPile-150B
中隨機選擇的約52000條文本作為其他文本。共約15.6萬條分類文本,組成數據集,其中80%用於訓練,20%用於測試。
在測試集上的性能
分類準確率 accuracy = 0.9802627363024672
。各樣本真實標籤和檢測結果組成的混淆矩陣為
|
AI |
zhihu |
other |
AI |
10325 |
326 |
18 |
zhihu |
143 |
9969 |
87 |
other |
0 |
42 |
10300 |
📄 許可證
本模型使用的許可證為OpenRAIL。
信息表格
屬性 |
詳情 |
模型類型 |
文本分類 |
訓練數據 |
alpaca-data-gpt4-chinese 、Zhihu-KOL 、SkyPile-150B |
基礎模型 |
openai-community/gpt2 |
語言 |
中文 |
標籤 |
文本分類 |