HyperCLOVAが出力するテキストの評価

佐藤敏紀氏:今度はこのような方向で作ってきたHyperCLOVAが出力するテキストの評価をしていきたいと思います。このテキストを評価する際に、日本語モデルに着目して、状況を見ていきたいと思います。最初に主観評価を行って、このモデルの性能を見ていこうと思います。

主観評価を行う際には、67億(6.7B)バラメタ、130億(13B)パラメタ、390億(39B)パラメタの日本語モデルを4つのタスクに対して適用することで、確認しました。

この4つすべてが対話のタスクなのですが、1つ目は語彙を理解できているか。2つ目は、異なるトピックからトピックに遷移する状況についていけるか。3つ目は、とあるトピックについてユーザーが話している時、目標となるようなリアクションを取れたかどうか。4つ目は、フリーに雑談する時に滑らかにできたかということになります。

これらの評価すべてを共通する5人のアノテーターに実行してもらいました。すべてPlayground上で実施しました。その結果について提示していきたいと思います。

それぞれの観点でどのように評価していくかというと、1個目は、会話の滑らかさが達成できているかどうか。2つ目は、このトピックに対して追従することが全体としてというよりは応答ごとにできているかどうか。3つ目は、話題の提供を応答ごとにできているかどうか。4つ目は、ゴールを達成できているか。例えば1番目のタスクだと、言葉の意味をわかっているかなどが達成しているかどうかの評価になっています。

会話の滑らかさが達成できているかどうか

1個目のタスクのこちらはすごくわかりやすくて、語彙を理解できているかどうかを評価していきます。例えばHyperCLOVAに「小学校とは何ですか?」「小学校ってどう思いますか?」という形式でで、レベル1の質問として「(これは)何ですか?」、レベル2の質問として「(これについて)どう思っていますか?」ということを聞いていきます。

これを初等語彙で、小学校以下であれば間違いなく知っているというような語彙のセットと、中等語彙の中学校以上の人であれば間違いなく知っているというセットを作って、こちらについて質問をしていきます。その結果はだいたいこんな感じで、評価観点を付けていきます。

その評価観点の付け方は、できている場合は1、よくわからない場合は0、できていない場合は-1というかたちで付けていって、ここから先は、正解できた、つまり+1が付いているものだけを集計している状態になっています。

結果を見てみると、6.7B、13B、39Bと見た時に、39Bの性能が圧倒的です。会話の滑らかさ、そしてトピックの追従度は98パーセントの性能を誇っています。他方で、話題提供は全然できていないことがわかります。そしてゴールの達成の量ですが、意味がわかっているか・意味について的確に答えられるかに関しては、パラメータが上がっていくに連れて、きちんと段階的に上がっていくことを確認できています。

トピックに対して追従することが応答ごとにできているか

さて次に、トピックに追従できるかについて見ていきましょう。この評価ではユーザーがTopic Aに話したあと、10会話以内にTopic Bに移動します。それについて行けるかを見ていくわけですね。例えば最初に新型コロナウイルスについて話していたあと、10会話以内にインバウンドについて話す、という具合です。

結果はこちらのようになっています。こちらはちょっとおもしろい状況になっていまして、会話の滑らかさに関しては、13Bが少し下がっています。それどころかトピックの追従に関してもゴールの達成に関しても、13Bは性能が出ていません。

これについてはちょっと詳細な分析がまだ終わっていないのですが、最終的な結果として、39Bまで進むと圧倒的に性能が高まるので、13Bで何らか問題が起きていたものの、39Bで問題解決した、という状況です。このようなパラメータをより高めていくことによって問題が一気に解決することは、大規模汎用言語モデルの構築においてはよくあることだったりします。

具体的な数値を見ていくと、話題提供以外に関しては9割の性能を達成しているので、これはまったく問題がないと思います。

話題の提供を応答ごとにできているかどうか

3つ目の評価観点は、トピックに対してユーザーが、Aの列にある、よりポジティブな感情を持っている場合とBの列にある少しネガティブな感情を持っている場合の、それぞれに対して的確な応答ができるかを評価していくタスクです。

これはどういうことを評価したいかというと、ユーザーがポジティブなA列の感情を持っている時は「そうですね」と同意してほしくて、B列の感情を持っている場合、ネガティブ寄りな感情を持っている場合は安易に乗っからないで、「うーん、そう思うんですね。でもそういう感情を持つことはどうなんですかね」みたいな感じで、ちょっと抑制の効いた応答をしてほしいとなっています。

