在線演示不再可用,因為我們不可能續訂證書。此存儲庫中的代碼仍然有效,但是您可能需要進行一些更改才能在Python 3中使用(請參閱開放PRS)。您還可以查看該算法的Pytorch版本,稱為Huggingface製造的Torchmoji。
(單擊圖像進行視頻演示)
DeepMoji是一款在與表情符號的12億推文中訓練的模型,以了解語言如何用來表達情感。通過轉移學習模型可以在許多與情緒相關的文本建模任務上獲得最新的性能。
有關更多詳細信息,請參見論文或博客文章。
首先,請查看示例/目錄內。有關如何使用DeepMoji提取表情符號預測,請參見Score_texts_emojis.py,請參閱Eckode_texts.py,以獲取如何將文本轉換為2304維情感特徵向量或Finetune_youtube_last.py如何在新數據集中使用模型來傳輸模型。
如果您使用我們的型號或代碼,請考慮引用我們的論文(請參見下文)。
該代碼基於Keras,它需要Theano或TensorFlow作為後端。如果您寧願使用Pytorch,這裡有一個可用的實現,這是由Thomas Wolf提供的。
我們假設您正在使用PIP安裝Python 2.7。作為後端,您需要安裝Theano(版本0.9+)或TensorFlow(1.3+版本)。完成此操作後,您需要在根目錄內運行以下以下依賴項:
pip install -e .這將安裝以下依賴項:
確保Keras使用您選擇的後端。您可以在此處找到指令,從一個後端切換到另一部分。
運行隨附的腳本,該腳本從此處下載了預處理的deepmoji重量(〜85MB),並將其放置在模型/目錄中:
python scripts/download_weights.py要進行測試,請安裝鼻子。安裝後,導航到測試/目錄並運行:
nosetests -v默認情況下,這還將運行登錄測試。這些測試訓練模型的一個時代,然後檢查最終的精度,這可能需要幾分鐘才能完成。如果您希望排除這些內容,請改用以下內容:
nosetests -v -a ' !slow ' 該代碼已經過測試,可在Ubuntu 16.04機器上與Python 2.7合作。它尚未針對效率進行優化,但應足夠快地用於大多數目的。我們不能保證沒有錯誤 - 使用您自己責任的代碼!
如果您覺得可以改善某些東西,我們歡迎提取請求。您還可以通過告訴我們在撰寫最新推文時的感受,可以極大地幫助我們。只需單擊此處貢獻即可。
該代碼和預驗證的模型已根據MIT許可證獲得許可。
基準數據集僅出於方便目的上傳到該存儲庫。他們沒有被我們釋放,我們沒有對他們宣稱任何權利。在您的責任下使用數據集,並確保您履行與其釋放的許可證。如果使用任何基準數據集,請考慮引用原始作者。
可悲的是,由於許可限制,我們無法通過表情符號發布大型推文的Twitter數據集。
@inproceedings{felbo2017,
title={Using millions of emoji occurrences to learn any-domain representations for detecting sentiment, emotion and sarcasm},
author={Felbo, Bjarke and Mislove, Alan and S{o}gaard, Anders and Rahwan, Iyad and Lehmann, Sune},
booktitle={Conference on Empirical Methods in Natural Language Processing (EMNLP)},
year={2017}
}