iggy_235
@iggy_235

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

心理的側面を考慮に入れた含意関係認識

解決したいこと

私は心理的な側面を考慮に入れた含意関係認識のためのモデルを構築出来たらなと考えています。SNSなどのテキストデータの分析の際に心理的側面を考慮に入れた含意関係認識の技術があれば、より正確な世論の調査や世間の反応の調査などが自動で行えると考えたためです。以下にその構想と問題点を書きます。構想を読んで問題点を解決してくれたらうれしいです。

では以下に構想を示します。
<構想>
意味的に含意していても心理的な側面を考慮に入れた場合含意していないケースやその真逆と言えるケースは数多く存在します。具体的には以下のような例を考えています。

例1-1)
前提文:
あなたのことなんて大嫌い
仮定文:
私はあの人が苦手だな
→含意しているようで真逆では?前提文は「好きの裏返し」かも、仮定文は「嫌いの気持ちを少しオブラートにつつんでいる」のでは?
例1-2)
前提文:
あなたのことなんて大嫌い
仮定文:
あなたのことを愛している
→一見含意していないようだが、もし前提文が「好きの裏返し」とするなら、含意関係にあるといえる。

例2)
前提文:
あそこであの決断は流石にあり得ない
仮定文:
あまり望ましい決断ではなかったかもしれない
→前提文は完全なる批判だが、仮定文は擁護の意思が見られる
例2-2)
前提文:
あそこであの決断は流石にあり得ない
仮定文:
よくあの場面であんな決断できたなあ
→仮定文は前後の文脈や状況によって皮肉と捉えることも、称賛と捉えることもできる。もし前後の文脈から皮肉であることが予測された場合、これは含意関係にあることになる。

いずれも前後の文脈や状況に依存する部分があるかもしれませんが、上に示した例のようなケースも実際に存在していると思います。そんな中で私の知る限りの従来の手法ではこれらは「意味的な側面(キーワード)など」から含意関係が推測され、上に示した例とは逆の判定が下されることが想定できます。ここで、私は心理的な側面を考慮に入れた含意関係モデルを構築出来たらなと考えました。

方針:
ユーザの投稿中に現れるスタイルの類似性を捉えた文ベクトルを非常にシンプルな手法で学習させたStyleSimCSEを活用します。これによってより高い精度での各投稿の感情の分析を行い、これらのデータを元にして、前提文に対して仮定文の心理状態が同傾向を示しているかどうかを判断できるようにします。

発生している問題

・そもそも上の構想はまともなものになっているか。
・どのようなデータセットを用いれば良いか。
・より具体的な手順や手法が知りたい。
※だいぶ抽象的な内容で、重要な手法の部分の詳細が抜けていると思いますが、私の考えていることが現実的に考えてどう思うかについて教えてほしいです。また、もし可能であれば、下のことを実現させるためのより具体的な手法を教えてください。もし下の内容があまり現実的でなかったり、微妙に感じたりした場合は、下の構想をなるべくくみ取った代替案などについてまで教えていただけたら本当に助かります。

0

2Answer

スタイル

"SNSユーザの投稿文章の癖"と仮定。

これによってより高い精度での各投稿の感情の分析を行い、

ここが全然わからない。
ユーザのスタイル(癖)がわかることと、ユーザの感情がわかることは全くつながっていないように思える。

ある癖を持つユーザ群の誰かが「あそこであの決断は流石にあり得ない」と投稿した際に、それが「怒り」の感情なのか、「嘲笑」の感情なのか、まったくの「無感情」なのかどうやってわかるの?StyleSimCSEなるものにそういった感情分析が可能なの?
また、ある投稿に対する感情が同じスタイル群の中で全員共通であるというのはどうやったらわかるの?スタイルは単純な文章の癖だけでなく感情も含めた分類になるように設計されているということ?
また、あるユーザが別のタイミングで「あそこであの決断は流石にあり得ない」と同じ内容の投稿したときに、その二つは同じ感情なのかな?怒りの時も嘲笑の時も「あそこであの決断は流石にあり得ない」と投稿するスタイルの可能性が十分にあるので、結局スタイルがわかっても感情がわからないじゃないかな?
と考える。
「高い精度での各投稿の感情の分析」はすでに出来ている?または出来ることが立証されている?

