オープンソースの機械学習およびAI環境の設定

インストール済の共通IDE、ノートブックおよびフレームワークを備えた事前構成済GPUスタックを使用して、機械学習および人工知能(AI)環境をすばやく設定します。これにより、結果の作成を開始できます。

深い学習のためのOracleの事前構成済の環境は、幅広いアプリケーションを使用する多くの業界で役立ちます。

  • 自然言語処理

  • イメージ認識および分類

  • 金融サービスの不正検出

  • オンライン小売業者向けの推奨エンジン

  • リスク管理

この事前構成済の環境には、NVIDIA GPUおよびCUDAおよびcuDNNドライバ、共通のPythonおよびR統合開発環境(IDE)、Jupyter Notebooks、およびオープン・ソースの機械学習(ML)およびディープ・ラーニング(DL)フレームワークを備えた仮想マシン(VM)が含まれています。

自動スケーリングを使用してコンピュート・リソースをスケーリングすることも、必要ない場合にコンピュート・インスタンスを停止してコストを制御することもできます。VMには、テストと調査を行うための基本的なサンプル・データとコードが含まれています。

AI Datascience VM for Oracle Cloud Infrastructureイメージは、Oracle Cloud Marketplaceで入手できます。

アーキテクチャ

このリファレンス・アーキテクチャは、Oracle Cloud Infrastructureのリージョンで機械学習および人工知能(AI)環境を実装する方法を示しています。

このリファレンス・アーキテクチャでは、要塞ホスト、トレーニング・ノード、推論ノード、ユーザー・アプリケーションVMおよびその他のコンポーネントをOracle Cloud Infrastructureにデプロイします。このアーキテクチャは、1つの可用性ドメインおよびリージョナル・サブネットを持つリージョンを使用します。複数の可用性ドメインを持つリージョンで同じアーキテクチャを使用できます。



このアーキテクチャには次のコンポーネントがあります。

  • Bastionホスト

    プライベート・サブネット内の他のコンピュート・インスタンスへのアクセスを提供するコンピュート・インスタンス。

  • トレーニング・ノード

    ニューラル・ネットワーク・シミュレーションなど、顧客が自分のアプリケーションのモデルを開発および検証するコンピュート・インスタンス。トレーニング・ノードは、Object Storageからデータを取得し、使用されているモデルに従ってデータに対して操作を実行し、アタッチされた共有ブロック・ボリューム・ストレージにデータを格納する強力なインスタンスです。

  • 推論サーバー

    ユーザー・アプリケーションによる消費のためにブロック・ボリューム(トレーニング・ノードにより処理される)に格納されるデータを準備するコンピュート・インスタンス。Inferenceサーバーは、処理したデータをファイル・ストレージに格納します。

  • ユーザー・アプリケーションVM

    このVMはユーザー・アプリケーションを実行し、共有ファイル・ストレージに格納されている推論サーバーによって処理されるデータにアクセスします。

  • ロード・バランサ

    ロード・バランサは、受信トラフィックをユーザー・アプリケーションVMに分散します。

  • ファイル・ストレージ

    ファイルシステムは、推論サーバーおよびユーザー・アプリケーションVMにマウントされます。

  • オブジェクト・ストレージ

    オブジェクト・ストレージは、トレーニング・ノードによって使用されるデータを格納するためのデータ・レイクとして使用されます。

  • ブロック・ボリューム

    Oracle Cloud Infrastructure Block Volumeサービスを使用すると、ブロック・ストレージ・ボリュームを動的にプロビジョニングおよび管理できます。ストレージ、パフォーマンスおよびアプリケーションの要件を満たすように、ボリュームを作成、アタッチ、接続および移動したり、ボリューム・パフォーマンスを変更できます。ボリュームをインスタンスに接続および接続した後は、そのボリュームを通常のハード・ドライブのように使用できます。また、データを失うことなく、ボリュームを切断して別のインスタンスに接続することもできます。ブロック・ストレージを使用して、ジャーナル・ファイルまたはログ・ファイルを格納します。

  • 仮想クラウド・ネットワーク(VCN)とサブネット

    すべてのコンピュート・インスタンスは、サブネットにセグメント化できるVCNにデプロイされます。

  • セキュリティ・リスト

    サブネットごとに、サブネット内外で許可されるトラフィックのソース、宛先およびタイプを指定するセキュリティ・ルールを作成できます。

  • 可用性ドメイン

    可用性ドメインは、リージョン内のスタンドアロンの独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。可用性ドメインでは、電源や冷却、内部の可用性ドメイン・ネットワークなどのインフラストラクチャは共有されません。そのため、ある可用性ドメインでの障害が、リージョン内の他の可用性ドメインに影響することはほとんどありません。

  • フォルト・ドメイン

    フォルト・ドメインは、アベイラビリティ・ドメイン内のハードウェアおよびインフラストラクチャのグループ。各可用性ドメインには、独立した電源とハードウェアを備えた3つのフォルト・ドメインがあります。複数のフォルト・ドメインにリソースを分散すると、アプリケーションは物理サーバーの障害、システム・メンテナンスおよびフォルト・ドメイン内の電源障害を許容できます。

