初心者向けの生成AIの優しい紹介

'Introduction to Beginner-Friendly Generative AI'

ジェネラティブAIの全体像を理解しましょう

Image by Susan Cipriano on Pixabay

過去数ヶ月間、いわゆる「ジェネラティブAI」の台頭が見られました。これは人工知能(AI)のサブフィールドです。ChatGPTのようなツールは、最も話題になっており、多くの仕事で日常的なタスクの基本的なツールとなりつつあります(プログラミングの学習にも使われます)。

「DALL-E」、「ChatGPT」、「ジェネラティブAI」といった言葉が、ここ数ヶ月社会やメディア、同僚とのチャット、私たちの世界に関連するあらゆるものに広まっています。本当に、誰もがそれについて話しています。

では、ジェネラティブAIとは何なのでしょうか?それは「通常の」AIとはどこが違うのでしょうか?

この記事では、ジェネラティブAIの全体像を明確にします。したがって、議論に参加したことがあるけれども、このトピックについて明確なアイデアを持っていない場合は、この記事が間違いなく役立つでしょう。

ここでは、ジェネラティブAIの裏側にある基本を理解するための解説を行います。心配しないでください:ここではコードはありません。アイデアと説明だけで、非常に短く簡潔に提示されます。特に、大規模言語モデルと画像生成モデルに焦点を当てます。

以下はここで学ぶ内容の要約です:

目次:ジェネラティブAIと従来のAIの違いは何か?大規模言語モデル画像生成

ジェネラティブAIと従来のAIの違いは何か?

ジェネラティブAIは、画像、テキスト、コード、音楽などの新しいデータを生成するアルゴリズムを作成するAIのサブフィールドです。

ジェネラティブAIと「従来のAI」との大きな違いは、前者がトレーニングデータに基づいて新しいデータを生成することです。また、ジェネラティブAIは「従来のAI」が扱えないタイプのデータでも動作します。

もう少し技術的に言うと:

  • 「従来のAI」は識別的AIと定義されます。この場合、機械学習モデルをトレーニングして、新しい未知のデータに対して予測や分類を行えるようにします。これらの機械学習モデルは数値のみ、時にはテキスト(例えば、自然言語処理の場合)と連携することができます。
  • ジェネラティブAIでは、さまざまなソースからのデータを使用して機械学習モデルをトレーニングし、トレーニングデータに似た出力を生成します。このような機械学習モデルは、数値、テキスト、画像、音声など、さまざまな種類のデータと連携することができます。

プロセスを視覚化してみましょう:

The process behind traditional AI. Image by Author.

従来のAIでは、データから機械学習モデルをトレーニングし、新しい未知のデータを入力して、予測や分類を行うことができます。

例えば、私たちは犬を画像から認識するために機械学習モデルをトレーニングしました。その後、トレーニング済みの機械学習モデルに新しく見たことのない犬の写真を与えると、それが犬を表しているかどうかを分類することができます。

これは、分類問題の場合のディープラーニングアルゴリズムの典型的なタスクです。

The process behind generative AI. Image by Author.

一方、ジェネラティブAIの場合、豊富なデータを使用してさまざまなソースからのデータで機械学習モデルをトレーニングします。そして、ユーザーが入力した自然言語のクエリ(プロンプト)によって、モデルはトレーニングされたデータに似た出力を提供します。

例に固執するために、私たちのモデルは、犬が何であるかを説明する(テキスト)データを含む大量のデータで訓練されています。そして、ユーザーがモデルに犬が何であるかを尋ねると、モデルは自然言語で犬が何であるかを説明します。

これはChatGPTなどのツールが行う典型的なタスクです。

さて、いくつかの種類の生成型AIモデルを見てみましょう。

大規模言語モデル

大規模言語モデル(LLM)から始めて様々な種類の生成型AIサブフィールドについて掘り下げていきましょう。LLMとは(Wikipediaより):

自己教師あり学習や半教師あり学習を使用して、大量の未ラベルテキストを使って訓練された、数千万から数十億のパラメータ(パラメータが多い)を持つ人工ニューラルネットワークで構成されるコンピュータ化された言語モデル。

