Oracle AnalyticsのOCI Visionとの統合

Oracle AnalyticsをOracle Cloud Infrastructure (OCI) Visionと統合すると、機械学習や人工知能の専門知識がなくても、オブジェクト検出、イメージ分類およびテキスト検出を実行できます。たとえば、写真に写っている車を識別できます。

Oracle AnalyticsとVisionの統合の概要

Visionは、Oracle Cloud Infrastructureが提供する複数の人工知能(AI)サービスの1つです。データ・サイエンスの専門知識がなくても、機械学習や人工知能を適用することができます。



Oracle Analytics CloudをVisionと統合すると、Oracle Analytics Cloud内のオブジェクトの検出、イメージの分類およびテキストの検出が可能になります。このAI分析は、Oracle Analytics Cloudのデータ・フローからVisionサービスを呼び出して実行します。

Visionには、事前トレーニング済モデルとカスタム・トレーニング済モデルがあります。

事前トレーニング済モデル

事前トレーニング済モデルにより、ユーザーは汎用データセットに対してイメージ分析タスクを実行できます。

  • オブジェクト検出は、画像や動画内の現実のオブジェクトや特定のパターンのインスタンスを検出します(たとえば、猫、犬、自転車、航空機など)。

  • イメージ分類は、固定カテゴリ・セットを使用してイメージにラベルを割り当てます。

  • テキスト検出は、印刷または手書きのテキストをデジタル形式に変換します。

カスタム・トレーニング済モデル

カスタム・トレーニング済モデルは、特定の目的のために画像およびパターンを検出するように修正および微調整されます。たとえば、事前トレーニング済モデルは電気回路を識別できますが、カスタム・トレーニング済モデルは、電気回路を構成する電気部品(レジスタ、LED、ダイオード、コンデンサなど)を識別するように設計できます。

OCI VisionとOracle Analyticsの統合に必要なポリシー

Oracle AnalyticsをOCI Visionと統合するには、必要なセキュリティ・ポリシーがあることを確認します。

Oracle Analytics CloudとOCIテナンシ間の接続で指定するOCIユーザーには、使用するOCIリソースを含むコンパートメントに対する読取り、書込みおよび削除権限が必要です。OCIユーザーが次の最小限のOCIセキュリティ・ポリシーを持つユーザー・グループに属していることを確認してくださいOCIテナンシにOracle Analyticsから接続する場合は、OCI APIキーまたはリソース・プリンシパルを使用できます。

ノート: リソース・プリンシパルの場合、コンパートメント下のすべての分析インスタンスを含めるには、{request.principal.id='<analytics_instance_ocid>'}のかわりに{request.principal.type='analyticsinstance', request.principal.compartment.id='<compartmentA_ocid>'}を指定します。

表25-7 OCI Vision統合に必要なセキュリティ・ポリシー

APIキー・ポリシー リソース・プリンシパル・ポリシー
Allow group <group_name> to manage ai-service-vision-family in tenancy Allow any-user to manage ai-service-vision-family in tenancy where all {request.principal.id='<analytics_instance_ocid>'}
Allow group <group_name> to read buckets in compartment <compartment_name> Allow any-user to read buckets in compartment <compartment_name> where all {request.principal.id='<analytics_instance_ocid>'}
Allow group <group_name> to manage objects in compartment <compartment_name> where target.bucket.name='<staging_bucket_name>' Allow any-user to manage objects in compartment <compartment_name> where all {request.principal.id='<analytics_instance_ocid>', target.bucket.name='<staging_bucket_name>'}
Allow group <group_name> to read objects in compartment <compartment_name> where target.bucket.name='<images_bucket_name>' Allow any-user to read objects in compartment <compartment_name> where all {request.principal.id='<analytics_instance_ocid>', target.bucket.name='<images_bucket_name>'}
Allow group <group_name> to read objectstorage-namespaces in tenancy Allow any-user to read objectstorage-namespaces in tenancy where all {request.principal.id='<analytics_instance_ocid>'}

Oracle AnalyticsとVisionを統合するための一般的なワークフロー

Oracle AnalyticsとVisionを統合し、オブジェクトの検出、イメージの分類またはテキストの検出を実行するには、次のタスクを実行する必要があります。

タスク 説明 詳細情報
前提条件の確認 Oracle AnalyticsからOCIテナンシに接続しているユーザーに、必須のセキュリティ・ポリシーがあることを確認します。 OCI VisionとOracle Analyticsの統合に必要なポリシー
OCI Visionへの接続 Visionサービスへの再利用可能な接続を作成します。 OCIテナンシへの接続の作成
分析するイメージの準備 分析するソース・イメージのデータセットを作成し、Oracle Analyticsにアップロードします。 Visionモデルを使用した分析用のイメージの準備
Oracle Analyticsでモデルを使用可能にする方法 Oracle AnalyticsにVisionモデルを登録して、データ・フローで使用できるようにします。 Oracle AnalyticsでVisionモデルを使用可能にする方法
イメージの処理 データ・フローを使用して、オブジェクト検出、イメージ分類またはテキスト検出を実行します。 オブジェクト検出、イメージ分類およびテキスト検出分析の実行
結果の分析 データ・フローによって生成されたデータセットを使用して、結果を分析します。 オブジェクト検出、イメージ分類およびテキスト検出分析モデル用に生成された出力データ