より正確な世論の調査や世間の反応の調査

そもそも上記に対して含意関係を正確に認識する必要があるのかがちょっと疑問。
具体的にどういう調査を想定しているのかわからないけど、例えば内閣の支持率調査と仮定する。これに関連する投稿を収集した際に、あえて逆のことを言ったり、本意が組めないほどオブラートに包まれていたりするケースってそんなに多いのかな?
世論調査が必要なほど大事な話題であれば、多くの人がSNSであろうが率直な自分の意見を投稿しているんじゃないかなーと思ってる。含意関係を正確に認識することでどの程度調査の精度が上がる見込み何だろう?
むしろSNSで世論を正確に調査するなら、機械的な投稿や複垢を検知、調査対象から除外するといった仕組みを構築したほうが精度はあがるんじゃない?と考えてしまう。
なんとなく研究テーマを探している段階という印象を受けたので、この辺りは縛りでどうしようもないという話かもしれませんが。

0Like

Comments

  1. @iggy_235

    Questioner

    ご意見ありがとうございます。「より正確な世論の調査や世間の反応の調査」については確かにおっしゃる通りでしたので、時間をかけてゆっくり考え直したいと思います。
    感情分析とStyleSimCSEについて説明不足な点があったため、私なりの仮説をもう一度しっかりと記述させていただきますので、読んでご意見いただけたら嬉しいです。

    高い精度での各投稿の感情分析について
    StyleSimCSEによって可能なこと
    ・スタイル類似性を捉えた文ベクトルの獲得
    ・人物特性の把握(ビッグファイブなどの予測性能が高い)
    ・そのユーザが書いたテキストかどうかを判定できる
    などのようなものです。この中でも特にスタイル類似性を捉えた文ベクトルを獲得できるのであれば、一般的なモデルよりも特定のユーザに特化した感情分析ができると考えたんです。具体的には、
    「つまんねえ」とか「~してえ」とか語気のあらい言葉を日常的に使う(ただの口の悪い人)と、普段からとても丁寧な言葉遣いをする人を比べた場合、仮定文に語気があらい言葉が含まれていたときの怒りのレベルが少し違う気がします。また、「別に」とか「~なんて」のような言葉は嘆きとか悲しみの感情が多そうですが、もともとそういう言葉をよく使う人の場合必ずしもそのような感情が含まれているとは限りません。
    これらのことから、StyleSimCSEでスタイル類似性を捉えた文ベクトルを獲得すればパーソナライズされた感情の分析が可能になると思ったので、各投稿に対する分析の精度が上がると考えました。

    現段階では上のような説明が私のできる最大限のもので、知識不足のため、これが本当に的を射た内容になっているのかはよくわかりません。上のような考え方は合っているのか、具体的に考えるならどのようなステップで研究を行っていったらよいかについてまで教えていただけたら本当に助かります。また、もし上の考えがあまり現実的でなかったり、無理がある場合はより良い別のアプローチなどがあればご教授いただければ幸いです。

  2. うーん。わかるようなわからないような。
    抽象的なロジックとしては、

    • 一般的に文章をもとにした感情の分析では文章のみから推定する。
    • その際の課題として皮肉やオブラートに包まれることによって、文章そのものとユーザの本意が異なることがある。
    • ユーザのスタイルを知ることで同じ文章でもユーザごとに異なる本意を推定できるようになる
    • それにより、一般的な手法より感情分析の精度が上がる

    ということだと認識している。
    精度的な課題はあるけど、一旦納得できるロジックではある。

    ただ具象的な話が途中から全く見えない。
    スタイルについては先行研究もあるし専用のモデルもあるので高精度で取れると思う。
    StyleSimCSEでスタイルを考慮した文章ベクトルがとれると思う。
    その先が全く見えない。
    結局どうやって感情分析をするの?文章ベクトルがわかると感情もおのずとわかるの?そもそも感情の定義は?
    検証をするためにはある投稿に対して投稿者がその瞬間にどういった感情だったのかというデータが大量に必要になるけどそれは集まる目処はついている?
    結局研究目的はどうする?ツールは目的を達成するためのものでゴールもなくツールのことだけを考えても意味ない。当たり前の話だけどツールの方向性はゴールによって定まる。

    本当に実現できるかはおいといて、現実的に出来そうな感情分析の技術やデータ収集の方法を検討するべき。データ収集を時間をかけてやったとしても、感情分析が全く出来なかったらすべてが意味なくなってしまう。
    なので、各要素に対してまずはあたりを付けて、何となくいけそうという雰囲気を醸し出してほしい。それをすることによって自分の中でも方針が立ちやすくなると思うし、一緒に研究する人や研究を支援してくれる人からアドバイスを受けやすくなると思う。(その技術だと精度的に怪しいねーとかそのデータだったら誰それが以前集めてたなーとか)

  3. @iggy_235

    Questioner

    返信遅くなってすみません。頂いたコメントを受けて、しばらく自力で考えてみました。とても長くなってしまうのですが、下に研究をすすめるための感情分析の手法の提案とデータセットの構築の仕方を考えたので、ご意見いただけると嬉しいです。


    ・SyleSimCSEの活用

    一旦StyleSimCSEの活用は取りやめることにしました。取り入れるためのハードルが今の自分にとっては高く、感情分析への応用の仕方がわからなかったためです。
    とりあえずは感情分析を活用し、心理的側面を考慮に入れた含意関係認識というテーマで行ってみようかと思います。


    ・感情分析のためのデータセットと感情分析の実行

    まずは、WRIMEデータセットです。
    これは日本語の感情分析の研究用データセットで、文章の書き手自身によるラベル(主観感情)と、書き手とは別の読み手によるラベル(客観感情)の両方が付与されています
    客観感情ラベルは、読み手3名のラベルと、3名の平均ラベルがあります(合計4種類)
    8種類 の感情の 強度_
    感情の種類は、Robert Plutchik の、8つの基本感情 (喜び・悲しみ・期待・驚き・怒り・恐れ・嫌悪・信頼)となっています。
    各感情に対して、強度を4段階(無、弱、中、強)でラベルが付与されています
    ※引用:https://qiita.com/izaki_shin/items/2b4573ee7fbea5ec8ed6
    このデータセットを使った感情分析のモデルを下のデータセットを用いてファインチューニングします。
    2つ目のデータセット:
    著作権などで問題がなければアニメや漫画または落語などの主に会話のラリーのみでストーリーが展開されていく物語のテキストデータなどを用います。もし著作権などに問題がありそうなら2ちゃんねるなどからスレッドごとのテキストデータを収集します。これらに対して人手で感情ラベルを付与していきます。(8つの基本感情に対して4段階の強度で、3人程度でラベル付けを行っていきます。また、自力でのデータセット作成は大変なのでchatGPTなどを使ってオーバーサンプリングしてデータを増やしたいと思います。
    ※2つ目のデータセットの構築にかなりの労力がかかるので、文脈を考慮に入れた8分類の感情分析に適したデータセットがあればそれをぜひ活用したいです。

    基本的にはbertのモデルを使って感情分析を行っていこうと思います。


    ・心理的側面を考慮に入れた含意関係認識のためのデータセット

    心理的側面を考慮に入れた含意関係認識のためのデータセットは以下のような設計を想定しています。
    '
    あなたなんて大嫌い
    Joy="0.001" Anticipation="0.002" Anger="0.2" Disguss="0.02" Sadness="0.3" Surprise="0.01" Fear="0.02" Trust="0.1"
    あなたのことを愛している
    Joy="0.3" Anticipation="0.2" Anger="0.001" Disguss="0.001" Sadness="0.001" Surprise="0.02" Fear="0.03" Trust="0.3"


    あなたなんて大嫌い
    Joy="0.001" Anticipation="0.002" Anger="0.2" Disguss="0.4" Sadness="0.02" Surprise="0.01" Fear="0.02" Trust="0.01"
    あなたのことを愛している
    Joy="0.3" Anticipation="0.2" Anger="0.001" Disguss="0.001" Sadness="0.001" Surprise="0.02" Fear="0.03" Trust="0.3"
    '
    これはhttps://nlp.ist.i.kyoto-u.ac.jp/index.php?Textual%20Entailment%20%E8%A9%95%E4%BE%A1%E3%83%87%E3%83%BC%E3%82%BF
    を参考にしました。
    このデータセットの構築方法は以下の通りです。


    心理的側面を考慮に入れた含意関係認識のためのデータセット構築方法

    ①chatGPTを使って前提文とその前後の文脈を大量に出力させます。
    具体的には以下のような感じです。(実際にchatGPTに出力させました)
    例1: 「もういいよ」
    本当は心配しているパターン A: 「君、最近元気ないけど、大丈夫?」 B: 「うん、大丈夫だよ。」 A: 「もういいよ。でも、本当は心配してるんだ。」
    本当に諦めているパターン A: 「また約束を破ったの?」 B: 「ごめん、忙しくて忘れてたんだ。」 A: 「もういいよ。もう期待しない。」
    例2: 「信じられない」
    驚きと喜びのパターン A: 「君の誕生日にサプライズパーティーを計画してたんだ。」 B: 「本当に?信じられない!でも、すごく嬉しい!」
    失望と怒りのパターン A: 「君のプロジェクト、また失敗したんだって?」 B: 「そうなんだ。頑張ったんだけどね。」 A: 「信じられない。もうがっかりだよ。」
    例3: 「やめてよ」
    冗談で言っているパターン A: 「君の昔の写真、見つけちゃったよ。」 B: 「やめてよ、恥ずかしいから!でも、ちょっと懐かしいね。」
    本気で止めてほしいパターン A: 「君の秘密をみんなに話しちゃおうかな。」 B: 「やめてよ、本当に!それは許せない。」
    例4: 「もう知らない」
    冗談で言っているパターン A: 「また遅刻しちゃったよ。」 B: 「もう知らない、君って本当に時間にルーズだね。でも、そんなところも好きだよ。」
    本気で怒っているパターン A: 「また約束を破ったの?」 B: 「もう知らない、勝手にして。もう限界だよ。」
    例5: 「ありがとう」
    感謝の気持ちを込めているパターン A: 「君のためにケーキを焼いたよ。」 B: 「ありがとう、本当に嬉しい!君って本当に優しいね。」
    皮肉を込めているパターン A: 「君の仕事、またミスがあったよ。」 B: 「ありがとう、いつも指摘してくれて。でも、もう少し優しく言ってほしいな。」
    例6: 「やっぱりね」
    予想通りで安心しているパターン A: 「君の提案、みんなに受け入れられたよ。」 B: 「やっぱりね、良かった!君の努力が報われたね。」
    失望しているパターン A: 「また彼が遅刻してきたよ。」 B: 「やっぱりね、もう期待してなかったけど。でも、やっぱり残念だよ。」
    例7: 「どうでもいい」
    本当に気にしていないパターン A: 「今日のランチ、何にする?」 B: 「どうでもいいよ、何でもいいから。でも、一緒に食べられるならそれでいい。」
    諦めの気持ちを込めているパターン A: 「またプロジェクトが延期になったよ。」 B: 「どうでもいい、もう疲れた。でも、次は頑張るよ。」
    例8: 「すごいね」
    本当に感心しているパターン A: 「この前の試験、満点だったんだ。」 B: 「すごいね、本当に頑張ったんだね!君の努力に感動したよ。」
    皮肉を込めているパターン A: 「また遅刻しちゃったよ。」 B: 「すごいね、君って本当に時間にルーズだね。でも、次は気をつけてね。」

    このようにして対象となるテキスト(「もういいよ」や「信じられない」など)の感情分析を行っていき、その結果を心理的側面を考慮に入れた含意関係認識用のデータセットのt1とe1に当てはめていきます。

    ②そして次にこの対象となる部分をマスクし、bertなどのAIに予測させることでより端的でわかりやすい表現を使ったデータを作成します。
    A: 「君、最近元気ないけど、大丈夫?」 B: 「うん、大丈夫だよ。」 A: 「本当に? でも、本当は心配してるんだ。」
    A: 「また約束を破ったの?」 B: 「ごめん、忙しくて忘れてたんだ。」 A: 「もう信じられないよ。 もう期待しない。」
    A: 「君の誕生日にサプライズパーティーを計画してたんだ。」 B: 「本当に?それはびっくり! でも、すごく嬉しい!」
    A: 「君のプロジェクト、また失敗したんだって?」 B: 「そうなんだ。頑張ったんだけどね。」 A: 「何度目だよ。 もうがっかりだよ。」
    A: 「君の昔の写真、見つけちゃったよ。」 B: 「うわぁ、やめてよ! 恥ずかしいから!でも、ちょっと懐かしいね。」
    A: 「君の秘密をみんなに話しちゃおうかな。」 B: 「それだけは勘弁して! 本当に!それは許せない。」
    A: 「また遅刻しちゃったよ。」 B: 「だから言ったでしょ。 君って本当に時間にルーズだね。でも、そんなところも好きだよ。」
    A: 「また約束を破ったの?」 B: 「もういいよ。 勝手にして。もう限界だよ。」
    A: 「君のためにケーキを焼いたよ。」 B: 「本当に?うれしい! 本当に嬉しい!君って本当に優しいね。」
    A: 「君の仕事、またミスがあったよ。」 B: 「またかぁ。 いつも指摘してくれて。でも、もう少し優しく言ってほしいな。」
    A: 「君の提案、みんなに受け入れられたよ。」 B: 「すごいね! 良かった!君の努力が報われたね。」
    A: 「また彼が遅刻してきたよ。」 B: 「やっぱりか。 もう期待してなかったけど。でも、やっぱり残念だよ。」
    A: 「今日のランチ、何にする?」 B: 「なんでもいいよ。 何でもいいから。でも、一緒に食べられるならそれでいい。」
    A: 「またプロジェクトが延期になったよ。」 B: 「もう疲れた。 もう疲れた。でも、次は頑張るよ。」
    A: 「この前の試験、満点だったんだ。」 B: 「おめでとう! 本当に頑張ったんだね!君の努力に感動したよ。」
    A: 「また遅刻しちゃったよ。」 B: 「だからちゃんとして。 君って本当に時間にルーズだね。でも、次は気をつけてね。」

    そして、ここで穴埋めとして挿入されたフレーズに対しても感情分析を行って、フレーズと感情分析のセットを対応するt2とe2へ挿入します。

    このようにして最終的には1000ペアくらいのデータセットを構築出来たら良いかと考えます。そうして、心理的側面を考慮に入れた含意関係認識のためのデータセットを構築していきます。

  4. 懸念事項はいくつもありますが、なんとなくいい感じに思えてきました。
    あとは研究のゴールだけかと思います。

  5. @iggy_235

    Questioner

    質問に付き合っていただきありがとうございました!頑張ってみます!

方針:
ユーザの投稿中に現れるスタイルの類似性を捉えた文ベクトルを非常にシンプルな手法で学習させたStyleSimCSEを活用します。これによってより高い精度での各投稿の感情の分析を行い、これらのデータを元にして、前提文に対して仮定文の心理状態が同傾向を示しているかどうかを判断できるようにします。

「StyleSimCSE」を知らないので効果を判断できませんが、実際にやってみてそれを活用したモデルと使わないモデルとで結果を比較・分析するしかないのではないでしょうか?

0Like

Comments

  1. @iggy_235

    Questioner

    返信ありがとうございます。回答いただいた通り、他のモデルと比較しながら実際に効果があるか試してみようと思います。

    StyleSimCSEについて詳しい情報が下のリンクにあるので、もしお時間あれば読んでご意見いただけると嬉しいです。
    https://www.anlp.jp/proceedings/annual_meeting/2024/pdf_dir/P2-18.pdf

  2. ここで、私は心理的な側面を考慮に入れた含意関係モデルを構築出来たらなと考えました。

    リンク( https://www.anlp.jp/proceedings/annual_meeting/2024/pdf_dir/P2-18.pdf )を読んだところでは「ユーザー同一性」を判断するもののようです。仮に文体の異なる投稿がされたとしても「異なるユーザー」という判断がされても感情については何ら仮定されないのでは?と思いました。
    「異なるユーザー」という判断を”通常と異なる心情”と捉えたとして、それがプラスの感情なのかマイナスの感情なのかすら分からないのでは?と思いました。

  3. @iggy_235

    Questioner

    リンクの内容までしっかりと読んで、返信していただきありがとうございます!できればもう少しお話伺いたいので、付き合っていただけると嬉しいです。

    私のイメージとしては、感情分析をするにあたって、その人の文の癖を鮮明にとらえられた方が感情分析の精度が上がるのではと考えました。そのためにもキーワードについて強く着目する既存のモデルよりもスタイルにフィーチャーしたStyleSimCSEをうまく活用できたらユーザの感情をより鮮明に分析できるのではないかと考えたんです。

    具体的には、
    「つまんねえ」とか「~してえ」とか語気のあらい言葉を日常的に使う(ただの口の悪い人)と、普段からとても丁寧な言葉遣いをする人を比べた場合、仮定文に語気があらい言葉が含まれていたときの怒りのレベルが少し違う気がします。また、「別に」とか「~なんて」のような言葉は嘆きとか悲しみの感情が多そうですが、もともとそういう言葉をよく使う人の場合必ずしもそのような感情が含まれているとは限りません。

    StyleSimCSEみたいにしてユーザの癖を考慮した感情分析を実現して、それを含意関係の認識に応用したいというのが基本的な構想でした。
    ですが、やはりそもそもの趣旨が違うと私の思い描いているような活用はできないのでしょうか。

  4. やりたい事をもう少しはっきりさせた方が良いのではないでしょうか?

    「より正確な世論の調査や世間の反応の調査などが自動で行える」なのか「その人の文の癖を鮮明にとらえ」て「感情分析の精度」を上げたいなのか?
    前者であれば「語気があらい言葉が含まれていたときの怒りのレベルが少し違う気がします」は全体の中ではノイズ程度のものかと思います。後者であれば普段と異なる言葉遣いを検知して分析することは可能かもしれません。

  5. @iggy_235

    Questioner

    お返事が遅くなってしまってすみません。何度も相談に乗っていただきありがとうございます。

    本来のテーマとしては心理的側面を考慮に入れた含意関係認識で、心理的側面を考慮するうえでその精度向上のためにstyleSimCSEが使えたらいいなと思っていました。ですが、色々考えていく中で今の自分の実力では、styleSimCSEを取り入れた感情分析のモデルを実現させるのはかなりハードルが高いと思ったので、一旦styleSimCSEは無しにして、感情分析と含意関係認識を組み合わせたものをやってみようかと思います。その先にstyleSimCSEなどで感情分析の精度向上などが図れたらそれが理想かなと思います。
    正直、前者の世論の調査などは後付けで考えたものでしたので、この研究の意義自体はもう少しきちんと練りなおせたらと考えています。

    たくさん相談に乗っていただいたのに、最初の質問内容から少しぶれる形になってしまい、申し訳ありません。いつも丁寧に返信してくれてありがとうございました。

  6. 基礎研究ということでしょうか。

    結局のところ文脈によるのだと思います。SNSでは身分を明かしているかどうかでも表現方法は変わりそうですし、出版物(小説とか漫画)ですと校正済ですよね。もちろん作者の個性は尊重されているとは思いますが。ワードマネジメントもより重要になっているかとも思いますので誤解を与えうる表現は少なくなっていくかもしれません。
    例1は作品の中では見ても現実には中々無いですよね。会話ならあるかもしれませんが「大嫌い」と文字にするのはハードル高そうだと思いました。
    例2はあるかもしれませんね。京都の方の言い回しが「言葉とは裏腹」などと言われますがそんな感じでしょうか。

  7. @iggy_235

    Questioner

    返信ありがとうございます。
    やはりどのようなところからデータを持ってくるかというはかなり重要ですね。SNSにしても出版物にしても理想通りのデータが収集できるかどうか難しい部分も多いなと感じました。
    事前学習済みのモデルに対して「京都の言い回しや嫌味・皮肉の例文」などをネットから持ってきて、ファインチューニングに使うみたいな手法もアリでしょうか?感情分析用のデータセットに使うか、ストレートな表現とセットにして含意関係認識用のデータセットに使うかは悩みどころなのですが、このやり方についてどう思われますでしょうか?ご意見いただけたら嬉しいです!

  8. @iggy_235

    Questioner

    ありがとうございます!私のやりたかったことに近しい内容で、本当に参考になりました!見つけてくださり、ありがとうございます!参考にして頑張ってみます!

Your answer might help someone💌