🚀 情感分析模型(基於DistilBERT)
本倉庫包含一個使用DistilBERT架構在IMDb電影評論數據集上微調的情感分析模型。該模型旨在將文本輸入分類為積極或消極情感類別。
🚀 快速開始
若要使用該模型,你需要從Hugging Face安裝transformers
庫。可以使用以下pip命令進行安裝:
pip install transformers
安裝完成後,你可以使用以下代碼對文本進行分類:
from transformers import DistilBertTokenizer, DistilBertForSequenceClassification
import torch
tokenizer = DistilBertTokenizer.from_pretrained(Pranav-10/Sentimental_Analysis)
model = DistilBertForSequenceClassification.from_pretrained(Pranav-10/Sentimental_Analysis)
text = "I loved this movie. The performances were fantastic!"
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=512)
with torch.no_grad():
logits = model(**inputs).logits
probabilities = torch.softmax(logits, dim=-1)
print(probabilities)
✨ 主要特性
- 高效架構:基於DistilBERT架構,它是BERT的輕量級版本,在保持性能的同時,具有更小的模型尺寸和更快的處理速度。
- 高準確率:在IMDb數據集上進行微調,能夠高效地將文本分類為積極或消極情感。
📦 安裝指南
使用該模型前,需安裝Hugging Face的transformers
庫,安裝命令如下:
pip install transformers
💻 使用示例
基礎用法
from transformers import DistilBertTokenizer, DistilBertForSequenceClassification
import torch
tokenizer = DistilBertTokenizer.from_pretrained(Pranav-10/Sentimental_Analysis)
model = DistilBertForSequenceClassification.from_pretrained(Pranav-10/Sentimental_Analysis)
text = "I loved this movie. The performances were fantastic!"
inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True, max_length=512)
with torch.no_grad():
logits = model(**inputs).logits
probabilities = torch.softmax(logits, dim=-1)
print(probabilities)
📚 詳細文檔
模型描述
該模型基於DistilBERT架構,這是BERT的一個更小、更快、更便宜且更輕量級的版本。它在IMDb數據集上進行了微調,該數據集包含50,000條標記為積極或消極的電影評論。
DistilBERT已被證明在保持BERT大部分性能的同時,具有更高的效率。這使其成為情感分析任務的理想選擇,因為在這些任務中,模型的大小和速度至關重要。
評估結果
該模型在IMDb數據集上取得了以下性能:
評估指標 |
數值 |
準確率 |
90% |
精確率 |
89% |
召回率 |
91% |
F1分數 |
90% |
這些結果表明該模型在將情感分類為積極或消極方面具有很高的效率。 |
|
訓練過程
該模型使用以下步驟進行訓練:
- 預處理:將所有評論轉換為小寫,並使用DistilBERT分詞器進行分詞。
- 優化:使用Adam優化器,學習率為2e - 5,批量大小為16,並訓練3個epoch。
- 硬件:在單個NVIDIA GTX 1650 GPU上進行訓練。
📄 許可證
本項目採用Apache-2.0許可證。