Closed4
辞書ベースの日本語感情分析ライブラリ「oseti」を試す
npaka先生を4年遅れで追いかけていることになるな。
GitHubレポジトリ
インストール
Colaboratoryで。
Mecabと辞書をインストール
!apt install mecab mecab-ipadic-utf8
MecabのPythonラッパーをインストール
!pip install mecab-python3
osetiをインストール
!pip install oseti
!pip freeze | grep oseti
出力
oseti==0.4.2
mecabの設定ファイルは/usr/local/etc/mecabrc
を期待しているが、パッケージでインストールされたものは/etc/mecabrc
にあるので、シンボリックリンクを貼っておく。
!ln -s /etc/mecabrc /usr/local/etc/mecabrc
感情分析
ではテキストを使って解析してみる。
import oseti
analyzer = oseti.Analyzer()
analyze
文単位でネガポジ判定。スコアは-1〜1。
analyzer.analyze('今日の競馬はボロ負けやった。。。でも楽しかった!')
出力
[-1.0, 1.0]
1文にネガポジ要素があれば平均スコアになる。
analyzer.analyze('今日の競馬はボロ負けやったけど、いいレースが見れたし、楽しかった!')
出力
[0.3333333333333333]
count_polarity
ネガポジ要素の数を返す。
analyzer.count_polarity('今日の競馬はボロ負けやった。。。でも楽しかった!')
出力
[{'positive': 0, 'negative': 1}, {'positive': 1, 'negative': 0}]
analyzer.count_polarity('今日の競馬はボロ負けやったけど、いいレースが見れたし、楽しかった!')
出力
[{'positive': 2, 'negative': 1}]
analyze_detail
解析の詳細
analyzer.analyze_detail('今日の競馬はボロ負けやった。。。でも楽しかった!')
出力
[{'positive': [], 'negative': ['負け'], 'score': -1.0},
{'positive': ['楽しい'], 'negative': [], 'score': 1.0}]
analyzer.analyze_detail('今日の競馬はボロ負けやったけど、いいレースが見れたし、楽しかった!')
出力
[{'positive': ['いい', '楽しい'], 'negative': ['負け'], 'score': 0.3333333333333333}]
ユーザ辞書の適用
無理やりいじってみる。
analyzer = oseti.Analyzer(
# 名詞単位での指定
word_dict={'競馬': 'n', 'レース': 'p'},
# 用言(動詞・形容詞等)単位での指定
wago_dict={'見れる': 'ポジ'}
)
それぞれのネガティブ・ポジティブの指定が違うのだけど、これは日本語評価極性辞書 のそれぞれのフォーマットに合わせてあるように見える。
analyzer.analyze_detail('今日の競馬はボロ負けやった。。。でも楽しかった!')
出力
[{'positive': [], 'negative': ['競馬', '負け'], 'score': -1.0},
{'positive': ['楽しい'], 'negative': [], 'score': 1.0}]
analyzer.analyze_detail('今日の競馬はボロ負けやったけど、いいレースが見れたし、楽しかった!')
出力
[{'positive': ['いい', 'レース', '見れる', '楽しい'],
'negative': ['競馬', '負け'],
'score': 0.3333333333333333}]
ライセンスはMIT
ただし、日本語評価極性辞書の使用にはクレジットが必要
日本語評価極性辞書(用言編)ver.1.0(2008年12月版)/ Japanese Sentiment Dictionary (Volume of Verbs and Adjectives) ver. 1.0
- wago.121808.pn
- 著作者: 東北大学 乾・岡崎研究室 / Author(s): Inui-Okazaki Laboratory, Tohoku University
- 本辞書を利用される場合は参考文献 1 (小林, 2005) を引用ください.
- クレジットを明記していただければ,商用利用も可能です.
日本語評価極性辞書(名詞編)ver.1.0(2008年12月版)/ Japanese Sentiment Dictionary (Volume of Nouns) ver. 1.0
- pn.csv.m3.120408.trim
- 著作者: 東北大学 乾・岡崎研究室 / Author(s): Inui-Okazaki Laboratory, Tohoku University
- 本辞書を利用される場合は参考文献 2 (東山, 2008) を引用ください.
- クレジットを明記していただければ,商用利用も可能です.
環境構築の参考
このスクラップは2025/02/15にクローズされました