/5ch-blog-depression-machine-learning

5chのうつ傾向があるメンタルヘルスとその他の違いをボキャブラリや代名詞の使い方から明らかにします

Primary LanguagePython

メンタルヘルスの人と、使用する特徴的なボキャブラリ  

参考にした研究

Gigazineさんでやっていた、うつ病の人が利用しがちなボキャブラリというネタでやっていらっしゃいました

機械学習を使った調査で「うつ」病の人がよく使いがちな言葉が判明

結果として以下のことがわかっているようです

  • 代名詞として自分のことを指す文言がたくさん出てくる
  • 「常に」「何もない」「完全に」など、絶対的な大きさや確率を表現する「絶対主義的な言葉」

理解ではできますが、本当にそのようになりますでしょうか

追試やコーパスの差を利用して集計したいと思います。

使用するコーパス

  1. 5chのメンヘラ版をpositiveのデータセットとして定義し、その他の板をnegativeのデータセットと定義します
  2. Amebloのメンヘラブログ村に登録されているユーザさんのコーパスをpositiveとして、その他のユーザさんのコーパスをnegativeとします

その際に、BoW(Bag of Words)を作成し、名詞での比較、代名詞での比較、絶対的な言葉での比較を行っていきたいと思います

http://mevius.5ch.net/ から2018/2/11にスクレイピングできる内容全量としました。
http://ameblo.jp/ から2018/2/11にスクレイピングできる内容全量としました。

使用するアルゴリズム

シングルクラスSVMでsigmoidを目的関数とする

5chですべての単語で分類する場合  

5chのベースとなる差別主義的な単語が目立ちますね

メンヘラ板で特有な単語は、オノマトペや、風俗などが目立ちます

Amebloですべての単語で分離する場合

コーパスのカバレッジの影響で、ブログの投稿日時が影響していますが、具体的な病気や、痛みに弱いとか、頭痛持ちとか有り得そうです

Amebloで代名詞を用いて分離する場合

セルフリフレクションが多いほど、メンタルに対する病理のリスクが高いととも読める文章でしたが、自己に関する論述の根拠として「私」や「自分」を意味する単語の多さがありそうです。

微妙な結果になってしまいました。   メンヘラブログを利用しない人は、自分のことをオイラとかいうようです...

アドホック1. 「私」、「わたし」、「おいら」などをまとめてself-reflectにして処理する  

特徴が見えにくいので、いくつか処理を追加します

具体的にはL1正則化で情報が落ちなかった、「わたし」,「私」,「オイラ」,「おいら」,「あたしゃ」,「わい」,「俺」,「オレ」,「わたくし」,「あたい」,「われ」,「あたし」をself-reflectionという一つの特徴量に変換すると、このような正の重みが得られる

feat weight
self-reflect 0.03038147026214874

とても大きな値ではではないですが、やはり自己に関する論述が多いほど、メンタルヘルスのコーパスに該当しそうです

絶対主義的言葉の定義

次に、絶対主義的言葉を定義します

もとの、People with depression are more likely to say certain wordsによると、このような言葉が絶対主義的な言葉として定義されています

とりあえず、日本語に該当するコーパスに置き換えて処理します

これらの語が入っていた文章に、「これらの単語だけの分流問題と定義して」各単語の特徴量を見ていきます

すると、Amebloのコーパスですが、それらしい値がでてきます。
(+であるほどメンヘラコーパスに近くなるので、全体的な傾向として、やはり絶対的な言葉には意味がありそうです)  

結果

  • 5chコーパスが想定以上に役に立たなくて、結局まともな文体をなしているBlogサービスを利用することになったのですが、良い判断だと思いました。
  • うつより広域なメンタルヘルスに悩む人々を「メンタル・ヘルスブログ村」さまにより定義しましたが、Gigazine様の記事の妥当性やどう導いたのかがよく理解でき、同様の結果になりました
  • 割りと簡単にできるので、有名メディア様に取り上げられると割りと当たり前のことであってもバズったり、まとめ方、発信の仕方一つで影響力が異なるので、そのメディア論的なものは大変参考になりました