推奨

お客様の要件は、ここで説明するアーキテクチャとは異なる場合があります。開始点として次の推奨事項を使用します。

  • Bastionホスト

    VM.Standard.1.1コンピュート・シェイプを使用します。このホストは他のコンピュート・ノードにアクセスするために使用され、データ処理やその他のタスクには関与しません。

  • トレーニング・ノード

    データ・サイエンス・アプリケーションには、2x25Gbpsのネットワーク帯域幅と十分なGPU (8xV100)を提供するBM.GPU3.8シェイプを使用します。このノードは、アプリケーションのモデルをデプロイおよび検証するため、拡張されたGPU電力が必要です。最大3つのノードから開始し、必要に応じて自動スケーリング機能を使用してスケール・アップまたはスケール・ダウンします。

  • 推論サーバー

    データ・サイエンス・アプリケーションには、2x25Gbpsのネットワーク帯域幅と十分なGPU (2xP100)を提供するBM.GPU2.2シェイプを使用します。このノードは、その役割の性質により、GPU電力を少し少なくする必要があります。1つのノードで開始し、自動スケーリング機能を使用して必要に応じてスケール・アップします。

  • ユーザー・アプリケーションVM

    VM.Standard.2.2shapeを使用します。これらのノードはユーザーアプリケーションに使用されるため、VMは十分である必要があります。2つのVMノードから開始し、必要に応じて自動スケーリング機能を使用してスケール・アップまたはスケール・ダウンします。

  • ロード・バランサ

    ロード・バランサは、受信トラフィックをユーザー・アプリケーションVMに分散します。100Mbpsシェイプを使用します。

  • ファイル・ストレージ

    ファイル・ストレージは必要に応じて自動的にスケーリングされます。

  • オブジェクト・ストレージ

    データ・レイク・オブジェクトの事前認証済リンクを含む単一のプライベート・バケットを使用します。

  • ブロック・ボリューム

    ローカルにアタッチされたストレージに加えて、マルチアタッチ機能を使用して、少なくとも3つのブロック・ボリューム(1TB)を使用してください。さらに、より多くのストレージが提供されます。

  • VCN
    • VCNを作成する際、VCNのサブネットにアタッチする予定のリソース数に基づいて、必要なCIDRブロックの数および各ブロックのサイズを決定します。標準プライベートIPアドレス領域内にあるCIDRブロックを使用します。

    • プライベート接続を設定する予定のその他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは別のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。

    • VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。

    • サブネットを設計する際は、機能とセキュリティ要件を考慮してください。同じ層またはロール内のすべてのコンピュート・インスタンスを同じサブネットにアタッチします。

    • リージョナル・サブネットを使用します。

  • セキュリティ・リスト

    セキュリティ・リストを使用して、サブネット全体に適用されるイングレス・ルールおよびエグレス・ルールを定義します。たとえば、このアーキテクチャでは、プライベート・サブネット全体に対して内部でICMPが許可されます。

注意事項

このリファレンス・アーキテクチャをデプロイする際には、次の点を考慮してください。

  • パフォーマンス

    最適なパフォーマンスを得るには、適切な帯域幅で正しいコンピュート・シェイプを選択します。

  • 可用性

    デプロイメント要件およびリージョンに基づいて高可用性オプションを使用することを検討します。オプションには、リージョン内の複数の可用性ドメインおよびフォルト・ドメインの使用が含まれます。

  • コスト

    ベア・メタルGPUインスタンスは、より高いコストで、必要なCPU性能を提供します。要件を評価して、適切なコンピュート・シェイプを選択します。

  • モニタリングとアラート

    ノードのCPUおよびメモリー使用率の監視およびアラートを設定して、必要に応じてシェイプをスケール・アップまたはスケール・ダウンできます。

デプロイ

このリファレンス・アーキテクチャのTerraformコードは、Oracle Cloud Marketplaceのスタックとして使用できます。

  1. Oracle Cloud Marketplaceに移動します。
  2. 「アプリケーションの入手」をクリックします。
  3. 画面の指示に従ってください。

変更ログ

このログには重大な変更のみが表示されます。