ChatGPTについて~応用編~
賢く使うテクニック

2022年11月に公開されたChatGPTは、生成した文章の自然さや人間らしさがSNSなどで広く注目を集めました。さらに翌年3月には「GPT-4」がリリースされ、従来型のモデルであるGPT-3やGPT3.5と比較して高い性能が話題となりました。これを受けて、数多くの企業や個人がChatGPTを活用したサービスの開発を試みたり、新たなアプリケーションについて考えています。しかし、ChatGPTが具体的に何を達成できるのか、あるいはどのように活用すれば良いのかを理解するのは難しいと感じる方もいるかもしれません。この記事では、ChatGPTが可能にする機能について、より深く掘り下げて紹介します。 

【関連記事】ChatGPTについて~初心者編~

品質を向上させるフィードバックとは

ChatGPTが生成する文章は必ずしも完璧ではないため、実際の運用を通じて定期的なテストや改善が必要です。フィードバックのメリットや手法について紹介します。 

対話の流れを管理

ChatGPTを使用した対話システムの設計は、対話の流れを適切に管理することが必要です。例えば、先ほどの答えに対して「もう少しわかりやすく説明して」と入力すると、初めの回答を踏まえてよりかみ砕いた言い方で答えてくれます。このようにユーザーの問い合わせに対して次の質問や回答を予め提示することで、よりスムーズなコミュニケーションが実現可能です。 

フィードバックによる精度向上

ユーザーはフィードバックを通じて、ChatGPTの学習データを修正しその生成精度向上に貢献することが期待されているのです。ChatGPTが生成した文章が誤っている場合でも、ユーザーから「意味が通じない」というフィードバックを受け取ると、ChatGPTは学習データを修正し、より品質の高い回答を生成することができるようになります。 

フィードバックの種類

自然言語処理におけるフィードバックは、上記のようなユーザーによるものと正解ラベルによるものに大別されます。正解ラベルによるフィードバックは、人間による生成データとChatGPTの生成データを比較して誤差を計算する方法です。ChatGPTによるデータがどの程度正確であるかを評価し、それに基づいてモデルを修正することができます。一方、ユーザーによるフィードバックは、ChatGPTが生成したテキストデータがどの程度自然であるかをユーザーが評価し、それに基づいてモデルを修正する手法です。 

【参考】 ChatGPTの精度向上!フィードバック機能を活用したテキスト生成技術の改善方法 

多言語対応でグローバル化を

ChatGPTは日本語だけでなく複数の言語に対応しているため、海外の顧客とのコミュニケーションをスムーズに行いビジネスに活かすことができます。 

対応している言語

ChatGPTは英語に特化した言語モデルですが、英語をはじめとする欧州諸語、アジア諸語、アラビア語など多様な言語に対応しています。具体的には、スペイン語、フランス語、ドイツ語、イタリア語、ポルトガル語、オランダ語、ロシア語、中国語(簡体字・繁体字)、韓国語、タイ語、インドネシア語などです。 

対応していない言語

世界の言語数は3,000~5,000とも言われ、全ての言語に対応するのは不可能です。特に、マイノリティ言語やレトロフレックス言語など人口や使用頻度が少ない言語、発展途上国の言語や人口や文化的な特性からデータが不足している言語、古代文字や未解読とされている言語などの対応には困難が伴います。しかし、情勢の変化や新しい発見、研究成果になどによって正確なデータが揃えば対応できる可能性もあるでしょう。 

ChatGPTの翻訳

ChatGPTは日本語と英語の翻訳以外にも、日本語・英語と中国語、韓国語、フランス語、スペイン語、ドイツ語など対応している言語間の翻訳が可能です。 ChatGPT を使った翻訳は高速に処理されるため、大量の翻訳や即時性が求められる通訳などにも活用できます。 

しかし、専門的な用語や表現には限界があり、意図しない翻訳結果が発生することがあるため、フィードバックを行い改善を促すことが大切です。 

