Oracle AnalyticsのOracle Cloud Infrastructure 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、ダイオード、コンデンサなど)を識別するように設計できます。Visionのチュートリアルを参照してください。

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

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

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

注:

Oracle Cloud ID (OCID)は、OCIで使用されるリソース識別子です。

注:

リソース・プリンシパルの場合、コンパートメント下のすべての分析インスタンスを含めるには、{request.principal.id='<analytics_instance_ocid>'}のかわりに{request.principal.type='analyticsinstance', request.principal.compartment.id='<compartmentA_ocid>'}を指定します。
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サービスへの再利用可能な接続を作成します。 Oracle Cloud Infrastructureテナンシへの接続の作成
分析するイメージの準備 分析するソース・イメージのデータセットを作成し、Oracle Analyticsにアップロードします。 Visionモデルを使用した分析用のイメージの準備
Oracle Analyticsでモデルを使用可能にする方法 Oracle AnalyticsにVisionモデルを登録して、データ・フローで使用できるようにします。 Oracle AnalyticsでVisionモデルを使用可能にする方法
イメージの処理 データ・フローを使用して、オブジェクト検出、イメージ分類またはテキスト検出を実行します。 Oracle AnalyticsでのOracle Cloud Infrastructure 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で、「作成」「データセット」の順にクリックします。
CSVファイルをアップロードしてデータセットを作成できるようになりました。コンピュータからアップロードされたファイルからのデータセットの作成を参照してください。
イメージが20,000を超える場合は、通常、最大20,000イメージで構成される複数のバケットを作成し、バケットごとに個別のデータセットを作成します。

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

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

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

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

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