このタスクがどの程度達成できたのかと言いますと、ユーザーがポジティブな感情を持っている場合、こちらについてはぜんぜん問題がありません。9割程度ですね。話題の提供に関しては、あいかわらずできないことがわかっています。

他方で、ユーザーがちょっとネガティブな、感情を持っている場合にはどうなるかというと、会話の滑らかさ、そして話題の追従には問題がないことが39Bモデルではわかっています。他方で、安易に同意しなかったかという面に関しては、できるかできないかが半々ぐらいになってしまっているわけです。これについては、すごく深い課題があると思っています。

ゴールを達成できているか

最後にフリーの雑談ができたかどうかは、ただ雑談をするだけなので何も難しいことはありません。アノテーターの方が楽しんで雑談できれば、大成功ということになっています。

こちらについてもまったく問題がなく、会話の円滑さ・トピックへの追従に関してもとても性能が高かったです。

ただ不思議なことに、分析は終わっていませんが、13Bのモデルに関しては、6.7Bよりも下がってしまう傾向がありました。これも実験を繰り返したりモデルの構築を繰り返したりしていくと、状況が変わっていくと考えています。

全体として、39Bモデルに関するモデルの状況を確認すると、このようになっています。課題は、基礎的な語彙を理解できるかどうかに関するゴールが8割程度しか達成できていないこと。これは人間からすると、わからないことがまだたくさんあるということです。こちらについては、知識ベースを導入するなどして、より深い知識探索を統合していく必要があります。

もう1個、ネガティブ感情への反応は、より深い解析、例えばテキスト含意認識の結果を踏まえたフィルタリングなどが必要になっていくと考えています。またパラメータの増加にかかわらず、話題の提供部分に関してはぜんぜん振るっていないです。これについては、個別に機能を開発しなければいけないと考えています。

課題①:日本語自体の難しさ

さてLINEのNLP開発チームの研究目標の1つは構築した言語モデルを搭載したシステムから、高品質で安全なアウトプットを実現していくことです。将来的には、LINEの顧客向けの言語モデル応用の研究開発にも、同レベルの安全な出力を提供したいと考えています。

しかし、お客さまに使ってもらっている製品に対するHyperCLOVAの適用は、まだ達成できていません。直接お客さまにお届けするためには、検討を始めたり乗り越えたりする課題がまだ残っているからです。

課題の1つは、日本語自体の難しさによって、コーパスや生成されるテキストの品質維持が難しい、コストがかかるということがあります。

日本語は実は他のさまざまな言語と比較して習得難易度がとても高い言語です。日本語の話者はひらがな・カタカナ・漢字・ローマ字など、さまざまな文字を使って1個の文章を作りますし、同じ単語を複数回表記する場合には書き方を変えることがしばしばあるわけですね。

日本語の日常における必須語彙は8,000語以上と言われており、この量は他の国と比べてかなり多いんです。日本語ではさまざまな表記や同じ音の異なる語があって、これらを幅広く理解していかなければ、日常会話ができないんです。

また、相手の状況や立場に応じて必要とする語彙を切り替えていく必要もあります。さらに日本語には方言が多くて、同じ意味の言葉を話していても、日本全国で違う単語の組み合わせになることが知られています。

最後に、日本語の話者は文中の主語や目的語を省略してしまいがちなので、機械であってもテキストを読む際にはその文中の単語の省略を考慮しながら意味を解釈していく必要があります。これらは、全部とても難しいんです。

なのでこのような困難に対して、LINEも取り組んでいるんですが、実は以前からこのような根本的な問題に対して取り組んでいる研究機関、企業さまがいますので、そちらとの共同研究も進行しています。こちらについては、まとまった成果が出てき次第、お届けしたいと思っています。

課題②:テキスト生成の難易度

もう1つの課題はテキスト生成の難易度に関するものです。まず、生成されたテキストがリスクになる可能性です。コーパスに含まれるバイアスやコーパスの表記の改善、出力されるテキストの真実性や安全性の確保が必要となってきます。

これは、従来は多くの企業がニュース記事や広告など、人手を十分に入れられるテキストを作成する現場ではよく出てきた課題なのですが、HyperCLOVAがすごく滑らかなテキストを生成できて、人間の創作活動を補助できる可能性が一定量あるため、現在この課題に直面しています。

次に、AI倫理の実装が必要です。AIが出力する生成テキストが多くのお客さまと同様な倫理的な水準を満たすこと、これはとても望ましいです。そのためには、モデル構築時のコーパスデータや推定時のクエリなどについても、倫理的水準を満たしていることを確認する必要があります。