大規模言語モデルという用語には形式的な定義はありませんが、通常、大量のコーパスで「事前訓練」された数百万から数十億のパラメータを持つ深層学習モデルを指します。

LLMは、巨大なテキストの量(これが「大規模」と呼ばれる理由)で数百万または数十億のパラメータでトレーニングされたディープラーニング(DL)モデル(別名、ニューラルネットワーク)であり、以下のようないくつかの言語の問題を解決するのに役立ちます:

  • テキスト分類
  • 質問応答
  • ドキュメント要約
  • テキスト生成

したがって、通常のMLモデルとのもう1つの重要な違いは、この場合、異なるタスクに使用できるDLアルゴリズムをトレーニングできることです。

詳しく説明しましょう。

以前に見たように、画像中の犬を認識できるシステムを開発する必要がある場合、新しい、目に見えない画像が犬を表しているかどうかを教えてくれる分類タスクを解決するために、DLアルゴリズムをトレーニングする必要があります。それだけです。

一方、LLMを訓練することで、上記で説明したすべてのタスクに役立つことができます。そのため、LLMを訓練するためには計算能力(およびお金!)が必要です(ペタバイトのデータが必要です!)。

LLMはプロンプトによってユーザーにクエリされます。ここで、プロンプトのデザインとプロンプトエンジニアリングの違いを見つけなければなりません:

  • プロンプトデザイン . これは、システムが実行している特定のタスクに適しているプロンプトを作成する芸術です。たとえば、LLMにテキストを英語からイタリア語に翻訳するように依頼する場合、イタリア語に翻訳してほしいテキストを英語で具体的に尋ねる必要があります。
  • プロンプトエンジニアリング . これは、プロンプトを作成してLLMのパフォーマンスを向上させるプロセスです。必要に応じて、特定のキーワード、特定の文脈や例、および必要な場合は望ましい出力など、ドメインの知識を使用してプロンプトに詳細を追加することを意味します。

もちろん、プロンプトを使う際には、両方を混ぜることもあります。たとえば、特定の知識領域で関心がある英語からイタリア語への翻訳が必要な場合は、両方を使用することがあります。

したがって、例えば、プロンプトは次のようになります:

以下をイタリア語に翻訳してください:

梁は正応力にさらされます。

機械学の領域にいることを考慮して、「正応力」はそれに関連している必要があります。

というのも、「正(normal)」と「応力(stress)」はモデル(人間でも同様)に誤解される可能性があるからです。

3種類のLLM

LLMには3種類あります:

  • 汎用言語モデル . これらは、訓練データの言語に基づいて単語(またはフレーズ)を予測することができます。例えば、メールの自動補完機能を考えてみてください。
  • 命令チューニングモデル . この種のモデルは、入力で指示された応答を予測するために訓練されます。与えられたテキストの要約は典型的な例です。
  • 対話チューニングモデル . これらは、ユーザーとの対話を行い、後続の応答を使用して訓練されます。AIによるチャットボットは典型的な例です。

とはいえ、実際に配布されているモデルには、混合された機能があることを考慮してください。少なくとも、これらのタイプのいずれかに典型的なアクションを実行できる可能性があります。

例えば、ChatGPTを考えると、次のように明確に述べることができます:

  • 入力を与えられた指示に対して応答を予測できます。実際、例えばテキストを要約したり、提示した特定の議題に関する洞察を提供したりすることができます。つまり、インストラクションに調整されたモデルのような機能を持っています。
  • ユーザーとの対話を行うために訓練されています。これは非常に明確であり、満足のいく回答が得られるまで連続的なプロンプトで動作します。したがって、ダイアログに調整されたモデルのような機能もあります。

画像生成

画像生成は、一部の人が信じるかもしれませんが、かなり長い間存在しています。

いずれにせよ、最近では「DALL-E」や「安定拡散」といったツールの登場により、特に世界中の一般の人々にもこの技術が普及しました。

