🚀 T5-base 微調用於情感識別 😂😢😡😃😯
本項目基於 Google 的 T5 基礎模型,在 情感識別 數據集上進行微調,以完成 情感識別 下游任務。
🚀 快速開始
from transformers import AutoTokenizer, AutoModelWithLMHead
tokenizer = AutoTokenizer.from_pretrained("mrm8488/t5-base-finetuned-emotion")
model = AutoModelWithLMHead.from_pretrained("mrm8488/t5-base-finetuned-emotion")
def get_emotion(text):
input_ids = tokenizer.encode(text + '</s>', return_tensors='pt')
output = model.generate(input_ids=input_ids,
max_length=2)
dec = [tokenizer.decode(ids) for ids in output]
label = dec[0]
return label
get_emotion("i feel as if i havent blogged in ages are at least truly blogged i am doing an update cute")
get_emotion("i have a feeling i kinda lost my best friend")
✨ 主要特性
- 基於 Google 的 T5 基礎模型,在情感識別數據集上進行微調,可有效完成情感識別下游任務。
- 能夠將文本分類為 6 種不同的情感:悲傷 😢、喜悅 😃、愛 🥰、憤怒 😡、恐懼 😱、驚訝 😯。
📚 詳細文檔
T5 模型詳情
T5 模型由 Colin Raffel、Noam Shazeer、Adam Roberts、Katherine Lee、Sharan Narang、Michael Matena、Yanqi Zhou、Wei Li、Peter J. Liu 在論文 Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer 中提出。以下是論文摘要:
遷移學習是自然語言處理(NLP)中的一種強大技術,它先在數據豐富的任務上預訓練模型,然後在下游任務上進行微調。遷移學習的有效性催生了多種方法、方法論和實踐。在本文中,我們通過引入一個統一的框架,將每個語言問題轉化為文本到文本的格式,探索了 NLP 遷移學習技術的領域。我們的系統研究比較了預訓練目標、架構、無標籤數據集、遷移方法和其他因素在數十個語言理解任務上的表現。通過將我們的探索見解與規模和新的“Colossal Clean Crawled Corpus”相結合,我們在許多涵蓋摘要、問答、文本分類等的基準測試中取得了最先進的結果。為了促進未來 NLP 遷移學習的研究,我們發佈了數據集、預訓練模型和代碼。

下游任務(情感識別)詳情 - 數據集 📚
Elvis Saravia 收集了一個很棒的 情感識別數據集,該數據集可以將文本分類為以下 6 種情感之一:
- 悲傷 😢
- 喜悅 😃
- 愛 🥰
- 憤怒 😡
- 恐懼 😱
- 驚訝 😯
模型微調 🏋️
訓練腳本是 Suraj Patil 創建的 Colab 筆記本 的略微修改版本,所有功勞歸他!
測試集指標 🧾
情感 |
精確率 |
召回率 |
F1 分數 |
樣本數 |
憤怒 |
0.93 |
0.92 |
0.93 |
275 |
恐懼 |
0.91 |
0.87 |
0.89 |
224 |
喜悅 |
0.97 |
0.94 |
0.95 |
695 |
愛 |
0.80 |
0.91 |
0.85 |
159 |
悲傷 |
0.97 |
0.97 |
0.97 |
521 |
驚訝 |
0.73 |
0.89 |
0.80 |
66 |
準確率 |
|
|
0.93 |
2000 |
宏平均 |
0.89 |
0.92 |
0.90 |
2000 |
加權平均 |
0.94 |
0.93 |
0.93 |
2000 |
📄 許可證
文檔未提及相關許可證信息。
由 Manuel Romero/@mrm8488 創建 | 領英
於西班牙用心打造 ♥