人間が見た際に不快な状況になっていないか、気持ちが悪くなったりしないか、過度に性的であったり攻撃的であったりしないかなど、このような観点以外にもさまざまな倫理的な側面に配慮していく必要があります。

LINEのAIカンパニーは、複数のアプローチでAI倫理を実装したり、またそのAI倫理の実装に対して攻撃したりする手法を実装したりするようなチームを持っています。こちらの研究開発テーマについては、複数のチームで進行しています。

さらに自動評価の実現があります。今後さまざまなタスクに対してHyperCLOVAを適用する際に、属性が必要となる生成したテキストの正確性、一貫性、目標達成の有無などの指標があります。

自動評価が容易なパープレキシティと相関が必ずしも高くなく、意味的な側面や前後の文脈を踏まえているかどうかの判定が必要な場合があり、その指標をどうやって自動化していくか。このような多くの研究者が悩んでいる課題に、今LINEも取り組んでいます。これらの課題それぞれに対して、NLP開発チームが取り組んだ成果については、学術的な発表やシステムの実装として今後の公表を目指しています。

大規模汎用言語モデルを使った質問応答システムについて

LINEでは、さまざまな指摘の側面を網羅的な自動評価について実施している最中なんですが、ここからは、大規模汎用言語モデルを使った質問応答システムについて一定の評価結果が出たので、その要約をお伝えしたいと思います。

今回、端的に示すのは、私たちがRCQA possible only taskと呼んでいるタスクにおける評価です。このタスクは、オリジナルのRCQAタスクから回答不可能な事例を除去したものです。HyperCLOVAはテキストの生成はできるのですが、穴埋めができません。したがって何らか後ろ側に間違ったテキストが出力されてしまいます。そのようにして、絶対に間違うと決まってる事例は評価対象外にしたということです。

正解かどうかの判定は、出力結果の一部に正解が内包されているかどうかで判定しています。そしてFew-shotで、データセットのdevデータの中からランダムに生成しています。最大数が4になっています。これは、最長のFew-shotの状況を事前に調べたところ、最大で4までしか使えないということがわかったからです。

結果はこちらです。着目ポイントとしては、文脈を含めた390億(39B)パラメタのモデルがFew-shotを使った時にもっとも良い性能を達成できたということです。こちらは、RCQAのオリジナルのタスクではなくRCQA possible only taskなのですが、89.83パーセントという、とても高い正解率を誇っています。

また、この問題がどのくらい難しいのかを見るために、コンテキストを削除して言語モデルだけで解いてみたところ、80.51パーセントの性能を達成できました。同じ性能をBERTで達成できることも確認しました。実験を同じ条件で揃えるため、BERTと同じ条件で実験し直したため、HyperCLOVAの結果が若干異なりますが、HyperCLOVAもBERTもお互いベストを尽くしている状態になっています。

BERTのlargeモデルには、LINE LM Corpusの一部を使いました。結果としてはこのようになっていて、きちんとファインチューニングをしたBERTは、HyperCLOVAのファインチューニングをしていないモデルの性能を超えることができました。こちらからわかることは、BERTであっても大規模な言語モデルをファインチューニングしたり、特定の分野に特化させることによって、こういうことができることです。

それに対してHyperCLOVAは、特に深いチューニングをしたりしなくてもプロンプティングをしたりパラメータを探索したりすることによって、BERTを優越できます。

HyperCLOVAで食洗機さんに話かけてみる

終盤は、対話システムのデモをお見せしたいと思います。今回はHyperCLOVAで食洗機さんに話かけてみたいと思います。ではご覧ください。

最初はトークルームを作成していきますが、食洗機さんに話かけたいので食洗機さんというユーザーを作りました。「こんにちは。前から一回話してみたかったんです」という対話に対して「はい、そうですか」と、ちょっと冷た目の応答が来ていますね。

これに対して、「便利そうなのでどうですか?」と質問をしてみると「私に任せておいてよ」と、頼もしい回答が返ってきました。「コツとかありますか?」と聞いてみると「汚れたお皿ときれいなお皿を分けてほしい」という返答が戻ってきたりしています。「あと他にもコツがあるんですか?」みたいなことを聞いてみると、いろいろあるんですけど「食べ残しがあると私の中が汚れちゃうのよね」と、自分が食洗機としてきちんと話せている状況を実現できています。

