生成 AI とは?意味をわかりやすく解説
生成 AI とは人工知能テクノロジーの一種であり、大規模なデータセットでトレーニングするディープラーニングモデルを使用して新しいコンテンツを生成します。生成 AI モデルは、新しいデータの生成に使われる点で、差異に基づいてデータを分類する判別 AI モデルとは対照的です。現在、生成 AI アプリケーションは、文章、写真、コードの作成などに使用されています。生成 AI は一般的に、チャットボット、画像の作成と編集、ソフトウェアコードのサポート、および科学的な研究に使用されています。
プロフェッショナルな環境では、創造的なアイデアを素早く視覚化し、退屈で時間のかかる仕事を効率的に処理するために、生成 AI が活用されています。生成 AI は、医療研究や製品デザインといった先進分野で専門家の仕事をサポートし、人々の生活を大きく改善する可能性を秘めています。同時に AI は新たなリスクももたらすため、ユーザーはそれを理解し、軽減に努める必要があります。
近年登場した有名な生成 AI アプリには、OpenAI の ChatGPT や DALL-E、GitHub CoPilot、マイクロソフトの Bing Chat、Google の Bard、Midjourney、Stable Diffusion、Adobe Firefly などがあります。Red Hat は IBM と提携して Red Hat® Ansible® Lightspeed(および IBM watsonx Code Assistant)を作成しました。これは、開発者が Ansible コンテンツをより効率的に作成できるようにする生成 AI サービスです。他にも多くの組織が、ルーチンタスクを自動化して効率を向上させるために、独自の生成 AI システムの実験を行っています。
生成 AI の仕組み
ChatGPT との驚くほど自然な会話や、自分の説明から Midjourney がレンダリングしたリアルな画像を体験したことがある方なら、生成 AI がまるで魔法のように感じられることをご存知でしょう。何がこの魔法を可能にしているのでしょうか。
ユーザーが使用している AI アプリの裏では、ディープラーニングモデルが膨大なトレーニングデータから学習したパターンを再現し、その後、人間が設定したパラメーターの中で処理を行い、学んだことに基づいて新しいものを作成します。
ディープラーニングモデルは、トレーニングデータのコピーは保存しません。代わりに、似たようなデータポイントを近くに配置した、エンコードされたバージョンを保存します。この表現がデコードされ、同様の特性を持つ新しいオリジナルデータの構築に使用されます。
カスタム生成 AI アプリの構築には、モデルのほか、人間による教師付きファインチューニングやユースケースに特化したデータのレイヤーなどの調整も必要になります。
現在人気のある生成 AI アプリのほとんどは、ユーザーのプロンプトに反応します。ユーザーが欲しいものを自然言語で記述すると、アプリは求められたものをまるで魔法のように返してくれます。
生成 AI のユースケース
文章や画像における生成 AI の躍進は、ニュースの見出しを賑わせ、人々の想像力をかきたてています。急速に進歩するこのテクノロジーの初期のユースケースをいくつかご紹介します。
ライティング: ChatGPT がニュースの見出しを賑わせる (そして自らそれを書き始める) 以前から、生成 AI システムは人間の文章を模倣するのが得意でした。言語翻訳ツールは、生成 AI モデルの最初のユースケースのひとつです。現在の生成 AI ツールは、ほぼすべてのトピックにおいて、高品質なコンテンツ作成のプロンプトに対応することができます。これらのツールは、あらゆる長さや文体に対応できます。
画像生成: 生成 AI 画像ツールは、あらゆる題材やスタイルのプロンプトに応じて高品質の画像を合成することができます。Adobe Photoshop の Generative Fill などの AI ツールでは、既存の作品に新しい要素を加えることができます。
音声と音楽の生成: AI ボーカルツールは、記述されたテキストと人の声のサンプル音声を使って、本物の人間の声を模倣したナレーションや歌声を作ることができます。プロンプトやサンプルから人工的な音楽を作れるツールもあります。
動画生成: 新たな製品では、モーショングラフィックスを作成するためにさまざまな生成 AI テクノロジーが試みられています。例えば、静止画に音声を合わせ、被写体の口や表情を話しているように見せることができるものもあります。
コードの生成と補完: 生成 AI ツールの一部では、ソフトウェア開発者を支援するために、書かれたプロンプトを受け取り、要求に応じてコンピュータコードを出力することができます。
データの拡張: 生成 AI は、実データを使用することが不可能、あるいは好ましくない場合に、大量の合成データを作成することができます。例えば、個人を特定できるような情報を含まずに、医療データを理解するモデルをトレーニングしたい場合、合成データは有用です。また、トレーニングやテストの目的で、小規模なデータセットや不完全なデータセットをより大きな合成データセットに引き伸ばすために使用することもできます。
ディープラーニングとは
生成 AI を可能にするディープラーニングは、大量のデータを分析および解釈するための機械学習の 1 つの手法です。ディープラーニングは、ディープ・ニューラル・ラーニングやディープ・ニューラル・ネットワークとも呼ばれ、観測を通じてコンピュータに学習させるもので、人間が知識を獲得する方法を模しています。ディープラーニングは、人間の言語を理解するという問題、すなわち自然言語処理 (NLP) にコンピューターを応用する上で重要な概念です。
ディープラーニングを、入力レイヤーから始まって出力レイヤーで終わるフローチャートの一種と考えるとよいでしょう。この 2 つのレイヤーに挟まれているのが「隠れレイヤー」で、さまざまなレベルで情報を処理し、新しいデータを次々と受け取りながら動作を調整し、適応させます。ディープラーニングモデルには数百もの隠れレイヤーがあり、そのそれぞれがデータセット内の関係とパターンを見つけるために機能しています。
複数のノードで構成される入力レイヤーから始めて、データがモデルに流れ込み、分類されてから次のレイヤーに進みます。データが各レイヤーを進む経路は、各ノードで設定された計算に基づきます。その後データが各レイヤーを通過し、その中で観測を取り込み、結果としてデータの出力となる最終分析が作成されます。
ディープラーニングの進歩を加速させたテクノロジーのひとつが、GPU (グラフィックス・プロセッシング・ユニット) です。GPU はもともと、ビデオゲームのグラフィックスのレンダリングを高速化するために設計されました。しかし、多数の計算を効率的に並列処理する GPU はディープラーニングのワークロードに適していることが判明しました。
ディープラーニングモデルのサイズと速度における飛躍的進歩が、現在の画期的な生成 AI アプリの波をもたらしました。
ニューラルネットワークとは
ニューラルネットワークとは、人間の脳のつながりのような、生物学的な神経システムを模倣した情報処理方法です。一見無関係に見える情報の集合に、AI がどのようにつながりを作り出せるかということがポイントです。ニューラルネットワークの概念は、ディープラーニングと密接な関係があります。
ディープラーニングモデルは、どのようにニューラルネットワークの概念を使ってデータポイントを結びつけるのでしょうか。まず、人間の脳の仕組みから見てみましょう。人間の脳には相互につながる多数の神経 (ニューロン) があり、脳が入ってくるデータを処理するときに情報の伝達役として機能します。このニューロンは電気信号と化学的物質による信号を使用して相互に通信し、脳のさまざまな部分と情報をやりとりします。
人工ニューラルネットワーク (ANN) は、この生体現象に基づいています。ただし、この現象はノードと呼ばれるソフトウェアモジュールから作成される人工ニューロンで形成されています。これらのノードは数理計算 (脳の場合は化学的信号) を使用して情報の通信と転送を行います。このシミュレーションされたニューラルネットワーク (SNN) は、データポイントをクラスタリングし、予測することでデータを処理します。
さまざまなデータに適した多様なニューラルネットワーク技術が存在します。リカレントニューラルネットワーク (RNN) は、言語を処理する方法として単語を順番に学習するなど、連続したデータを使用するモデルです。
トランスフォーマーは RNN のアイデアを基にしており、言語をより高速に処理できる特殊なニューラルネットワークアーキテクチャです。トランスフォーマーは文中の単語の関係性を学習するので、各単語を逐次的に取り込む RNN に比べて効率的な処理法です。
大規模言語モデル (LLM) は、膨大な汎化データセットにトランスフォーマーを適用して学習させるディープラーニングモデルです。LLM は、人気の AI チャットやテキストツールの多くを支えています。
もうひとつのディープラーニング技術である拡散モデルは、画像生成に適していることが証明されています。拡散モデルは、自然な画像がぼやけた視覚ノイズに変わる過程を学習します。画像生成ツールは、このプロセスを反転させ、ランダムなノイズパターンから始めて現実的な画像に似るまで洗練させます。
ディープラーニングモデルは、パラメータで記述することができます。たとえば、ローン申込書からの 10 の入力で学習させた単純な信用予測モデルは、10 のパラメータを持ちます。対照的に、LLM は、ものによっては何十億ものパラメーターを持ちます。ChatGPT を支える基盤モデルのひとつである OpenAI の Generative Pre-trained Transformer 4 (GPT-4) は、1 兆個のパラメータを持つと報告されています。
基盤モデルとは
基盤モデルとは、膨大な量の汎用データで学習させたディープラーニングモデルを指します。トレーニングを経た基盤モデルは、個別のユースケースのために改良することができます。名前通り、これらのモデルはさまざまなアプリケーションの基盤を形成することができます。
現在は、新しい基盤モデルの作成は極めて大きなプロジェクトです。このプロセスには膨大な量の学習データが必要で、一般的にはインターネットのスクラップ、書籍のデジタルライブラリ、学術論文のデータベース、ストック画像コレクション、その他の大規模なデータセットから収集されています。これだけのデータでモデルをトレーニングするには、GPU クラウドの構築やリースなど、膨大なインフラストラクチャが必要になります。これまでの最大規模の基盤モデルには、数億ドルの構築費がかかったと報告されています。
基盤モデルをゼロからトレーニングするには多大な労力が必要であるため、サードパーティがトレーニングしたモデルにカスタマイズを施すのが一般的です。基盤モデルをカスタマイズするには、複数の手法があります。これには、ファインチューニング、プロンプトチューニング、顧客固有またはドメイン固有のデータの追加などが含まれます。
ファインチューニングとは
ファインチューニングとは、特定のタスクやドメインに適した新しいモデルを作成するために、基盤モデルを改良するプロセスです。汎用モデルに頼るのではなく、希望するユースケースに特化したトレーニングデータを追加することができます。
ファインチューニングに必要なデータと時間は、通常、初期トレーニングよりも大幅に少なくてすみます。基盤モデルのトレーニングには数週間から数カ月かかりますが、ファインチューニングのプロセスは数時間ですむ場合があります。
ファインチューニングにより、ユーザーにはどのようなメリットがあるのでしょうか。汎用モデルでは、必要なものを得るために AI アプリケーションに指示するたびに、具体的な例や手順を入力しなければなりません。しかしファインチューニングでは、どんな出力が欲しいかを予測する作業はすでに終わっています。プロンプトがシンプルになるため、時間を節約し、リソースの使用量を減らすことができます。
生成 AI のリスクとは
短期間で大きな発展を遂げた生成 AI テクノロジーは、肯定的なものも否定的なものも含め大きな話題となっています。このテクノロジーの利点と欠点はまだ完全には明らかになっていません。ここでは、生成 AI に関する代表的な懸念点を簡単に紹介します。
危害を加えることを可能にする: ソーシャルメディア上の大規模な偽情報キャンペーンや、実在の人物を標的にした非合意のディープフェイク画像など、悪意ある目的のために悪意ある攻撃者が生成 AI ツールを使用するという、直接的かつ明白なリスクがあります。
有害な社会的偏見を助長する: 生成 AI ツールは、有害なステレオタイプやヘイトスピーチなど、トレーニングデータに存在する人間の偏見をそのまま反復することが示されています。
誤った情報を提供する: 生成 AI ツールは、時に「ハルシネーション」と呼ばれる、でっち上げで明らかに間違った情報や情景を作り出すことがあります。生成されたコンテンツの誤りには、チャットの質問に対する無意味な回答や、指が多すぎる人間の手の画像など、無害なものもあります。しかし、摂食障害に関する質問をした人に有害なアドバイスをしたチャットボットなど、AI が間違った方向に進んでしまった深刻な事例もあります。
セキュリティと法的リスク: 生成 AI システムは、セキュアに設計されていないアプリにユーザーが機密情報を入力するなどの形で、セキュリティリスクをもたらす可能性があります。生成 AI による応答は、著作権で保護されたコンテンツを複製したり、実在の人物の声やアイデンティティを本人の同意なしに流用したりすることで、法的リスクをもたらす可能性があります。また、生成 AI ツールの中には使用制限があるものもあります。
検索拡張生成とは
検索拡張生成 (RAG) は、LLM (大規模言語モデル) を外部リソースにリンクさせて生成 AI アプリケーションからの回答精度を高める手法です。
RAG アーキテクチャを LLM ベースの質問応答システム (チャットボットのようなシステム) に組み込むと、LLM と任意の追加の知識ソースとの間で情報をやり取りできるようになります。これにより、LLM は内部知識を相互参照して補足することができるようになるため、クエリを作成するユーザーに対する出力の信頼性と精度が向上します。
Red Hat でできること
Red Hat は、チームが AI アプリケーションと機械学習 (ML) モデルを透明性と制御性をもって構築し、デプロイするための共通の基盤を提供します。
Red Hat® OpenShift® AI は、独自のユースケースと独自のデータを使用して、AI モデルのトレーニング、プロンプトチューニング、ファインチューニング、提供ができるプラットフォームです。
大規模な AI デプロイメント向けに、Red Hat OpenShift は AI ワークロードに適したスケーラブルなアプリケーション・プラットフォームを提供しており、一般的なハードウェア・アクセラレーターへのアクセスを完備しています。
Red Hat はまた、他のオープンソースソフトウェアの実用性を向上させるために、Red Hat Ansible® Lightspeed (および IBM watsonx Code Assistant) をはじめとする独自の Red Hat OpenShift AI ツールを使用しています。このサービスにより、自動化チームは Ansible コンテンツをより効率的に学習、作成、保守できるようになります。ユーザーによって入力されたプロンプトを基に、IBM watsonx 基盤モデルとの対話によってコード候補が生成され、これを Ansible Playbook の作成時に使用できます。
また、Red Hat の統合パートナーにより、オープンソース・プラットフォームと連携するよう構築された、信頼できる AI ツールのエコシステムへの扉が開かれます。