PlutchikWordnetAffectJP

概要

日本語版 Wordnet Affectプルチックの感情の輪を元にした感情 + aに分類し直したものです。

プログラム動作確認済環境

Mac OSX

macOS Sierra (10.12.5)

ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin16]
mecab --version
mecab of 0.996

感情一覧

こちらを参考に感情は定義しています。

Empty(無) という感情を追加しています。

Name Joy Trust Fear Surprise Sadness Disgust Anger Anticipation
Love(愛) - - - - - -
Guilt(罪悪感) - - - - - -
Delight(歓喜) - - - - - -
Morbidness(不健全な) - - - - - -
Pride(自尊心) - - - - - -
Optimism(楽観) - - - - - -
Submission(服従) - - - - - -
Curiosity(好奇心) - - - - - -
Sentimentality(感傷的) - - - - - -
Dominance(優越感) - - - - - -
Hope(希望) - - - - - -
Awe(畏れ) - - - - - -
Despair(絶望) - - - - - -
Shame(羞恥心) - - - - - -
Anxiety(不安) - - - - - -
Disapproval(失望) - - - - - -
Unbelief(不信感) - - - - - -
Outrage(激怒) - - - - - -
Remorse(自責の念) - - - - - -
Envy(嫉妬) - - - - - -
Pessimism(悲観) - - - - - -
Contempt(屈辱・軽蔑) - - - - - -
Cynicism(皮肉) - - - - - -
Aggressiveness(攻撃性) - - - - - -
Empty(無) - - - - - - - -

ファイル構成

.
├── README.md
├── dest
│   ├── ng.csv
│   └── ok.csv
├── resources
│   └── jpn-asynset.xml
├── word
│   ├── classifier.rb
│   ├── kana.rb
│   ├── pos.rb
│   └── vocabulary
│       └── emotion.csv
└── wordnet_classify.rb
  • dest: プログラムで生成されるCSVが入る
  • resources: wordnet関係のリソースが入る
  • word: 分類のためのモジュール, データファイル群
    • classifier.rb : vocabulary/*.csv を元に、分類する
    • kana.rb : 漢字, カタカナをひらがなに変換
    • pos.rb : wordnetの品詞を読みやすい形に変換
  • wordnet_cllasify.rb : wordnetを分類するプログラム

Destに吐き出されるCSVの構成

ok.csv

word/vocabulary の各感情ファイルを元に分類された語彙が入ります。

header : emotion, word, pos, cat

  • emotion: プルチックの感情名
  • word: 単語
  • pos: 品詞 (verb, noun, adverb, adjective, unkown)
  • cat: wordnet affect内のcategory
ng.csv

word/vocabulary で分類できなかったカテゴリの語彙が入ります。

header : cat, word, pos

  • cat: wordnet affect内のcategory
  • word: 単語
  • pos: 品詞 (verb, noun, adverb, adjective, unkown)

カスタマイズ

word/vocabulary/*.csvの各ファイルには、ファイル名の感情に合ったカテゴリ群が記述されています。 本プログラムでは、それを元に分類を行います。

「このカテゴリは、この感情じゃない!」と思ったら、移動してプログラムを走らせてもらえれば再分類が走ります。