ちなみに「お湯は熱いですか?」と聞いてみると「熱めかな?」というかたちで、さらにこちらに気を遣ってくれるなど、優しい一面も見せてくれています。最後にちょっと気を抜いて「そうなんですか。気をつけます」と言ったら、やはりちょっと冷たい対応で「はーい。じゃあ、またね」と、あっさり終わられてしまいました。

以上が、このHyperCLOVA Friendsというシステムを使って食器洗い乾燥機さんと話してみた結果になっています。

冒頭でも示したことですが、このデモからわかることは、HyperCLOVAがロールプレイングをある程度できることです。特に個別のキャラごとの調整なしに、応答が滑らかで意味を捉えることもできていたことは、とても良い点だと思います。他方で、若干応答が冷たかったですし、最後も若干冷たかったです。

このような反応を喜ぶ人もいますが、事前にどんなユーザーと話すかどうかは想定できませんので、今回のようなボットを作る際は、応答のスタンスを安定させるためペルソナを管理する必要がありそうです。また、このように応答ができるということは、当然ながらある程度データのバイアスの状況を受けます。この影響の良い面だけを取り出せたら良い、と思っています。

さて、発言の内容が、実はところどころ曖昧でした。今回は問題がなかったのですが、実際にお客さまに提供する際は、その応答が大丈夫かどうかを事前に検証できると良さそうです。以上のような課題を持っていますが、概ね有効な結果だったのではないかと思っています。

さてこのように、ある程度の可能性が見えるHyperCLOVAや同等の言語モデルは本当に必要なのでしょうか? 答えは予算が許すなら必要です。言語処理の歴史は、AI関連技術の発展と強く連動していて、新しく生まれた技術をどんどん取り込んできました。大規模汎用言語モデルはNLPにとって間違いなく大きな分岐点です。

この分岐点は、少なくとも使う側に、できればモデルを作る側や使っていただく側にまわるのが正解だと、私たちは信じています。私たちの選択の結果は、HyperCLOVAの最新情報として今後も各所でお届けできると思います。

LINEの未来とNLPの関連

最後に、LINEの未来とNLPの関連について触れておきます。LINEが公開されて10年、私たちがNLPの専門家のみなさんからもらう2番目に多い質問は「LINEにはもうやれることなんか残っていないよね?」です。しかしそれは、「明確に違う」とお伝えしておきます。

例えば、HyperCLOVAに関連する主な課題、全部取り組んではいますが、こんなにある状況です。こんなにたくさんの課題が、明日終わるわけないです。またLINEは音楽やブログ、ライブなど50を超えるサービスブランドと、さらに紐づく無数のサービスを運営しているんです。そしてそれらのサービスは、NLPの技術による本質的な改善がまだできる状況です。

LINEでは、さまざまな粒度のNLP技術の研究と開発ができます。ぜひLINEで私たちと一緒にチャレンジしましょう。まずは、LINEの採用窓口にメールをいただきたいのですが、それよりも気軽に今のLINEのNLPがわかる機会を1つ作ります。

それがHyperCLOVAのHands-onです。CLOVA StudioやHyperCLOVAのAPIを使った小さなHands-onを近日中に開催します。席の数は限られていますが、こちらについては、後ほどLINE DEVELOPERSのTwitterアカウントからお伝えしますので、情報をお待ちいただければと思います。間違いなく、HyperCLOVAの現状を確認して楽しんでいただけると思います。

そしてもう1つお伝えしたいことがあります。それはLINEが、オープンにシェアすることが大好きな会社であるということです。LINEは2021年度に、LINEの言語モデルのオープンソースバージョンを公開します。ただ、もちろんHyperCLOVA以外のモデルです。そしてこちらの性能目標は、既存のオープンソースの言語モデル以上を達成できたら良いと思っていますし、定期的に更新できたら良いとも思っています。こちらも続報をお待ちいただければと思います。

最後になりますが、この発表ではLINEのHyperCLOVAに関する最新の情報をお伝えしてきました。そして大規模汎用言語モデルの魅力についても、お伝えいたしました。大規模汎用言語モデルとプロンプティングについて、対話システムや質問を例に報告しました。驚くほど高い品質が得られるケースがあるということ、そしてその場しのぎでは解決できない課題がどうやらたくさんあること、これらを共有できたと思っています。

LINEではHyperCLOVAに限らず、NLPのR&Dがしっかりとできます。ぜひ一緒にチャレンジしてほしいです。これからも、LINEからのNLP関連の情報にぜひご期待ください。講演は以上です。どうもありがとうございます。