Visionモデルを使用した分析用のイメージの準備

OCIオブジェクト・ストレージのバケットを使用して、分析するイメージを格納し、Oracle Analyticsでこれらのイメージにアクセスするためのデータセットを作成します。

ほとんどの場合、入力イメージとVisionモデルは同じOracle Cloudアカウント(テナンシ)に格納されます。入力イメージとVisionモデルが異なるテナンシに格納されている場合、入力イメージを含むストレージ・バケットの可視性が「パブリック」であり、データ・フローの入力データセットが個々のイメージURLを含むことを確認する必要があります(ステップ4を参照)。バケットをパブリックにする方法については、バケットの表示の変更を参照してください。

Oracle Analyticsのデータ・フローは、1回の実行で最大20,000のイメージを処理できます。処理するイメージが20,000を超える場合は、OCIのオブジェクト・ストレージおよびアーカイブ・ストレージで複数のバケットを作成し、各バケットを構成するイメージが20,000を超えないようにします。次に、バケットごとに個別のデータセットおよびデータ・フローを作成し、シーケンスを使用して複数のデータ・フローを順番に処理します。
  1. OCIコンソールで、「オブジェクト・ストレージとアーカイブ・ストレージ」に移動し、イメージを格納するためのバケットを作成します。

  2. イメージをバケットにアップロードします。
    バケットに無関係なファイルが含まれていないことを確認します。Oracle Analyticsは、バケット内のすべてのファイルを処理します。
    バケットはプライベートでもパブリックでもかまいませんが、OCIユーザーがアクセスでき、イメージに関するOCIの一般的な制限事項に準拠している必要があります。OCIのドキュメントを参照してください。
  3. バケット内のすべてのイメージを処理するには、バケットURLをCSVファイルに追加します。
    1. オブジェクト・ストレージで、バケットを選択して、「オブジェクト」ダイアログにイメージを表示します。
    2. ブラウザのURLバーからURLをコピーします。
    3. IDBucket NameおよびBucket URLのフィールドを含むCSVファイルを作成します。
    4. バケットURLをBucket URLの値としてCSVファイルに貼り付けます。
  4. イメージを個別に処理するには、イメージURIをCSVファイルに追加します。
    1. IDImage NameおよびFile Locationのフィールドを含むCSVファイルを作成します。
    2. オブジェクト・ストレージ内の各イメージについて、省略アイコン省略アイコンをクリックし、「オブジェクト詳細の表示」を選択します。
    3. 「名前」の値および「URLパス(URI)」の値をコピーします。
    4. 「名前」の値をImage Nameに貼り付け、「URLパス(URI)」値をFile Locationに貼り付けます。
  5. Oracle Analyticsで、「作成」「データセット」をクリックします。
  6. ステップ3またはステップ4で作成したCSVファイルをアップロードし、データセットを保存します。
イメージが20,000を超える場合は、通常、最大20,000イメージで構成される複数のバケットを作成し、バケットごとに個別のデータセットを作成します。

Oracle AnalyticsでVisionモデルを使用可能にする方法

Oracle AnalyticsでVisionモデルを使用可能にすると、データ・フローを使用して、オブジェクトの検出、イメージの分類またはテキストの検出を実行できるようになります。

  1. OCIオブジェクト・ストレージで、適切な名前(たとえば、MyVisionModelStagingBucket)を使用して、コンパートメントにバケットを作成します。
    このステージング・バケットは:
    • アクセス可能なコンパートメントに作成する必要があります。
    • モデルを登録する前に作成する必要があります。
    • プライベート可視性を設定できます。
    • 複数のモデルに使用できます。
    • 「検査」画面で変更できます。
  2. Oracle Analyticsホーム・ページで、「ページ・メニュー」 「ページ・メニュー」の省略記号をクリックし、「モデル/関数の登録」OCI Visionモデルの順に選択します。
  3. 「Visionモデルの登録」ダイアログで、「接続から」の下にある、「OCIテナンシへの接続の作成」で作成した接続をクリックします。

    使用可能なモデルのリストが表示されます。
  4. 使用可能なモデルのリストで、イメージ・データに適用するモデルをクリックします。
    たとえば、写真に写っている車を検出するには、事前トレーニング済オブジェクト検出を選択します。モデルの詳細を表示する情報パネルがポップアップ表示されます。

  5. 「モデル名」で、Oracle Analytics内のモデルを識別するための名前を指定します。
  6. 「ステージング・バケット名」に、ステップ1で指定した名前(たとえば、MyVisionModelStagingBucket)を入力します。
  7. 「登録」をクリックします。
登録されているモデルを確認するには、Oracle Analyticsホーム・ページから、「機械学習」「モデル」の順に移動します。