0
会員になると、いいね!でマイページに保存できます。
画像生成や文章生成のAIの能力が人間に匹敵する水準に達し、高品質な画像・動画・文書が大量生産されるようになったことで社会全体が大きく揺れています。中でも自然言語処理の分野で大きな成果を挙げた文章生成AIの応用範囲は極めて広く、あらゆる企業の業務に影響を与えると言っても過言ではありません。その先駆けとなったのが「ChatGPT」です。ChatGPTは無料で誰でも使えるよう開放されており、手軽に活用することができます。本記事では、ChatGPTの基礎やその仕組み、メリット/デメリットについて、わかりやすく基礎を解説していきます。
ChatGPTとは何か
ChatGPTとは、人工知能(AI)の開発を行うOpenAIが開発したLLM(大規模言語モデル)である「GPT」を会話向けに最適化したサービスのことです。
生成AIで1分にまとめた動画
GPTとは「Generative Pre-training Transformer」の略で、日本語で言えば「事前学習済み文章生成Transformer」という意味になります。
この「Transformer」の意味については、「
生成AI」や「
GPT3.0」を解説した記事でも軽く触れていますが、これはディープラーニングの言語学習を飛躍的に効率化したアーキテクチャのことで、従来の手法では不可能だった超巨大な言語モデルの構築を可能にした技術です。
皆さんが利用したことがあるかもしれない「ChatGPT(無料版)」には現在、2022年に発表されたLLMである「GPT3.5」が使われています。LLMの複雑さを意味する「パラメータ数」は初期に発表された「GPT-1」の1000倍以上にもなっており、大きな進化を遂げてきたことが分かります。たとえば、GPT-1では機械翻訳にも苦戦していた自然言語処理も、GPT-2とGPT-3では自然な文章を生成するまでに成長しました。
大規模言語モデル(LLM)、それぞれの違いとは?
GPT-3.5はGPT-3がベースになっている言語モデルで、GPT-3を会話向けに改良したモデルと公式には説明されています。
GPTシリーズは、いずれも巨大なニューラルネットワークをベースにしたディープラーニング型のTransformerアーキテクチャを使っているLLMという点では同じ構造ですが、それぞれ異なる点があります。
たとえば、GPT-1では膨大な学習データを使ってLLMを形作る「事前学習」の後に「ファインチューニング」と呼ばれる特定のタスクに合わせたデータを用いて再学習させる微調整が行われています。それに対し、GPT-2とGPT-3ではそうした調整が行われていません。それは、一定規模の学習データでLLMを構成すれば、チューニングを行わなくても汎用性の高い文章生成ができることが分かったからです。
ただ、自然な文章を生成すると言っても、このままでは善悪のつかない子供のような状態であるため「誤情報の生成」や「危険な情報の生成」なども平気で行ってしまいます。研究用にターゲットを絞って言語モデルを提供するならともかく、このままでは一般向けにサービスとして提供することはできません。
そこで「人間の好みや価値観」に合わせた「ファインチューニング(微調整)」とAIが自ら学ぶ「
強化学習」を用いて、人間にとって利益のある文章を生成し、害のある文章生成を減らすための改良が行われました。それがGPT-3.5というLLMであり、これを会話型のサービスにしたものがChatGPTというわけです。
GPT-3.0よりもはるかに優れたGPT-4においても、ChatGPTとして提供する前にGPT-3.5と同様のチューニングと学習は行われており、会話ツールとして極めて優れた性能を発揮しています。そして、OpenAIはこうして開発したChatGPTを含めたツールと技術を「OpenAI API」を通して提供しており、会話ツールであるChatGPT以外にもGPT-3やGPT-4といった「言語モデル」や画像生成の「DALL-E」、音声認識を行う「Whisper」などを提供しています。
TransformerというLLMの基礎技術を発明したグーグルも「BERT」「LaMDA」「PaLM」というLLMを開発しています。そうしたLLMを使えば簡単にChatGPTのような優れた会話ツールを作れそうに思えますが、実はそうではありません。ChatGPTのような水準に達するには、もうひと工夫必要なのです。その差はどこにあるのでしょうか。
ChatGPTでは、OpenAIが用いた強化学習「
RLHF(Reinforcement Learning from Human Feedback」をベースにしており、少し特殊な強化学習を利用しているのです。
ChatGPTの利用上のメリット/デメリット
ここまでの解説でChatGPTの基本的な特性については理解できたのではないでしょうか。それを踏まえた上で現時点での(主に無料版の)ChatGPTの利点と欠点について簡単に解説していきます。
■メリット
- ・優れた自然言語処理能力により、人間とほとんど変わらない自然な回答を生成できる。
- ・ユーザーの入力形式を問わず、あらゆる質問に対して迅速に回答が生成できる。
- ・膨大な学習データを元に、幅広いトピックについて有益な情報を提供できる。
- ・プロンプトを工夫することで複雑なタスクに対応可能、多種多様な作業の効率化が可能になる。
- ・24時間365日、時間を問わずに回答が得られる。
■デメリット
- ・常に正しい回答を生成するわけではなく、誤った回答を生成することも多い。
- ・中立的かつ自然で流暢な自然言語で誤った回答をするため、真実であると誤解されやすい。
- ・思考プロセスがブラックボックスになっているため説明可能性が低い。
- ・対話記憶が各スレッドに依存し、長期的な文脈を踏まえた会話が難しい。
- ・感情や概念を正しく理解しているわけではないため、表面的な会話しかできない。
- ・学習データの偏りから回答内容にバイアスがかかる可能性がある。
- ・爆発物や毒薬の作り方など、危険な情報を出力する可能性がある。
ChatGPTの具体的な活用例6選
現在、有料版のChatGPTでは画像生成の「DALL-E」、音声認識を行う「Whisper」などの機能が統合されており、プログラミングコードの生成・実行が可能な「
Code Interpreter」などの機能も追加・統合されています。ここでは無料版のChatGPTでできる基本的な利用例を紹介します。
活用例(1):文章校正/翻訳
WordやGoogle Documentにも校正機能が付いていますが、同じようなことはChatGPTでも可能です。文法的な誤りを指摘・修正しつつ、理由について説明してもらえるほか、正しい文法ではなく、砕けた表現やかしこまった表現に変えてもらうこともできます。語学学習のほか、自分で書いた英文をビジネスや論文などの用途に合わせて校正してもらうような用途でも使われます。
活用例(2):文書の要約
著名な小説や文書であれば、そのまま要約文を生成してくれます。また、ChatGPTのデータに含まれていない文書でも、プロンプトに文章を流し込むことで要約してもらうことは可能です。ただ、その場合には入力情報に限度があるので、長文の要約をする場合には分割するなどの工夫が必要でしょう。
活用例(3):コードデバッグ/プログラミング
ChatGPTにとってコンピュータ言語というのは自然言語よりも得意なジャンルで、無料版でもプログラミングやデバックについて尋ねることができます。すでにエンジニアに広く利用されており、コーディング作業が大幅に効率化されています。また、GPT-4であれば簡単なゲームくらいはそのままコードをコピペして動くレベルで作ってくれます。
活用例(4):小説など創作物の生成
事実に基づく文章生成以外にも、創作的な文章の生成も可能です。簡単なテーマを与えれば、そのテーマに沿って短編小説を生成してくれます。出版物に比べると、いささか見劣りのするクオリティにはなりますが、創作のアイデアを提供してもらうような用途であれば使えるのではないでしょうか。
活用例(5):おすすめ情報の提示
映画や小説などのおすすめのコンテンツを提示してもらうことも可能です。たとえば映画の内容を含めて提示してくれるため、自分が知らないジャンルや好きなジャンルで見落としているコンテンツを確認する用途でも使えるのではないでしょうか。
活用例(6):具体的事例やアイデアの提示
このほかにも、よく使われるのが「具体例」や「アイデア」の提示です。ChatGPTが出力する文章が正確とは限りません。しかし、最終的な判断は人間に委ねられる前提で、事例やアイデアを提示してもらうのには極めて有用です。実は、ここまでの使用事例に用いたプロンプトのいくつかはChatGPTのアイデアを活用しています。
能力を最大限引き出す?プロンプトエンジニアリングとは
有料版のChatGPTではさまざまなプラグインが利用可能になっており、レストランの検索と予約、スケジュールの管理などもリアルタイムで行えるようになっています。
また、誰でもすぐに使えるレベルのシンプルなプロンプト(Zero-Shot Prompting)だけではChatGPTの性能を最大限に引き出しているとは言えません。より構造的なプロンプトや具体例を示すことで、目的の回答を得られやすくするプロンプトなど、さまざまなプロンプトの作り方があります。
より高度なプロンプトを学びたい場合には「
プロンプトエンジニアリングガイド」を参照してください。公式のガイドではありませんが、プロンプトにおいて特に重要な「Few-shot Prompting(ヒントや事例を付けた質問)」「Chain-of-Thought Prompting(段階的に考えさせる質問)」などの使い方が学べます。
ここで説明されているプロンプトエンジニアリングとは、生成AIに適切な回答出力させるためのプロンプト設計を研究する分野で、優れたプロンプト作成技術を有するエンジニアを「
プロンプトエンジニア」と呼ぶようになっています。
このような技術を用いて優れたプロンプトを設計することで、短時間で欲しい回答を得られるようになります。これは特に高速で回答する代わりに精度が落ちる小規模なLLMにおいて大きな力を発揮するため、ChatGPTを大規模に活用する上で必須のスキルとなっています。
ただ、ChatGPTはアップデートによって進化を続けており、今までに「できない」「苦手」とされていた部分を順次克服しています。今では高度なプロンプト設計が必要だった複雑なタスクも、いつの間にかシンプルなプロンプトで回答してくれるようになり、リアルタイムの情報に弱いという欠点も「検索機能の追加」によって克服されていますし、危険な情報を出力する問題についても少しずつ改善されています。
まだまだ多くの課題を抱えているものの、問題の多くはChatGPTの性能不足に原因があるのではなく、扱う側の人間がChatGPTを誤って理解したまま利用することに原因があるケースも増えてくるでしょう。そうした場合に備えて、ChatGPTについて正しく理解しておく必要があります。
評価する
いいね!でぜひ著者を応援してください
会員になると、いいね!でマイページに保存できます。
関連タグ