Do we still need Human Annotators? Prompting Large Language Models for Aspect Sentiment Quad Prediction
- Aspect Sentiment Quad Prediction(ASQP)を、少数例プロンプトで大規模言語モデルに解かせる実験報告である。
- Gemma-3-27BとGemma-3-4Bを用い、レストラン、航空、ホテル、オンライン講座の5データセットで、0から50件の例示を比較している。
- 50件程度の注釈がある場合、Gemma-3-27Bは専用にファインチューニングした小型モデルに近づくが、完全な訓練集合を使う手法にはなお及ばない。
論文の面白いところ
この論文は、感情分析を単なる肯定・否定の分類として扱わない。レビュー文の中から、評価対象、対象カテゴリ、感情極性、感情を表す語句を同時に取り出す。たとえば「sushi は great で、service は even better」といった複数の意見を、ひとつの文から別々の四つ組として得る課題である。著者らは、この細かな注釈を大量に作る負担に注目し、少数例だけをプロンプトに入れた場合にどこまで届くかを調べている。対象はRest15、Rest16に限られず、航空レビューのFlightABSA、ホテルとオンライン講座のOATSも含む。既存研究が主に10ショットまでであったのに対し、本研究は50ショットまで広げている。結果は、注釈者が不要になるというより、少数の注釈をよく選べば、専用学習の代替に近い場面がある、という慎重なものである。とくに自己一貫性による多数決が精度を上げる一方、再現率を下げる場合がある点は、実務上も扱いやすい知見である。
問題設定
Aspect Sentiment Quad Prediction(ASQP)は、Aspect-Based Sentiment Analysis(ABSA)の細かな形式である。入力はレビュー文であり、出力は意見ごとの四つ組である。四つ組には、文中の対象表現である aspect term、対象の種類を示す aspect category、positive・negative・neutral の sentiment polarity、感情を述べる opinion term が含まれる。通常の文書単位の感情分類では、「このレビューは肯定的である」といった粗い判断にとどまる。ASQPでは、「料理はよいが接客は悪い」のような文を、料理への肯定と接客への否定として分ける必要がある。したがって、訓練データを作るには、文中の範囲とカテゴリと極性をそろえて注釈しなければならない。本研究の問いは、Gemma-3のような大規模言語モデルに、少数の注釈例を見せるだけでこの作業をどの程度任せられるかである。あわせて、意見語を除いた三つ組を出す Target Aspect Sentiment Detection(TASD)も評価している。
提案手法
著者らは、新しいモデルを訓練するのではなく、プロンプト設計と出力検証による評価手順を用いる。プロンプトには、四つの感情要素の説明、利用可能な aspect category の一覧、出力形式、そして0、10、20、30、40、50件の少数例を入れる。出力形式は、('aspect term', 'aspect category', 'sentiment polarity', 'opinion term') のリストである。aspect term と opinion term は、入力文に現れる表記と一致することを求める。この点は、文中にない語を補ってしまう大規模言語モデルの癖を抑えるために重要である。モデルはGemma-3-27BとGemma-3-4Bで、Ollama上で4ビット量子化して実行される。各条件では5つの乱数シードで生成し、その平均を報告する。さらに、同じ入力に対する5出力のうち、少なくとも3回現れたタプルを採用する自己一貫性の設定も試している。出力が形式、極性、カテゴリ、文中表現の条件を満たさない場合は再生成し、10回失敗すれば空のラベルとして扱う。
結果
ASQPでは、Gemma-3-27BがGemma-3-4Bを明確に上回った。Rest16では、自己一貫性ありのGemma-3-27Bが20ショットでF1 51.54を得た。これは、完全な訓練集合で学習したMVPのF1 60.39には届かないが、10から50件だけで学習した専用モデル群よりは多くの条件で高い。50ショットではRest15でF1 41.74、Rest16でF1 51.10、FlightABSAでF1 48.37、OATS HotelsでF1 43.83を示した。一方、OATS CourseraではF1が25前後にとどまり、ドメインやカテゴリ数の影響が残る。TASDでは成績がさらに高く、Rest16の30ショット設定でF1 68.93に達した。これはMVPの完全学習時のF1 72.76に近い。自己一貫性は多くの場合に精度を上げたが、少数派の正しい候補を落とすため、再現率を下げることもあった。要素別に見ると、感情極性はF1 90を超える条件が多いが、aspect term と opinion term の厳密な抽出は難しい。著者らは、公開データが大規模言語モデルの事前学習に含まれている可能性を制限事項として挙げている。
具体例
たとえば、航空会社のレビューに「The check-in staff were helpful, but the seat was cramped and the meal was tasteless.」という文があるとする。ASQPでは、この文全体にひとつの否定または肯定を付けるのではなく、複数の意見を分けて取り出す。手法はプロンプト内の例を参照しながら、check-in staff を接客または地上サービスに関する対象、helpful を肯定的な意見語として扱う。続いて、seat には cramped という否定的な意見語を結び、座席や快適性のカテゴリに置く。さらに、meal と tasteless を組にして、食事に関する否定的な四つ組を出すことが期待される。出力は、おおむね3つのタプルからなるリストになる。間違えやすい点は、staff だけを対象にして check-in を落とすこと、cramped を機内全体への評価として広げすぎること、また tasteless を食事ではなくサービスに結びつけてしまうことである。自己一貫性を使う場合、5回の生成で同じ四つ組が繰り返し出たものを残すため、偶然の余分な抽出は減りやすい。ただし、正しいが表記が少し揺れた候補は多数決から漏れることがある。