オンラインデモは、証明書を更新することができないため、利用できなくなりました。このリポジトリのコードは引き続き機能しますが、Python 3で動作するように変更する必要がある場合があります(Open PRSを参照)。また、Huggingface製のTorchmojiと呼ばれるこのアルゴリズムのPytorchバージョンをチェックすることもできます。
(ビデオデモンストレーションのために画像をクリックしてください)
DeepMojiは、絵文字を描くために言語がどのように使用されているかを理解するために、12億のツイートで訓練されたモデルです。転送学習を通じて、モデルは多くの感情関連のテキストモデリングタスクで最先端のパフォーマンスを取得できます。
詳細については、論文またはブログ投稿を参照してください。
まず、例/ディレクトリの内部をご覧ください。 deepmojiを使用して絵文字の予測を抽出する方法については、score_texts_emojis.pyを参照してください。ecode_texts.pyテキストを2304次元の感情的特徴ベクトルに変換する方法またはFinetune_youtube_last.py新しいデータセットでの転送学習にモデルを使用する方法。
モデルまたはコードを使用する場合は、論文を引用することを検討してください(引用については以下を参照してください)。
このコードは、バックエンドとしてTheanoまたはTensorflowのいずれかを必要とするKerasに基づいています。 Pytorchを使用したい場合は、ここで実装があります。これは、Thomas Wolfから親切に提供されています。
Python 2.7を使用してPIPをインストールしていると仮定しています。バックエンドとして、Theano(バージョン0.9+)またはTensorflow(バージョン1.3+)のいずれかをインストールする必要があります。それが完了したら、残りの依存関係をインストールするには、ルートディレクトリ内で以下を実行する必要があります。
pip install -e .これにより、次の依存関係がインストールされます。
Kerasが選択したバックエンドを使用していることを確認してください。ここで、あるバックエンドから別のセクションへの切り替えの下で、ここで指示を見つけることができます。
入ったスクリプトを実行します。このスクリプトは、ここから前提条件のDeepMojiウェイト(〜85MB)をダウンロードし、モデル/ディレクトリに配置します。
python scripts/download_weights.pyテストを実行するには、ノーズを取り付けます。インストール後、テスト/ディレクトリに移動して実行します。
nosetests -vデフォルトでは、これもFinetuningテストを実行します。これらのテストでは、モデルを1つのエポックでトレーニングし、結果の精度を確認します。それらを除外したい場合は、代わりに次のことを実行します。
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}
}