AI テクノロジー・スタックとは?
人工知能向けテクノロジー・スタックは、AI アプリケーションの開発と導入を促進するハードウェア、ソフトウェア、ツールで構成される完全なエンドツーエンドのソリューションです。汎用ソフトウェア・アプリケーションを構築するために使用されるテクノロジー・スタックと同様に、AI テクノロジー・スタックには、機械学習とディープラーニングを実現する AI モデルの構築をサポートする専門ツールが含まれています。
AI テクノロジー・スタックには、アプリケーション・レイヤー、モデルレイヤー、データレイヤー、インフラストラクチャー・レイヤーの 4 つの重要な基盤レイヤーが含まれています。
アプリケーション・レイヤー
AI テクノロジー・スタックのアプリケーション・レイヤーには、ユーザーが基礎となる AI モデルや、AI ソリューションを強化するデータセットと対話できるようにするソフトウェア、ユーザー・インターフェイス、アクセシビリティー機能が含まれています。例えば、ブラウザーベースのインターフェイスにより、ユーザーは ChatGPT などの生成 AI モデルに質問を送ることができます。また、データ分析スイートは、グラフや表形式での可視化を提供し、ユーザーが AI モデルの結果を理解するのに役立ちます。
モデルレイヤー
AI テクノロジー・スタックのモデルレイヤーは、AI モデルが開発、トレーニング、最適化される場所です。AI モデルは、AI フレームワーク、ツールセット、ライブラリーを組み合わせて開発され、その後、膨大な量のデータでトレーニングされ、意思決定プロセスを洗練させるのに役立ちます。
データレイヤー
このレイヤーは、データセットの収集、保管、管理に注力し、ほかのすべてのレイヤーと連動し、機能します。このレイヤーからのデータは、モデルレイヤーに送られ、アプリケーション・レイヤーからの新しいデータは将来のモデル分析のためにここに取り込まれ、インフラストラクチャー・レイヤーは、データのスケーリング、安全性、信頼性の高い処理に必要なリソースを提供します。
インフラストラクチャー・レイヤー
AI テクノロジー・スタックのインフラストラクチャー・レイヤーには、AI モデルとユーザー向けソフトウェアの実行に必要なすべてのハードウェアとコンピューティング・リソースが含まれます。これには、エンタープライズ・データセンター、クラウドサーバー、ノートブック PC やデスクトップ AI PC などのクライアント・デバイス、センサーやスマートカメラなどのエッジデバイスが含まれます。
AI ワークフロー
AI テクノロジー・スタックの導入を成功させるには、AI ワークフローが不可欠です。これは、データ、モデル、導入の順序に従って AI モデルを開発し、トレーニングする段階的なステップです。
- データステップには、正式なデータの収集または生成プロセスが含まれており、通常は前処理と保管が続きます。このステップでは、トレーニングまたは推論のいずれかで AI モデルが使用するデータを準備します。
- 2 番目のステップである AI モデリングでは、アルゴリズムのレイヤー化を通じて AI モデルを開発し、人間の心の論理的および意思決定パターンをシミュレートするニューラル・ネットワークを作成します。
- 最終ステップである導入は、AI モデルが実際のユースケースに導入される時に発生します。例えば、人の介入を最小限に抑え、またはゼロにしてパーソナライズされた AI チャットボットがユーザーの問い合わせに答えます。
AI ソリューション・コンポーネント
AI テクノロジー・スタックの基礎となるコンポーネントの多くは、技術系のほとんどの専門家が熟知しており、ハードウェア、ネットワーキング、ソフトウェアなどが含まれます。しかし、AI テクノロジー・スタックのコンポーネントとツールは、AI ワークロードの独自の要件と要求を処理するように特別に設計されています。
AI ハードウェア
AI ハードウェアには、AI 導入を構成するシリコンまたはベアメタル・コンポーネントが含まれており、AI テクノロジー・スタックの基礎レイヤーを形成します。
CPU
中央演算処理装置 (CPU) またはプロセッサーは、コンピューターを動作させる論理的な命令を実行します。プロセッサーのアーキテクチャー内では、シングルスレッド・プロセッサー・コアは一度に 1 つの命令を実行でき、マルチスレッド・コアは同時に 2 つの命令を実行できます。AI ワークロードの場合、マルチスレッド・コアは、シングルスレッド・コアよりも高いパフォーマンスを発揮し、より効率的な AI モデルのトレーニングに役立ちます。
GPU
グラフィックス・プロセシング・ユニット (GPU) は、並列に動作する多数の実行ユニットを使用して、グラフィックス・ワークロードを処理するように設計された特殊なコンポーネントです。グラフィックス・ワークロードと AI ワークロードは、同じ種類の処理に左右されます。そのため、GPU は AI 導入で一般的に使用されています。GPU には、ディスクリート GPU (dGPU) プラグインカードと、CPU のアーキテクチャーに内蔵された統合 GPU (iGPU) があります。dGPU は、AI サーバーでより一般的ですが、iGPU は、クライアント・コンピューターやエッジデバイスでより一般的です。
FPGA
フィールド・プログラマブル・ゲート・アレイ (FPGA) は、製造後に機能をカスタマイズできるデータ処理用の別々のプラグインカードです。これにより、FPGA は、AI を含むさまざまなワークロードのデータ移動、暗号化、または処理を高速化するのに役立つ高度な柔軟性を提供します。
AI アクセラレーター
ディスクリート AI アクセラレーターは、AI ワークロードを処理するように設計された特殊なハードウェア・コンポーネントで、スケールアウト型のデータセンター導入に最適です。一部のディスクリート AI アクセラレーターは、内蔵ネットワークなどの機能を提供でき、GPU に匹敵する AI トレーニングと推論パフォーマンスを実現しながら、インフラストラクチャーのコストを削減できます。
エッジ AI
エッジにおける AI では、CPU、GPU、FPGA、AI アクセラレーターなど、先に挙げたものと同じ AI ハードウェア・コンポーネントを多く使用しています。主な違いは、システムが導入される場所です。多くの企業がデータセンターに AI を導入していますが、エッジ AI は、都市の交差点、小売店、工場フロアなどのエッジ環境に導入される AI システムです。
エッジ AI は、データを生成する時点で推論を行い、ほぼリアルタイムの分析とアクションを実現します。このため、エッジ AI は、推論のためにデータをクラウドに送信して戻すよりも、ネットワーク・インフラストラクチャーやクラウドベースのリソースの削減につながり、より費用対効果が高くなる可能性があります。
AI サーバー
AI サーバーは、AI ワークロードの要件に合わせて設計されたコンピューターで、企業やエンドユーザーが使用するほかのシステムにサービス、アプリケーション、データを提供します。AI サーバーは、AI プロセッサー、アクセラレーター、ネットワーキング・ハードウェアを組み合わせて、データの保管と準備、AI モデルのトレーニングと推論をサポートします。企業のデータセンターは複数の AI サーバーで構成されていますが、エッジ AI の導入は、目的を果たすために、1 台または複数のエッジ AI サーバーに依存している場合があります。
AI ネットワーキング
高性能ネットワーキングは、AI アプリケーションを効率的かつ安全に運用するテクノロジー・インフラストラクチャーの重要なコンポーネントです。AI 向けネットワーキングは、堅牢で効率的、安全かつ柔軟で信頼性の高い接続を提供する必要があります。AI はあらゆる場所に実装できるため、ネットワーク・ソリューションには、AI データセンター、クライアント、クラウド、エッジにおける異種のシステムとデバイス間の有線、ワイヤレス、仮想接続が含まれます。機械学習アルゴリズムやほかの AI プログラムに供給されるユーザーの個人情報を含む膨大なデータセットを保護するために、堅牢なネットワーク・セキュリティー機能も不可欠です。
AI ソフトウェア
ほかのソフトウェアと同様、AI はハードウェアで実行するコードです。AI ソフトウェアは、Python、Java、C++ など、さまざまなコーディング言語を使用できます。開発者は、AI フレームワークを使用して AI モデルを構築、トレーニング、導入し、AI フレームワークは、AI ライブラリーとツールキットを活用し、事前構築済みの要素とコードサンプルにより AI 開発を容易にします。AI ソフトウェアは、AI テクノロジー・スタックのモデルレイヤーとアプリケーション・レイヤーの両方の開発に貢献します。
AI フレームワーク
AI フレームワークはプラットフォームであり、アプリケーションともみなされます。開発者は、AI フレームワークを使用して、AI ソリューションの構築、トレーニング、導入を行います。AI フレームワークは、さまざまな手法を組み合わせて、1 つまたは複数のコーディング言語をサポートし、コードのナビゲートや編集を容易にするインターフェイスを提供する場合もあります。AI フレームワークの例には、PyTorch、TensorFlow などがあります。
AI ライブラリー
AI ライブラリーとは、モジュール式の事前構築済み AI 機能およびコードサンプルのコレクションのことであり、開発者はゼロから作成することなく、独自の AI モデルを開発するために使用できます。AI フレームワークは、AI ライブラリーを使用して AI 開発プロセスを加速します。AI ライブラリーの例には、Keras、Scikit-learn などがあります。