画像生成は、以下の4つのカテゴリに分けることができます:

  • 変分オートエンコーダー(VAE)。変分オートエンコーダーは、「ニューラルネットワークがその全体の構造の一部である確率的生成モデル」です。具体的には、画像を圧縮サイズにエンコードし、元のサイズにデコードします。このプロセス中に、データの分布を学習します。
  • 生成的対抗モデル(GAN)。これは一般的に最もよく知られており、少なくとも生成AIの分野で共鳴する言葉として知られています。GANは、「2つのニューラルネットワークが互いに対抗し、一方の利得が他方の損失であるMLフレームワークのクラス」です。つまり、1つのニューラルネットワークが画像を生成し、他方のニューラルネットワークがそれが実在のものか偽物かを予測します。
  • オートリグレッシブモデル。統計学では、オートリグレッシブモデルはランダムプロセスの表現です。画像生成の文脈では、これらのモデルは画像をピクセルの系列として扱い、画像を生成します。
  • ディフュージョンモデル。ディフュージョンモデルは熱力学に着想を得ており、画像生成のサブフィールドで最も有望で興味深いモデルです。

ディフュージョンモデルの内部で実行されるプロセスは以下の通りです:

  • 順方向分布プロセス。画像の構造をデータ分布内で「破壊」する初期の反復プロセスがあります。簡単に言えば、画像に反復的にノイズを加えて、すべてのピクセルが純粋なノイズになり、人間の目では画像が認識できなくなるまで行います。
  • 逆ディフュージョンプロセス。その後、実際の学習プロセスである逆ディフュージョンプロセスがあります。これにより、データの構造が復元されます。モデルは、ピクセルを「ノイズ除去」して画像を再作成する方法を学習します。

すべてを結びつける力

ここまで注意を保っていただけたなら、自然に「はい、フェデリコ、わかりました。でも、私には何かが足りません:「DALL-E」を使用すると、私はプロンプトを挿入して画像を出力します。それについて話していませんでしたね?!」という疑問が浮かぶはずです。

実際には、話していませんでした。

上記では、画像生成の最も有望で(現在最も使用されている)モデルについて簡単な説明をしましたが、プロンプトの部分が欠けています。

実際には、彼らの高レベルでの動作方法について議論しました。つまり、学習プロセスの簡単な説明をしました。

しかし、これらのモデルの真の力は、LLMと組み合わされたときに現れます。実際には、自然言語を入力として理解し、それに応じて画像を生成できるモデルの組み合わせは、私たちにプロンプトに基づいて出力を求める力を与えてくれます。

つまり、私たちは、自然言語をモデルに入力することができると同時に、それを理解し、それに基づいて画像を生成するモデルの力を組み合わせたのです。

それはまさにスーパーパワーではありませんか?!?

まとめ

まとめると、生成AIは、トレーニングデータに似た新しいデータを生成するAIのサブフィールドです。

一方、LLMはトレーニングデータに基づいてテキストを生成し、画像生成モデルはトレーニング画像に基づいて新しい画像を生成できますが、少なくとも画像の場合、生成AIの真の力は、LLMと画像生成モデルの組み合わせによって発揮されます。これにより、プロンプトを入力として画像を作成することが可能になります。

注意:この記事はGoogleが提供する生成AIコースに触発されて自由に作成されたものであり、一部の参考文献はそこから取られています。生成AIの理解を深めるために、このコースを受講することをお勧めします。

無料のPython電子書籍:

Pythonデータサイエンスの学習を始めましたが、苦戦していますか? 私のニュースレターに登録して、無料の電子書籍を入手しましょう。これによって、Pythonデータサイエンスを学ぶための正しい学習パスと実践的な経験が得られます。

ストーリーを楽しんだら、私の紹介リンクを通じて5ドル/月でVoAGIメンバーになってください。追加料金はかかりませんが、私には少額の手数料が入ります:

VoAGIメンバーとして、あなたの会費の一部が読んでいる作家に支払われ、すべてのストーリーにフルアクセスできます…

federicotrotta.medium.com

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more