テックブログ vol.2 -「キャッチコピー感性評価」を行うBERTの多次元回帰モデル構築-
はじめに
感性AIでエンジニアをしている本村です。
弊社の「感性AIアナリティクス」というツールでは「キャッチコピー感性評価」という機能があり、キャッチコピーに対して定量的に印象評価を行うことが可能になっております。
このキャッチコピーからの定量的な印象評価を実現するために用いられているのが、BERT(Bidirectional Encoder Representations from Transformers)という言語モデルになっています。
この記事ではBERTによるキャッチコピーの印象評価の予測を目的とした、Pythonによる学習モデルの実装について、実際に弊社が独自に収集しているアンケートデータの一部を用いて説明していきます。
なお、実際のサービス上では、この記事で作成したモデルが動作しているわけではなく、別途調整されたモデルが動作しております。
印象評価尺度の予測について
「感性AIアナリティクス」では印象評価尺度として43個の尺度を使用しています(例:「明るい - 暗い」「冷たい - 温かい」など)。キャッチコピーを入力するとそれらの43尺度についての印象評価値を予測するモデルが必要です。そのため、今回使用するモデルのタイプとしては多次元の回帰モデルということになります。
学習データ
弊社が開発したアンケート収集ツールにより収集した、キャッチコピーに対する印象評価値を答えてもらうアンケート、単語に対する印象評価値を答えてもらうアンケートの2種類のデータを用います。今回は、キャッチコピー50個に対して111名、単語100個に対して294名の回答を参考に説明していきます。データは継続的に収集していっているので、今回はその一部でのご紹介です。
キャッチコピーに対する印象評価値を答えてもらうアンケートのデータの一部
単語に対する印象評価値を答えてもらうアンケートのデータの一部
(一部の)尺度ごとの分布を可視化すると以下のようになります。
多次元の尺度を一度に学習するにあたり尺度ごとに分散が異なっていると、分散の大きな尺度におけるロスに大きく学習が左右されるという懸念点があります。そのため、すべての尺度の分散が1になるように調整し、その値を学習することにします。
これをキャッチコピーと単語のアンケートの両方で行うことで、機械学習の入力となるキャッチコピー・単語のテキス