インテント分類でより適切な回答を

自社に特化したAIモデルを構築する際、ユーザーの意図(インテント)を正確に分類することが重要となります。このインテントの分類を精確に行うことで、より適切かつ具体的な回答をユーザーに返すことが可能となります。

現行のChatGPTには、明示的なインテント分類の機能は組み込まれていません。しかし、大量のテキストデータを学習しているため、ChatGPTは一定の文脈からユーザーの意図をある程度推測し、適切な応答を試みることができます。

インテントの分類とは

インテントとは、入力されたテキストがどのような意図をもつのかをカテゴリー分けするための概念です。ユーザの発話内容を解析し、求められる回答を特定する際に重要となります。インテントを適切に分類することで、発話の意図をより正確に理解し意図に沿ったアプローチをすることが可能です。 

分類を行うメリット

インテントデータとは意志を持って行われた行動のデータであり、顧客が何に興味や関心を持っているのかを表します。このデータの活用で、購買意欲の高い顧客を早期に発見しその動向をうかがうことができるため、タイムリーなアプローチが可能です。また、インテントと自社サイトのデータを組み合わせることで、顧客アプローチのバリエーションが広がり、より高度なマーケティングが実現するでしょう。 

インテント分類の課題

会話から人間の意図を正確に読み取ることはとても難しいことです。例えば「パスワードを忘れてサイトにログインできない」という課題を表現する言葉は「ログインできない」「パスワードを忘れた」「パスワードが機能しない」など無数のバリエーションがあります。適切な支援のためには、この課題の背後にあるインテントが「パスワードのリセットに関する支援である」と理解することが必要です。このような基本的なインテントですら、正しく理解させるには複雑な自然言語処理と分類手法が必要であるため、専門的なスキルや時間を要します。 

ファインチューニングで独自性を追加

さらに、汎用的なモデルに特定のタスクに適応させるファインチューニングについて見ていきましょう。 

ファインチューニングとは

ファインチューニングとは、汎用的な回答を行う事前学習済みモデルに対して、企業の社内情報やユーザ固有のデータなどで追加学習させる手法のことです。ファインチューニングを行うことで特定業務の実務に沿った回答ができるようになります。さらに、事前学習済み言語モデルに独自のデータで追加トレーニングを行い、新たな言語モデルを作成することも可能です。1から言語モデルの構築をする必要がないため、独自データが少なくても問題ありません。 

ファインチューニングのメリット

少ない学習データで特定のタスクへ特化させたり、特徴を反映させた言語モデルを作成できたりすることがファインチューニングのメリットです。 

通常、言語モデルの作成には膨大なコストと時間がかかますが、ファインチューニングなら少ない学習量でも特定の用途にモデルを特化させることが可能です。 

ファインチューニングする際の注意点

ファインチューニングは、既存の言語モデルを基にしているため学習データが最新であるとは限らないうえ、チャットボットのように決められた回答を強制することもできません。例えば「XXXと言われたら〇〇〇と返す」といったことをさせたい場合、ファインチューニングは確実ではありません。台詞が決められたチャットボット用の学習データを用いてファインチューニングを行えば、たしかに想定した回答を返しやすいチャットボット用の言語モデルはできあがります。しかし回答の生成は確率的に行われるため、想定した回答にならない場合があることに注意が必要です。 

【参考】【chatGPTをユーザーが学習させる】ファインチューニングについて 

 

ChatGPTを賢く使うためには

ChatGPTは高度なAI技術によって、人間のように自然な会話ができると注目されていますが完璧なものではありません。まだ学習できていないデータや想定外の回答が返されることも考えられます。このような場面を減らすため、今回ご紹介した様々な方法で改善を促していくことがChatGPTを活用するうえで重要です。ChatGPTに任せきりにせず、成長させる手助けを人間が行い、ChatGPTをビジネスに効果的に利用していきましょう。 

この記事を書いた人

XIT編集部 スペシャリスト 塚越友貴