IBMニュースレター
The DX Leaders
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
ソフトウェア開発におけるテクノロジー・スタック(または技術スタック)と同様に、AIスタックは要素を層に編成し、それらが連携して効率的でスケーラブルなAI実装を実現します。この階層化アプローチにより、AIソリューションを構築する複雑なプロセスが管理可能なコンポーネントに分割され、チームは全体像を見失うことなく個々の側面に集中できるようになります。
スタック内の各層は、データ処理からモデルのデプロイメントまで、特定の機能を表し、依存関係の特定、リソースの割り当て、課題への体系的な対処を容易にします。このモジュール式ビューにより、さまざまなコンポーネントの相互作用についての共通の理解が生まれ、特に多分野にわたるチームで作業する場合に明確さが向上します。
さまざまなAIアプリケーションがAIスタックの複数の層に影響します。例えば、Red Hat OpenShiftは、AIスタックのほぼすべての層で使用される大規模なコンテナ化されたアプリケーションを管理するように設計されたエンタープライズ向けのKubernetesプラットフォームです。
AI分野のさまざまなプレーヤーは、コンポーネントをさまざまな順序で配置したり、さまざまなコンポーネントや機能を強調したりして、AIスタックをさまざまな方法で構成します。これは、ユースケース・レベルと組織レベルの両方でAIへのアプローチが異なる可能性があるためです。また、AI開発環境は常に進化しています。
次は、エンタープライズAIスタックの一般化されたバージョンです。生成人工知能(生成AI)と大規模言語モデル(LLM)(OpenAI社のGPTなど)に対するIBMのアプローチについて詳しくは、IBMの生成AIテクノロジー・スタックをご覧ください。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
AIインフラストラクチャー層は、AIシステムを構築およびデプロイするための基盤を形成し、AIモデルを効果的に開発、トレーニング、運用するために必要な計算能力、物理ストレージ、およびツールを提供します。この層は、初期の実験から大規模なデプロイメントまで、AIライフサイクル全体をサポートし、いくつかの異なる主要コンポーネントで構成されています。
データを処理するには物理的なハードウェアが必要です。チップはAIワークロード向けに最適化できます。AIアクセラレーターと呼ばれる高性能処理ユニット(GPU、CPU、TPU)により、複雑なモデルのトレーニング時間が大幅に短縮されます。また、分散コンピューティングにより、大規模言語モデルなどの最先端のリソース集約型システムの開発が可能になります。
クラウド・サービス・プラットフォーム(AWS、Microsoft Azure、Google Cloud、IBM Cloudなど)により、リソースを柔軟に拡大縮小できるようになり、あらゆる規模の企業が利用可能になります。一方、エッジ・コンピューティングは、リモート環境や低帯域幅環境でのリアルタイムの意思決定を可能にします。コンピューティング層はオーケストレーション・ツールと密接に統合され、リソース割り当てを最適化し、コスト効率を確保するのに役立ちます。
物理的なストレージ・システムは、未加工データ・セットからモデルの重みやログまで、AIライフサイクル全体で使用される膨大な量のデータを処理する必要があります。高スループットのストレージ・ソリューションは、データへの高速アクセスを可能にします。これは、ディープラーニング・モデルのトレーニングなど、計算負荷の高いタスクに不可欠です。高スループットのストレージ・ソリューションは、データへの高速アクセスを可能にします。これは、ディープラーニング・モデルのトレーニングなど、計算負荷の高いタスクに不可欠です。
拡張性も重要な機能の1つです。HDFSやオブジェクト・ストレージ・システム(Amazon S3)などの分散ファイル・システムは、増大するデータ需要に対応します。これらのシステムでは、階層型ストレージ戦略が採用されることが多く、頻繁にアクセスされるデータは高速メディアに保存され、あまり使用されないデータは低速でコスト効率の高いソリューションにアーカイブされます。
堅牢なバックアップおよびリカバリーのメカニズムにより、ローカルとクラウド・ストレージ・オプションを組み合わせて障害から保護することで、データの回復力がさらに高まります。
AIでは、多くの場合、最小限のレイテンシーで大量データをある場所から別の場所に移動させます。ネットワークは、さまざまなインフラストラクチャー・コンポーネントを接続することでストレージを補完し、スムーズなデータ転送とコラボレーションを可能にします。
これはAIスタックのもう1つの基礎部分であり、AIモデル用のデータの収集、保存、準備に重点を置いています。これには、データベース、データレイク、データウェアハウスが含まれます。データサイエンティストは、データ取り込み、クリーニング、前処理にさまざまなツールを使用しますが、これらもこのデータ管理層の一部です。
高品質で適切に準備されたデータにより、モデルは効果的に学習し、より優れた予測と意思決定が可能になります。逆に、低品質または偏ったデータはAIモデルの精度と公平性を損ない、最適な結果が得られない可能性があります。堅牢なデータ層に投資することで、組織はAIの導入プロジェクトを成功させるための準備を整えることができます。
データは、構造化データベース、非構造化テキスト・ファイル、画像、IoTデバイス、アプリケーション・プログラミング・インターフェース(API)、ユーザー・インタラクションなど、さまざまなソースから取り込むことができます。ストレージ・インフラストラクチャーは、信頼性とアクセシビリティーを維持しながら、大量の多様なデータを処理できなければなりません。
テクノロジーには、構造化データと非構造化データを処理するためのリレーショナル・データベース(MySQLやPostgreSQLなど)、NoSQLデータベース(MongoDBやCassandraなど)、データレイク(Hadoopなど)などがあります。
取り込みには、さまざまなソースからストレージ・システムにデータをインポートすることが含まれます。Apache Kafkaなどのツールは、データ取り込みパイプラインを自動化および管理し、データがシステムにスムーズに流れるようにします。
未加工データをAIモデルで使用するには、多くの場合、クリーニング、正規化、変換が必要です。これには、重複の削除、欠損値の補完、形式の標準化、カテゴリー変数のエンコードが含まれます。
プログラミング言語Pythonには、この目的のための無料ライブラリーが用意されており、Pandas、NumPy、Apache Sparkなどのツールも前処理によく使用されています。
ここでは、特定の問題を解決するために AI モデルが設計、トレーニング、ファイン・チューニングされ、AI システムのコア機能とインテリジェンスが決定されます。処理されクリーニングされたデータを使用してデータ層を構築し、パターンの学習、予測、出力の生成が可能なアルゴリズムをトレーニングします。
この層はデータ層とのフィードバック・ループも確立し、新しいデータが利用可能になると再トレーニングと改善が可能になります。この層は、実際のアプリケーションでシステムがどの程度うまく機能するかを定義するため、AIライフサイクルの中心となります。
最適なパフォーマンスを実現するには、適切な機械学習アルゴリズムを選択することが重要です。アルゴリズムには、単純なタスク用の線形回帰やDecision Treeから、ニューラル・ネットワークやTransformerなどの複雑なアーキテクチャーまで、さまざまなものがあります。選択は、データのタイプ、問題領域、計算上の制約などの要因によって異なります。
トレーニングでは、モデルにラベル付きデータを入力することで、パターンと関係性を学習します。このステップでは、複雑なモデルに対してかなりの計算リソースが必要です。トレーニング・プロセスでは、ハイパーパラメーター(学習率やバッチ・サイズなど)を設定し、勾配降下法などの手法を使用してモデルを反復的に最適化します。
特徴量エンジニアリングは、未加工データをモデルにとって意味のあるインプットに変換します。このステップには、スケーリング、エンコード、次元削減、または新しい派生特徴量の作成が含まれる場合があります。
BERTやResNetなどの事前トレーニング済みモデルを使用すると、開発時間と計算コストを大幅に削減できます。転移学習により、最小限の追加トレーニングでこれらのモデルを新しいタスクに適応させることができます。
モデルが開発された後、デプロイメントする前に最適化とファイン・チューニングが必要になることがよくあります。これには、ハイパーパラメーターの調整、モデル圧縮、モデル検証が含まれる場合があります。
デプロイ前に、モデルは個別の検証およびテスト用データ・セットを使用して評価され、精度、適合率、再現率、F1スコアなどのパフォーマンス・メトリクスが測定されます。この手順により、モデルが適切に一般化され、未知のデータに対して確実に機能することが保証されます。
モデル・デプロイメント層は、機械学習モデルが開発から実用化に移行し、ライブ環境で予測や推論を提供する場所です。
デプロイメント中には、モデルがデプロイメント可能な形式にパッケージ化されます。多くの場合、コンテナ化テクノロジーを使用して、さまざまな環境間での一貫性と移植性を促進します。その後、これらのコンテナはオーケストレーション・プラットフォームを使用して管理および拡張され、負荷分散、フォールト・トレランス、高可用性を実現します。
デプロイされたモデルは通常、TensorFlow Serving、NVIDIA Triton、またはカスタムビルドのソリューションなどのフレームワークを使用したAPIまたはマイクロサービスを通じて公開され、ビジネス・システム、モバイル・アプリ、またはWebプラットフォームとのシームレスな統合が可能になります。
アプリケーション層は、AIモデルが現実世界のシステムに統合され、実用的な洞察を提供して意思決定を促進する場所であり、AIスタックの中で最もユーザーに直接接する部分です。この層は、AI機能をソフトウェア・アプリケーション、製品、サービスに組み込みます。
この段階では、AIモデルはビジネス・ロジックの一部となり、タスクの自動化、ワークフローの強化、推奨システム、予測分析、自然言語処理、コンピューター・ビジョンなどのインテリジェント機能の強化を行います。これらの機能は通常、APIを介してアクセスされるか、マイクロサービスに組み込まれて、アプリケーション・エコシステムの他のコンポーネントとのシームレスな対話を促進します。
アプリケーション層の主な焦点は、使いやすさです。AI機能は、多くの場合、視覚化やその他のプレゼンテーションを使用する直感的なユーザー・インターフェース(UI)により、明確で解釈可能な方法で情報を伝達し、ユーザーがAI主導の洞察を理解して行動できるようにします。
例えば、不正検知AIは金融プラットフォーム内の疑わしい取引にフラグを立て、自動化を通じて通知を生成する一方で、チャットボットがユーザーとリアルタイムで対話する快適なユーザー・エクスペリエンスを提供します。
オブザーバビリティー層は、AIワークフローの監視、追跡、評価を容易にします。この層は、AIモデルが実際の環境でどのように機能するかを理解するために必要な可視性と洞察を提供し、チームが問題を迅速に特定して解決し、システムの健全性を維持し、時間の経過とともにパフォーマンスを向上させます。
オブザーバビリティー層の中核となるのは、AIモデルとそれらが実行されるインフラストラクチャーの両方に関連するさまざまなメトリクスを追跡するツールとフレームワークです。
ガバナンス層は、AIシステムが責任を持って、倫理的に、組織および社会の標準に沿ってデプロイ、使用、保守されるようにするための包括的なフレームワークです。
この層は、リスクの管理、透明性の促進、AIテクノロジーへの信頼の構築に不可欠です。法的規制、倫理原則、組織目標に基づいてAIモデルのライフサイクルを監視するポリシーとプロセスが含まれます。
ガバナンス層の主な機能は、一般データ保護規則(GDPR)、医療保険の携行性と責任に関する法律(HIPAA)、または欧州AI規制法を含むAI固有のガイドラインなどの規制に準拠するためのコンプライアンス・フレームワークとともに、データ収集および使用ポリシーを確立することです。これらのフレームワークは、データの収集、保存、使用方法を定義し、プライバシーとセキュリティーを促進します。
また、ガバナンスには、監査可能性と追跡可能性のためのメカニズムの作成が含まれ、組織がAIの決定、モデルの変更、データの使用状況を記録および追跡できるようにします。これは、説明責任と紛争やエラーへの対処に不可欠です。
ガバナンス層は、AIシステムにおける公平性、バイアス、説明可能性の問題にも対処します。これには、トレーニング用データまたはモデル出力のバイアスを検出して軽減するためのツールと手法の実践が含まれ、AIシステムが多様な集団にわたって公平に動作するように促します。
AIをスタックとして捉えることで、拡張性、柔軟性、効率性が促進されます。チームは、システム全体を掘り下げることなく、特定の層のアップグレードに取り組んで最新の進歩からメリットを得ることができるため、テクノロジーやビジネス・ニーズの進化に合わせて反復的な改善や適応を行うことができます。
例えば、インフラストラクチャー層で1つのクラウド・プロバイダーから別のクラウド・プロバイダーに切り替えたり、アプリケーションを中断することなくモデル開発層で新しい機械学習フレームワークを採用したりできます。
この階層化された視点により、AIライフサイクルの各段階のベンチマークと監視も簡単になり、各段階でパフォーマンス、コンプライアンス、信頼性が維持されることが保証されます。スタック・アプローチによりAIの複雑さが簡素化され、あらゆる規模の組織にとってAIがより簡単にアクセスできるようになり、実行しやすくなります。