10 テンプレートを使用したユーザーとのコラボレーション

Oracle Machine Learning Notebooksのテンプレートを使用すると、作業を共有したり、作業をレポートとして公開したり、テンプレートからノートブックを作成したりすることで、他のユーザーとコラボレーションできます。ノートブックをテンプレートとして保存したり、ノートブックを共有したり、サンプル・テンプレートを他のユーザーに提供することができます。

ノート:

自分のワークスペースへのアクセス権を付与することで、他のOracle Machine Learning Notebooksユーザーとコラボレーションすることもできます。自分のワークスペース内のプロジェクトや自分のノートブックに、認証されたユーザーがアクセスできるようになります。アクセス・レベルは、付与された権限タイプ(「管理者」、「開発者」または「参照者」)によって異なります。ユーザー間のコラボレーションの詳細は、How to collaborate in Oracle Machine Learning Notebooksを参照してください。

10.1 「個人用テンプレート」の使用

「個人用テンプレート」には、作成したノートブック・テンプレートがリストされます。

次のタスクを実行できます。
  • 選択したテンプレートを読取り専用モードで表示します。

  • 選択したテンプレートから新規のノートブックを作成します。

  • 選択したテンプレートを編集します。

  • 「共有テンプレート」内の選択したノートブック・テンプレートを共有します。

  • 選択したノートブック・テンプレートを削除します。

10.1.1 テンプレートからのノートブックの作成

既存のテンプレートから新規のノートブックを作成して、後で使用するために「個人用テンプレート」に保存できます。

ノートブック・テンプレートを選択する必要があります。
テンプレートから新規のノートブックを作成するには:
  1. 「個人用テンプレート」ページで、ノートブックの作成に使用するテンプレートを選択し、「新規ノートブック」をクリックします。
    「ノートブックの作成」ダイアログ・ボックスが開きます。
  2. 「名前」フィールドに、ノートブックの名前を入力します。
  3. 「コメント」フィールドに、コメントを入力します(ある場合)。
  4. 「プロジェクト」フィールドで、ノートブックを保存するプロジェクトを選択します。
  5. 「接続」フィールドでは、デフォルト接続が選択されています。
  6. 「OK」をクリックします。
ノートブックが作成され、「ノートブック」ページで利用可能になります。

10.1.2 ノートブック・テンプレートの共有

「個人用テンプレート」からテンプレートを共有できます。テンプレートを編集のために共有することもできます。

テンプレートを共有するには:
  1. 「個人用テンプレート」でノートブック・テンプレートを選択し、「共有」をクリックします。
    「共有テンプレートへの保存」ダイアログ・ボックスが開きます。
  2. 「名前」フィールドに、テンプレートの新しい名前を入力します。
  3. 「コメント」フィールドに、コメントを入力します(ある場合)。
  4. 「タグ」フィールドに、タグをカンマで区切って入力します。簡単に検索できるように、わかりやすいタグを使用します。
  5. 「OK」をクリックします。
テンプレートの作成と共有が正常に完了すると、「共有」に、テンプレートが作成されたというメッセージが表示されます。

10.1.3 ノートブック・テンプレート設定の編集

「個人用テンプレート」で、既存のノートブック・テンプレートの設定を変更できます。

ノートブック・テンプレートの設定を編集するには:
  1. 「個人用テンプレート」でノートブック・テンプレートを選択し、「設定の編集」をクリックします。
    「テンプレートの編集」ダイアログ・ボックスが開きます。
  2. 「名前」フィールドで、名前を適宜編集します。
  3. 「コメント」フィールドで、コメントを編集します(ある場合)。
  4. 「タグ」フィールドで、タグを適宜編集します。
  5. 「OK」をクリックします。

10.2 「共有テンプレート」の使用

「共有テンプレート」では、「テンプレート」で利用可能な既存のノートブックから作成したノートブック・テンプレートを、すべての認証済ユーザーと共有できます。

次の操作を実行すると、「共有テンプレート」ページでノートブック・テンプレートが追跡されます。
  • テンプレートにいいねを付ける

  • テンプレートからのノートブックの作成

  • テンプレートの表示

「共有テンプレート」ページには、テンプレートに関する次の情報が表示されます。
  • テンプレート名

  • 説明

  • いいねの数

  • 作成数

  • 静的ビューの数

次のタスクを実行できます。
  • 「新規ノートブック」をクリックして、テンプレートを作成します

  • 「設定の編集」をクリックして、テンプレート設定を編集します

  • 「削除」をクリックして、選択したテンプレートを削除します

  • 「名前」、「タグ」、「作成者」によってテンプレートを検索します

  • 「名前」、「日付」、「作成者」、「いいね」、「表示」、「使用」によってテンプレートをソートします

  • 「いいねのみ表示」または「自分のアイテムのみ表示」をクリックして、テンプレートを表示します。

10.2.1 テンプレートからのノートブックの作成

既存のテンプレートから新規のノートブックを作成して、後で使用するために「個人用テンプレート」に保存できます。

ノートブック・テンプレートを選択する必要があります。
テンプレートから新規のノートブックを作成するには:
  1. 「個人用テンプレート」ページで、ノートブックの作成に使用するテンプレートを選択し、「新規ノートブック」をクリックします。
    「ノートブックの作成」ダイアログ・ボックスが開きます。
  2. 「名前」フィールドに、ノートブックの名前を入力します。
  3. 「コメント」フィールドに、コメントを入力します(ある場合)。
  4. 「プロジェクト」フィールドで、ノートブックを保存するプロジェクトを選択します。
  5. 「接続」フィールドでは、デフォルト接続が選択されています。
  6. 「OK」をクリックします。
ノートブックが作成され、「ノートブック」ページで利用可能になります。

10.2.2 ノートブック・テンプレート設定の編集

「個人用テンプレート」で、既存のノートブック・テンプレートの設定を変更できます。

ノートブック・テンプレートの設定を編集するには:
  1. 「個人用テンプレート」でノートブック・テンプレートを選択し、「設定の編集」をクリックします。
    「テンプレートの編集」ダイアログ・ボックスが開きます。
  2. 「名前」フィールドで、名前を適宜編集します。
  3. 「コメント」フィールドで、コメントを編集します(ある場合)。
  4. 「タグ」フィールドで、タグを適宜編集します。
  5. 「OK」をクリックします。

10.3 「サンプル・テンプレート」の使用

「サンプル・テンプレート」ページには、事前移入されたOracle Machine Learningのノートブック・テンプレートがリストされます。これらのテンプレートを表示および使用して、ノートブックを作成できます。

「サンプル・テンプレート」ページには、テンプレートに関する次の情報が表示されます。
  • テンプレート名

  • 説明

  • いいねの数。「いいねの数」をクリックすると、いいねのマークが付きます。

  • 静的ビューの数

  • 使用回数

「サンプル・テンプレート」ページのテンプレートを変更することはできません。検索オプションは次のとおりです。
  • 「名前」、「タグ」、「作成者」によってテンプレートを検索します

  • 「名前」、「日付」、「作成者」、「いいね」、「表示」、「使用」によってテンプレートをソートします

  • 「いいねのみ表示」をクリックして、いいねの付いたテンプレートを表示します

10.3.1 サンプル・テンプレートからのノートブックの作成

Oracle Machine Learningの「サンプル・テンプレート」を使用して、使用可能なテンプレートからノートブックを作成できます。

ノートブックを作成するには:
  1. 「サンプル・テンプレート」ページで、ノートブックの作成に使用するテンプレートを選択します。
  2. 「新規ノートブック」をクリックします。
    「ノートブックの作成」ダイアログ・ボックスが開きます。
  3. 「ノートブックの作成」ダイアログに、選択したテンプレートの名前が表示されます。「名前」フィールドで、ノートブック名を変更できます。
    「ノートブックの作成」ダイアログ
  4. テンプレートにコメントがあれば、「コメント」フィールドにコメントが表示されます。コメントは編集できます。
  5. 「プロジェクト」フィールドで、編集アイコン編集をクリックします。
  6. ノートブックを保存するプロジェクトを選択します。
  7. 「接続」フィールドでは、デフォルト接続が選択されています。
  8. 「OK」をクリックします。
ノートブックが作成され、「ノートブック」ページで利用可能になります。

10.3.2 テンプレートの例

Oracle Machine Learning Notebooksには、様々な機械学習アルゴリズムおよびPython、R、SQLなどの言語に基づいたノートブック・サンプル・テンプレートが用意されています。サンプル・テンプレートは、Oracle Autonomous Databaseで処理されます。

次のOracle Machine Learning for Rサンプル・テンプレート・ノートブックのいずれかに基づいて、編集可能で実行可能な独自のOracle Machine Learningノートブックを作成できます。
  • OMLのシリアル化されたモデルのエクスポートとインポート: このノートブックを使用して、DBMS_DATA_MINING.EXPORT_SERMODELおよびDBMS_DATA_MINING.IMPORT_SERMODELプロシージャを使用してネイティブのシリアル化モデルをエクスポートおよびインポートします。Oracle Machine Learningは、データベースおよびプラットフォーム間でモデルを移行するプロセスを合理化するためのAPIを提供しています。
  • OML Wiki ESAモデル: このノートブックは、文書と人間によって明示的に定義および記述された一連のトピックとの間の意味的関連性(2つの単語またはテキストの部分が互いに意味においてどの程度類似しているか)を計算することにより、テキスト文書の分類に使用します。Oracle Machine Learning for SQL関数ESA、Oracle Machine Learning for Python関数oml.esaおよびOracle Machine Learning for R関数ore.odmESAを使用して、ドキュメントのコーパスからテキストベースの特徴を抽出し、ドキュメントの類似度比較を実行します。このノートブックでは、Wiki ESAモデルがAutonomous Databaseにインポートされ、次のOMLテンプレート・ノートブックの例で使用されます。
    • OML4SQL特徴抽出ESA Wikiモデル
    • OML4Py特徴抽出ESA Wikiモデル
    • OML4R特徴抽出ESA Wikiモデル
  • OML Servicesバッチ・スコアリング: このノートブックは、OML Services経由でRESTインタフェースを介してバッチ・スコアリング・ジョブを実行します。OML Servicesでは、回帰、分類、クラスタリングおよび特徴抽出モデルのバッチ・スコアリングがサポートされています。
    • データベース・ユーザーの認証およびアクセス・トークンの取得
    • バッチ・スコアリング・ジョブの作成
    • バッチ・スコアリング・ジョブの詳細および出力の表示
    • バッチ・スコアリング・ジョブの更新、無効化および削除
  • OML Servicesデータ・モニタリング: このノートブックを使用してモニタリングを実行します。このノートブックを実行すると、RESTインタフェースを介して次のようなデータ・モニタリング・ワークフロー・ステップが提供されます。
    • データベース・ユーザーの認証およびアクセス・トークンの取得
    • データ・モニタリング・ジョブの作成
    • データ・モニタリング・ジョブの詳細および出力の表示
    • データ・モニタリング・ジョブの更新、無効化および削除
  • OML Servicesモデル・モニタリング: このノートブックを使用して、モデル・モニタリングを理解および実行します。このノートブックを実行すると、RESTインタフェースを介して次のようなモデル・モニタリング・ワークフロー・ステップが提供されます。
    • データベース・ユーザーの認証およびアクセス・トークンの取得
    • モデル・モニタリング・ジョブの作成
    • モデル・モニタリング・ジョブの詳細および出力の表示
    • モデル・モニタリング・ジョブの更新、無効化および削除
  • OMLサードパーティ・パッケージ - 環境の作成: このノートブックを使用して、Conda環境をダウンロードしてアクティブ化し、ノートブック・セッションでライブラリを使用します。Oracle Machine Learning Notebooksには、Oracle Machine Learning Notebooksセッション内、およびOracle Machine Learning for PythonおよびOracle Machine Learning for Rの埋込み実行コール内で使用するために、Conda環境にサードパーティのPythonおよびRライブラリをインストールするためのCondaインタープリタが用意されています。

    Oracle Machine Learning Notebooksにインストールされているサードパーティ・ライブラリは、次の場所で使用できます:

    • 標準Python
    • 標準R
    • Python、SQLおよびREST APIからのOracle Machine Learning for PythonのEmbedded Python Execution
    • R、SQLおよびREST APIからのOracle Machine Learning for RのEmbedded R Execution

    ノート:

    Conda環境は、ADMINユーザーによってOML_SYS_ADMINロールでインストールおよび管理されます。管理者は、共有環境を作成し、共有環境からパッケージを追加または削除できます。Conda環境は、Autonomous Databaseに関連付けられたオブジェクト・ストレージ・バケットに格納されます。

    Condaは、サードパーティのRおよびPythonパッケージが含まれる仮想環境の使用を可能にするオープンソースのパッケージおよび環境管理システムです。conda環境では、パッケージとその依存関係をインストールおよび更新し、プロジェクト固有のパッケージを使用するように環境を切り替えることができます。

    このテンプレート・ノートブックのOMLサードパーティ・パッケージ - 環境作成には、Oracle Machine Learning Notebooksでのサードパーティ環境の作成およびパッケージ・インストールの一般的なワークフローが含まれています。

    • セクション1には、Conda環境を作成およびテストするためのコマンドが含まれています。
    • セクション2には、Conda環境の作成、パッケージのインストール、およびOracle Autonomous Databaseに関連付けられたオブジェクト・ストレージ・バケットにconda環境をアップロードするコマンドが含まれています。

    図10-1 Condaサンプル・テンプレート

    Condaサンプル・テンプレート
  • OMLサードパーティ・パッケージ - Python環境の使用: このテンプレート・ノートブックを使用して、PythonおよびOracle Machine Learning for Pythonを使用したOracle Machine Learning Notebooksでのサードパーティ環境の使用の一般的なワークフローを理解します。以前に作成され、Autonomous Databaseに関連付けられたオブジェクト・ストレージ・バケット・フォルダに保存されたConda環境でライブラリをダウンロードして使用します。
    このノートブックには、次のコマンドが含まれています:
    • オブジェクト・ストレージに格納されているすべての環境のリスト
    • オブジェクト・ストレージに格納されている名前付き環境のリスト
    • mypyenv環境のダウンロードとアクティブ化
    • Conda環境で使用可能なパッケージのリスト
    • Pythonライブラリのインポート
    • データ・セットのロード
    • モデルの構築
    • モデルのスコアリング
    • Pythonユーザー定義ファンクション(UDF)の作成
    • Pythonでのユーザー定義ファンクション(UDF)の実行
    • Embedded Python Execution用のSQLおよびREST APIでのユーザー定義ファンクションの作成および実行
    • Embedded Python ExecutionのSQL APIを使用したPythonユーザー定義ファンクションの作成および実行 - 非同期モード
  • OMLサードパーティ・パッケージ - R環境の使用: このテンプレート・ノートブックを使用して、Oracle Machine Learning for Rでのサードパーティ環境の使用の一般的なワークフローを理解します。
    このノートブックには、次のコマンドが含まれています:
    • オブジェクト・ストレージに格納されているすべての環境のリスト
    • オブジェクト・ストレージに格納されている名前付き環境のリスト
    • myrenv環境のダウンロードとアクティブ化
    • 使用可能なOML4R Conda環境のリストの表示
    • Rライブラリのインポート
    • データをロードして準備します
    • モデルの構築
    • モデルのスコアリング
    • Rユーザー定義ファンクション(UDF)の作成
    • Rでのユーザー定義ファンクション(UDF)の実行
    • スクリプト・リポジトリへのユーザー定義ファンクション(UDF)の保存
    • Embedded R ExecutionのためのSQLおよびREST APIでのRユーザー定義ファンクションの実行
    • アクセス制御リストへのOMLユーザーの追加
    • 同期モードでのEmbedded R ExecutionのREST APIを使用したRユーザー定義ファンクションの実行
  • OML4R-1: 概要: このノートブックは、次のことを理解するために使用します。
    • OREライブラリのロード
    • データベース表の作成
    • 透過層の使用
    • インデータベース属性評価アルゴリズムを使用した予測値の属性のランク付け
    • 予測モデルの構築、および
    • これらのモデルを使用したデータのスコアリング

    図10-2 Oracle Machine Learning for Rサンプル・テンプレート

    OML4Rサンプル・テンプレート
  • OML4R-2: データの選択および操作: このノートブックは、データの選択および操作に関連する透過層の機能を理解するために使用します。
  • OML4R-3: データストアおよびスクリプト・リポジトリ: このノートブックは、OML4Rのデータストアおよびスクリプト・リポジトリの機能を理解するために使用します。
  • OML4R-4: Embedded R Execution: このノートブックは、OML4R Embedded R Executionを理解するために使用します。まず、線形モデルがRで直接構築された後、線形モデルを構築するためにユーザー定義Rファンクションが作成され、そのファンクションがスクリプト・リポジトリに保存され、Oracle Autonomous Database環境によって生成されたRエンジンを使用してデータがパラレルにスコアリングされます。このノートブックでは、Embedded R ExecutionとともにR用のSQLインタフェースおよびREST APIを使用してこれらのスクリプトをコールする方法も示します。

    ノート:

    Embedded R ExecutionのSQL APIを使用するには、ユーザー定義RファンクションがOML4Rスクリプト・リポジトリ内に存在し、認証トークンを取得するためにOracle Machine Learning (OML)クラウド・アカウントのユーザー名、パスワードおよびURLを指定する必要があります。
  • OML4R異常検出のサポート・ベクター・マシン(SVM): このノートブックは、1クラスSVMモデルを構築した後、それを使用して異常または疑わしいレコードにフラグを付けるために使用します。
  • OML4R相関ルールのApriori: このノートブックは、A PrioriアルゴリズムをSHスキーマのデータ(SH.SALES)とともに使用して相関ルール・モデルを構築するために使用します。すべての計算は、Oracle Autonomous Database内で行われます。
  • OML4R属性評価の最小記述長(MDL): このノートブックは、SHスキーマ・データに対して、最小記述長アルゴリズムを使用する属性評価を計算するために使用します。すべての機能は、Oracle Autonomous Database内で実行されます。Oracle Machine Learningでは、属性、予測子、ターゲット属性に最も影響を与える変数などの主要な要因を特定するために属性評価がサポートされています。
  • OML4R分類の一般化線形モデル(GLM): このノートブックは、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測するために使用します。このノートブックでは、販売履歴(SH)スキーマ・データを使用して分類の一般化線形モデルを構築および適用します。すべての処理は、Oracle Autonomous Database内で行われます。
  • OML4R分類のNaive Bayes (NB): このノートブックは、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測するために使用します。このノートブックでは、販売履歴(SH)スキーマ・データを使用して分類のデシジョン・ツリー・モデルを構築および適用します。すべての処理は、Oracle Autonomous Database内で行われます。
  • OML4R分類のランダム・フォレスト(RF): このノートブックは、OML4Rで分類にランダム・フォレスト・アルゴリズムを使用し、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測するために使用します。
  • OML4R分類のサポート・ベクター・マシン(SVM)を使用してターゲット顧客を予測するためのモデリング: このノートブックは、分類のモデリングを使用し、サポート・ベクター・マシン・モデルを使用してターゲット顧客を予測するために使用します。
  • OML4Rクラスタリング - 期待値最大化クラスタリングを使用した顧客セグメントの特定: このノートブックは、教師なし学習の期待値最大化(EM)アルゴリズムを使用してSHスキーマからのCUSTOMERSデータセットを使用して顧客の自然クラスタを特定する方法を理解するために使用します。データの探索、準備および機械学習は、Oracle Autonomous Database内で実行されます。
  • OML4Rクラスタリング - K-Meansクラスタリングを使用した顧客セグメントの特定: このノートブックは、教師なし学習のK-Means (KM)アルゴリズムを使用してSHスキーマからのCUSTOMERSデータセットを使用して顧客の自然クラスタを特定する方法を理解するために使用します。データの探索、準備および機械学習は、Oracle Autonomous Database内で実行されます。
  • OML4Rクラスタリング - 直交パーティショニング・クラスタリング(OC): このノートブックは、教師なし学習のk-Meansアルゴリズムを使用してSHスキーマからのCUSTOMERSデータセットを使用して顧客の自然クラスタを特定する方法を理解するために使用します。データの探索、準備および機械学習は、Oracle Autonomous Database内で実行されます。
  • OML4Rデータ・クリーニングの外れ値: このノートブックは、OML4Rを使用して外れ値のあるレコードを除外するために使用します。
  • OML4Rデータ・クリーニング - シノニム値のリコード: このノートブックは、OML4Rを使用してシノニム値をリコードするために使用します。
  • OML4Rデータ・セット作成: このノートブックは、サンプル・データ・セットMTCARSおよびIRISをロードし、ore.create()関数を使用してOracle Autonomous Databaseインスタンスにインポートするために使用します。

ノート:

アスタリスク(*)が先頭に付いている次のサンプル・テンプレート・ノートブックでは、CUSTOMER_INSURANCE_LTVデータ・セットを使用します。このデータ・セットは、OML Run-me-firstノートブックによって生成されます。したがって、サンプル・テンプレートで使用可能なOML Run-me-firstノートブックを実行する必要があります。
  • * OML4Rデータ・クリーニングの欠損データ: このノートブックは、OML4Rを使用して欠損値の置換を実行します。
  • * OML4Rデータ・クリーニングの重複の削除: このノートブックは、OML4Rを使用して重複レコードを削除するために使用します。
  • * OML4Rデータ変換のビニング: このノートブックは、OML4Rを使用して数値列のビニングを実行するために使用します。
  • * OML4Rデータ変換のカテゴリ型リコード: このノートブックは、カテゴリ文字列変数を数値変数にリコードしたり、OML4Rを使用して文字列から文字列にリコードするために使用します。
  • * OML4Rデータ変換: 正規化とスケーリング: このノートブックは、OML4Rを使用してデータを正規化およびスケーリングするために使用します。
  • * OML4Rデータ変換: ワンホット・エンコーディング: このノートブックは、OML4Rを使用してワンホット・エンコーディングを実行するために使用します。
  • * OML4R特徴の選択 - 教師ありアルゴリズム: このノートブックは、OML4Rを使用してインデータベース教師ありアルゴリズムを使用して特徴の選択を実行するために使用します。このノートブックでは、顧客が保険を購入するかどうかを予測するランダム・フォレスト・モデルを構築した後、特徴評価を使用して特徴の選択を実行する方法を示します。
  • * OML4Rサマリー統計を使用した特徴の選択: このノートブックは、OML4Rを使用してサマリー統計を使用して特徴の選択を実行するために使用します。このノートブックでは、OML4Rを使用して、個別値の数、null値、定数値の比率に基づいて特徴を選択する方法を示します。
  • OML4R特徴エンジニアリング集計: このノートブックは、OML4Rを使用して最小、最大、平均および数の集計を実行するために使用します。このテンプレートでは、SHスキーマに存在するSALES表を使用しており、顧客と製品の各ペアについて販売金額を集計して特徴を作成する方法を示します。
  • OML4R特徴抽出の明示的セマンティック分析(ESA) Wikiモデル: このノートブックでは、例としてWikipediaモデルを使用します。このノートブックは、Oracle Machine Learning for R関数ore.odmESAを使用して、ドキュメントのコーパスからテキストベースの特徴を抽出し、ドキュメントの類似度比較を実行します。すべての処理は、Oracle Autonomous Database内で行われます。

    ノート:

    このノートブックを実行するには、事前に構築されたWikipediaモデルをAutonomous Databaseインスタンスにインストールする必要があります。
  • OML4Rデータ変換の日付データ型: このノートブックは、Oracle Machine Learning for Rを使用してデータベース表プロキシ・オブジェクトを使用して日時データに対して様々な操作を実行するために使用します。
  • OML4R特徴抽出の特異値分解(SVD): このノートブックは、特徴抽出にインデータベースSVDを使用するために使用します。このノートブックでは、Oracle Machine Learning for R関数ore.odmSVDを使用して、特徴抽出に特異値分解(SVD)アルゴリズムを使用するモデルを作成します。
  • OML4Rパーティション化されたモデルのサポート・ベクター・マシン(SVM): このノートブックは、顧客が居住する年数を予測するSVMモデル(ただし顧客の性別でパーティション化)を構築するために使用します。その後、そのモデルを使用してターゲットを予測してから、予測詳細でターゲットを予測します。
  • OML4R回帰の一般化線形モデル(GLM): このノートブックは、複数の回帰を使用して数値を予測する方法を理解するために使用します。このノートブックでは、一般化線形モデル・アルゴリズムを使用します。
  • OML4R回帰のニューラル・ネットワーク(NN): このノートブックは、複数の回帰を使用して数値を予測する方法を理解するために使用します。このノートブックでは、ニューラル・ネットワーク・アルゴリズムを使用します。
  • OML4R回帰のサポート・ベクター・マシン(SVM): このノートブックは、複数の回帰を使用して数値を予測する方法を理解するために使用します。このノートブックでは、サポート・ベクター・マシン・アルゴリズムを使用します。
  • OML4R REST API: このノートブックは、OML4R REST APIを使用してユーザー定義Rファンクションをコールする方法と、Rスクリプト・リポジトリ内の使用可能なRファンクションをリスト表示する方法を理解するために使用します。

    ノート:

    スクリプトを実行するには、スクリプトがRスクリプト・リポジトリに存在する必要があります。認証には、Oracle Machine Learningクラウド・サービス・アカウントのユーザー名およびパスワードを指定する必要があります。
  • OML4R統計ファンクション: このノートブックは、様々な統計ファンクションを理解して使用するために使用します。ノートブックでは、OML4R透過層を介してSHスキーマのデータを使用します。
  • OML4Rテキスト・マイニングのサポート・ベクター・マシン(SVM): このノートブックは、非構造化テキスト・データを使用した機械学習モデルの構築、Oracle Textの利用、Oracle Machine Learningインデータベース・アルゴリズムの予測機能の使用およびテキスト列からの特徴の抽出を実行する方法を理解するために使用します。

    このノートブックでは、サポート・ベクター・マシン(SVM)モデルを構築して、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測します。データは、ユーザーが生成したコメントが含まれるテキスト列から取得されます。

Oracle Machine Learning for Pythonサンプル・テンプレート

次のOracle Machine Learning for Pythonサンプル・テンプレートのいずれかに基づいて、Oracle Machine Learningノートブックを作成できます。

図10-3 Oracle Machine Learning for Pythonサンプル・テンプレート

OML4Pyサンプル・テンプレート
  • マイ・ファースト・ノートブック: 「マイ・ファースト・ノートブック」ノートブックは、基本的な機械学習機能、データ選択およびデータ表示のために使用します。このテンプレートでは、SHスキーマ・データを使用します。
  • OML4Py -0- ツアー: このノートブックは、短い例でOML4Py機能の範囲を紹介することを目的とした、0から5までのシリーズの最初のノートブックです。
  • OML4Py -1- 概要:このノートブックでは、OMLライブラリをロードする法、データベース表を作成する方法、透過層を使用する方法、データベース内属性重要度アルゴリズムを使用して予測値に基づいて属性をランク付けする方法、予測モデルを構築する方法、およびこれらのモデルを使用してデータをスコアリングする方法の概要を示します。
  • OML4Py -2- データの選択および操作: このノートブックは、データの選択および操作に関連する透過層の使用方法を学習するために使用します。
  • OML4Py -3- データストア: このノートブックは、データストアの操作、データストアとPythonセッション間でのオブジェクトの移動、データストア権限の管理、データストアへのモデル・オブジェクトとPythonオブジェクトの保存、データストアの削除などの方法を学習するために使用します。
  • OML4Py -4- Embedded Python Execution: このノートブックは、Embedded Python Executionを理解するために使用します。このノートブックでは、線形モデルをPythonで直接構築し、次にAutonomous Database環境によって生成されたPythonエンジンを使用するファンクションを作成します。
  • OML4Py -5- AutoML: このノートブックは、OML4PyでのAutoMLワークフローを理解するために使用します。このノートブックでは、scikit-learnのWINEデータ・セットを使用します。ここでは、AutoMLは分類ではtarget列に使用され、回帰ではalcohol列に使用されます。

ノート:

アスタリスク(*)が先頭に付いている次のサンプル・テンプレート・ノートブックでは、CUSTOMER_INSURANCE_LTV_PYデータ・セットを使用します。このデータ・セットには、OML4SQLノイズ・ノートブックによって人為的に生成された重複値が含まれます。したがって、ノートブックを実行する前に、まずOML4SQLノイズを実行する必要があります。
  • * OML4Pyデータ・クリーニングの重複の削除: このノートブックは、OML4Pyを使用して重複レコードを削除する方法を理解するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。
  • * OML4Pyデータ・クリーニングの欠損データ: このノートブックは、OML4Pyを使用して欠損値を補完する方法を理解するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。
  • * OML4Pyデータ・クリーニングのシノニム値のリコード: このテンプレートのノートブックは、OML4Pyを使用してシノニム値をリコードする方法を理解するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。
  • OML4Pyデータ・クリーニングの外れ値の削除: このノートブックは、データをクリーニングして外れ値を削除する方法を理解するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含むCUSTOMER_INSURANCE_LTVデータ・セットを使用します。データ・セットCUSTOMER_INSURANCE_LTVでは、数値と、値が上位5%と下位5%にあるレコードの削除に焦点が当てられています。
  • OML4Pyデータ変換のビニング: このノートブックは、数値列のビニングおよび分布の可視化の方法を理解するために使用します。
  • OML4Pyデータ変換カテゴリ型 - カテゴリ変数の数値変数への変換: このノートブックは、OML4Pyを使用してカテゴリ変数を数値変数に変換する方法を理解するために使用します。このノートブックでは、個別レベル/値をそれぞれ整数データ型にコーディングしてカテゴリ変数を変換する方法が示されます。
  • OML4Pyデータ変換の正規化とスケーリング: このノートブックは、zスコア(平均および標準偏差)、最小/最大スケーリング、対数スケーリングの使用によってデータを正規化およびスケーリングする方法を理解するために使用します。

    ノート:

    インデータベースOracle Machine Learningアルゴリズムを使用してモデルを構築または適用する場合、自動データ準備により、特定のアルゴリズムによって必要に応じてデータが自動的に正規化されます。
  • OML4Pyデータ変換のワン・ホット・エンコーディング: このノートブックは、OML4Pyを使用してワン・ホット・エンコーディングを実行する方法を理解するために使用します。機械学習アルゴリズムでカテゴリ・データを直接処理することはできません。カテゴリ・データを数値に変換する必要があります。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。

    ノート:

    データベース内アルゴリズムを使用する場合、ワン・ホット・エンコーディングが、それを必要とするアルゴリズムに対して自動的に適用されます。データベース内アルゴリズムは、カテゴリ列を自動的に展開し、準備されたデータにモデルを内部的に適合させます。
  • OML4Py異常検出: このノートブックは、データ内の異常なレコード、顧客またはトランザクションを検出するために使用します。このテンプレートでは、教師なし学習アルゴリズム1-Classサポート・ベクター・マシンを使用します。このノートブック・テンプレートでは、1-Classサポート・ベクター・マシン(SVM)モデルが構築されます。
  • OML4Py相関ルール: このノートブックは、データのマーケット・バスケット分析や、データ内の同時発生する項目、失敗またはイベントの検出を行う場合に使用します。このテンプレートでは、SH スキーマ・データ(SH.SALES)を使用してapriori相関ルール・モデルを使用します。
  • OML4Py属性評価: このノートブックは、ターゲット属性に対して最大の影響を与えるキー属性を特定するために使用します。教師ありモデルの構築データ内のターゲット属性が、予測する属性になります。このテンプレートでは、SHスキーマ・データを使用して属性重要度モデルを構築します。
  • OML4Py分類: このノートブックは、顧客の行動および類似の予測を予測するために使用します。このテンプレートでは、分類アルゴリズムのデシジョン・ツリーを構築して適用することで、予測子値とターゲット値の関係に基づいて分類モデルを構築します。このテンプレートでは、SHスキーマ・データを使用します。
  • OML4Pyクラスタリング: このノートブックは、データ内の自然クラスタを特定するために使用します。このノートブック・テンプレートでは、SHスキーマ・データに対して教師なし学習k-Meansアルゴリズムを使用します。
  • OML4Pyデータ変換: このノートブックは、OML4Pyを使用してカテゴリ変数を数値変数に変換するために使用します。このテンプレートでは、個別レベル/値をそれぞれ整数データ型にコーディングしてカテゴリ変数を変換する方法が示されます。
  • OML4Pyデータ・セット作成: このノートブックは、OML4Pyを使用してsklearnパッケージからOMLデータ・フレームにデータ・セットを作成するために使用します。
  • OML4Py機能エンジニアリング集計: このノートブックのテンプレートは、OML4Pyを使用して欠損値を補完するために使用します。このノートブックでは、各顧客および購入した製品のトランザクション・レコードを含むSHスキーマSALES表を使用します。顧客と製品のペアごとに販売金額を集計することで、機能が作成されます。
  • OML4Py特徴選択教師ありアルゴリズム・ベース: このノートブックは、OML4Pyを使用してインデータベース教師ありアルゴリズムを使用して特徴選択を実行するために使用します。
  • OML4Py機能選択サマリー統計: このノートブックのテンプレートは、OML4Pyを使用したサマリー統計を使用して機能選択を実行するために使用します。ノートブックでは、OML4Pyを使用して、個別値の数、null値、定数値の比率に基づいて機能を選択する方法を示します。ここで使用されるデータ・セットCUSTOMER_INSURANCE_LTV_PYには、OML4SQLノイズ・ノートブックによって人為的に生成されたnull値が含まれます。OML4Py機能選択サマリー統計ノートブックを実行する前に、まずOML4SQLノイズ・ノートブックを実行する必要があります。
  • OML4Pyパーティション化されたモデル: このノートブックは、パーティション化されたモデルを構築するために使用します。このノートブックでは、SVMモデルを構築して顧客の居住年数を予測しますが、このモデルは顧客性別でパーティション化されています。モデルを使用してターゲットを予測してから、予測詳細でターゲットを予測します。

    Oracle Machine Learningでは、複数のサブモデル(データ・パーティションごとに1つ)で構成されるアンサンブル・モデルを自動的に構築できます。サブモデルが存在し、1つのモデルとして使用されるため、上位レベル・モデルのみを使用してスコアリングが簡素化されます。適切なサブモデルは、スコアリングするデータ行のパーティション値に基づいて選択されます。パーティション化されたモデルは、複数のターゲット・モデルを通じて潜在的に高い精度を実現します。

  • OMP4Py REST API: このノートブックは、Embedded Python Executionをコールするために使用します。OML4Pyには、スクリプト・リポジトリに保存されているユーザー定義Pythonファンクションを実行するためのREST APIが含まれています。REST APIは、クライアントとデータベース・サーバー間の分離が有益である場合に使用されます。OML4Py REST APIを使用して、スクリプトを作成、トレーニング、デプロイおよび管理します。

    ノート:

    スクリプトを実行するには、スクリプトがOML4Pyスクリプト・リポジトリに存在する必要があります。認証には、Oracle Machine Learningクラウド・サービス・アカウントのユーザー名およびパスワードを指定する必要があります。
  • OML4Py回帰の数値を予測するためのモデリング: このノートブックは、複数の回帰を使用して数値を予測するために使用します。
  • OML4Py統計ファンクション: このノートブックは、様々な統計ファンクションを使用するために使用します。統計ファンクションは、OML4Py透過層を介してSHスキーマのデータを使用します。
  • OML4Pyテキスト・マイニング: このノートブックは、Oracle Machine Learningでテキスト・マイニング機能を使用してモデルを構築するために使用します。

    このノートブックでは、SVMモデルを構築して、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測します。データには、ユーザーが生成したコメントを含むテキスト列が含まれています。いくつかの追加仕様では、アルゴリズムによって自動的にテキスト列が使用され、構造化データと非構造化テキストの両方に対してモデルが構築されます。

Oracle Machine Learning for SQLサンプル・テンプレート

次のOracle Machine Learning for SQLサンプル・テンプレートのいずれかに基づいて、Oracle Machine Learningノートブックを作成できます。

図10-4 Oracle Machine Learning for SQLサンプル・テンプレート

OML4SQLサンプル・テンプレート
  • OML4SQL異常検出: このノートブックは、異常な出現またはまれな出現を検出するために使用します。Oracle Machine Learningでは、異常検出がサポートされており、準教師あり学習アルゴリズムの1クラス・サポート・ベクター・マシンを使用して、データ内のまれなレコードや異常なレコード(顧客、トランザクションなど)を特定できます。このノートブックは1クラスSVMモデルを構築し、それを使用して異常または疑わしいレコードにフラグを付けます。機械学習の手法全体がOracle Autonomous Database内で実行されます。
  • OML4SQL相関ルール: このノートブックは、相関ルール機械学習手法(マーケット・バスケット分析とも呼ばれる)を適用し、同時発生する項目、障害につながる状態または明らかでないイベントを検出するために使用します。このノートブックでは、A PrioriアルゴリズムをSHスキーマのSH.SALESデータとともに使用して、相関ルール・モデルを構築します。すべての計算は、Oracle Autonomous Database内で行われます。
  • OML4SQL属性評価 - 主要な要因の特定: このノートブックは、ターゲット属性に最も影響を与える主要な要因(属性、予測子、変数とも呼ばれる)を特定するために使用します。このノートブックでは、SHスキーマ・データを使用して、最小記述長アルゴリズムを使用する属性評価モデルを構築します。すべての機能は、Oracle Autonomous Database内で実行されます。
  • OML4SQL分類 - ターゲット顧客の予測: このノートブックは、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測するために使用します。このノートブックでは、SHスキーマ・データを使用して分類デシジョン・ツリー・モデルを構築および適用します。すべての処理は、Oracle Autonomous Database内で行われます。
  • OML4SQLクラスタリング - 顧客セグメントの特定: このノートブックは、顧客の自然クラスタを特定するために使用します。Oracle Machine Learningでは、複数のアルゴリズム(k-Means、O-Cluster、期待値の最大化など)を使用したクラスタリングがサポートされています。このノートブックでは、教師なし学習のk-Meansアルゴリズムを使用して、SHスキーマのCUSTOMERSデータ・セットを使用します。データの探索、準備および機械学習は、Oracle Autonomous Database内で実行されます。
  • OML4SQLデータ・クリーニング - 重複の削除: このノートブックは、Oracle SQLを使用して重複レコードを削除するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。データ・セットCUSTOMER_INSURANCE_LTV_SQLには、OML4SQLノイズ・ノートブックによって生成された重複値が含まれます。

    ノート:

    OML4SQLデータ・クリーニング・ノートブックを実行する前に、まずOML4SQLノイズ・ノートブックを実行する必要があります。
  • OML4SQLデータ・クリーニング - 欠損データ: このテンプレートのノートブックは、Oracle SQLおよびDBMS_DATA_MINING_TRANSFORMパッケージを使用して欠損値を置換するために使用します。データ・セットCUSTOMER_INSURANCE_LTV_SQLには、OML4SQLノイズ・ノートブックによって人為的に生成された欠損値が含まれます。OML4SQLデータ・クリーニング・ノートブックを実行する前に、まずOML4SQLノイズ・ノートブックを実行する必要があります。

    ノート:

    インデータベースOracle Machine Learningアルゴリズムを使用してモデルを構築または適用する場合、自動データ準備が有効であれば、この操作は個別に必要がないことがあります。自動データ準備は、量的属性の欠損値を平均値に、質的属性の欠損値を最頻値に自動的に置換します。
  • OML4SQLデータ・クリーニングの外れ値の削除: このノートブックは、Oracle SQLおよびDBMS_DATA_MINING_TRANSFORMパッケージを使用して外れ値を削除するために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。データ・セットCUSTOMER_INSURANCE_LTVでは、数値に焦点が当てられ、値が上位5%と下位5%にあるレコードが削除されます。
  • OML4SQLデータ・クリーニングのシノニム値のリコード: このノートブックは、Oracle SQLを使用して列のシノニム値をリコードするために使用します。このノートブックでは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。データ・セットCUSTOMER_INSURANCE_LTV_SQLには、OML4SQLノイズ・ノートブックによって生成されたリコード済の値が含まれます。OML4SQLデータ・クリーニングのシノニム値のリコード・ノートブックを実行する前に、まずOML4SQLノイズ・ノートブックを実行する必要があります。
  • OML4SQLデータ変換のビニング: このノートブックは、Oracle SQLおよびDBMS_DATA_MINING_TRANSFORMパッケージを使用して数値列のビニングを実行するために使用します。このノートブックでは、数値列のビニングおよび分布の可視化の方法を示します。
  • OML4SQLデータ変換のカテゴリ型: このノートブックは、Oracle SQLを使用してカテゴリ変数を数値変数に変換するために使用します。このノートブックでは、個別レベル/値をそれぞれ整数にコーディングしてカテゴリ変数を変換する方法と、単純な述語に基づいてインジケータ変数を作成する方法を示します。
  • OML4SQLデータ変換の正規化とスケーリング: このノートブックは、Oracle SQLおよびDBMS_DATA_MINING_TRANSFORMパッケージを使用してデータを正規化およびスケーリングするために使用します。このノートブックでは、zスコア(平均と標準偏差)、最小/最大スケーリングおよび対数スケーリングを使用してデータを正規化する方法を示します。インデータベースOracle Machine Learningアルゴリズムを使用してモデルを構築または適用する場合、自動データ準備により、特定のアルゴリズムによって必要に応じてデータが自動的に正規化されます。
  • OML4SQL次元削減 - 非負値行列因数分解: このノートブックは、インデータベース非負値行列因子分解アルゴリズムを使用して次元削減を実行するために使用します。このノートブックは、多数の列を含む表を削減済機能セットに変換する方法を示します。非負行列因数分解では、非負の係数が生成されます。
  • OML4SQL次元削減 - 特異値分解: このノートブックは、インデータベース特異値分解(SVD)アルゴリズムを使用して次元削減を実行するために使用します。
  • OML4SQL: シリアライズされたモデルのエクスポート: このノートブックは、シリアライズされたモデルをOracle Cloud Object Storageにエクスポートするために使用します。このノートブックは、Oracle Machine Learningの回帰および分類モデルを作成し、Oracle Machine Learning (OML)サービスのREST APIを使用してスコアリングできるように、シリアライズされた形式でモデルをエクスポートします。OMLサービスでは、Oracle Autonomous DatabaseでホストされるREST APIエンドポイントを提供します。これらのエンドポイントを使用すると、Oracle Machine Learningモデルをそのメタデータとともに格納し、モデルのスコアリング・エンドポイントを作成できます。OMLサービスのREST APIでは、Oracle Machine LearningモデルとONNX形式モデルの両方をサポートし、コグニティブ・テキスト機能を有効にします。
  • OML4SQL特徴エンジニアリングの集計および時間: このノートブックは、集計された特徴を生成したり、Oracle SQLを使用して日時の特徴を抽出するために使用します。このノートブックでは、TIME_IDフィールドから日時機能を抽出する方法も示します。
  • OML4SQL特徴選択アルゴリズム・ベース: このノートブックは、インデータベース教師ありアルゴリズムを使用して特徴選択を実行するために使用します。このノートブックは、最初に顧客が保険を購入するかどうかを予測するためにランダム・フォレスト・モデルを構築し、次に機能選択に機能重要度の値を使用します。次に、同じ分類タスクのデシジョン・ツリー・モデルを構築し、分割ノードを取得します。最大限のサポートを持つ最上位の分割ノードでは、それらのノードに関連付けられた機能が選択されます。
  • OML4SQL特徴選択教師なし属性評価: このノートブックは、インデータベース教師なしアルゴリズムの期待値の最大化(EM)を使用して特徴選択を実行するために使用します。このノートブックは、他のノートブックで使用されるCREATE_MODEL2ファンクションとは対照的に、設定表を利用するCREATE_MODELファンクションの使用方法を示しています。
  • OML4SQLサマリー統計を使用した特徴選択: このノートブックは、Oracle SQLを使用してサマリー統計を使用して特徴選択を実行するために使用します。データ・セットCUSTOMER_INSURANCE_LTV_SQLには、OML4SQLノイズ・ノートブックによって人為的に生成されたnull値が含まれます。OML4SQLサマリー統計を使用した機能選択を実行する前に、まずOML4SQLノイズ・ノートブックを実行する必要があります。
  • OML4SQLノイズ: このノートブックは、標準値をnull値で置換し、重複した行を追加するために使用します。このノートブックでは、データ準備ノートブックで使用されるデータ・セットがデータ・クリーニングおよび機能の選択用に準備されます。これは、顧客の財務情報、生涯価値、および顧客が保険を購入したかどうかを含む顧客保険生涯価値データ・セットを使用します。

    ノート:

    データ準備ノートブックの前に、OML4SQLノイズ・ノートブックを実行します。
  • OML4SQLパーティション化されたモデル: このノートブックは、パーティション化されたモデルを構築するために使用します。パーティション化されたモデルは、複数のターゲット・モデルを通じて潜在的に高い精度を実現します。このノートブックでは、SVMモデルを使用して顧客の居住年数を予測しますが、このモデルは顧客性別でパーティション化されています。次に、モデルを使用して最初にターゲットを予測してから、予測詳細でターゲットを予測します。
  • OML4SQLテキスト・マイニング: このノートブックは、テキスト・マイニング機能を使用してモデルを構築するために使用します。Oracle Machine Learningでは、構造化データと非構造化テキスト・データの両方を処理します。Oracle Textを活用することで、Oracle Machine Learningのデータベース内アルゴリズムでは、テキスト列から予測機能が自動的に抽出されます。

    このノートブックでは、SVMモデルを構築して、アフィニティ・カードのロイヤルティ・プログラムに好反応を示す可能性が最も高い顧客を予測します。データには、ユーザーが生成したコメントを含むテキスト列が含まれています。いくつかの追加仕様では、アルゴリズムによって自動的にテキスト列が使用され、構造化データと非構造化テキストの両方に対してモデルが構築されます。

  • OML4SQL回帰: このノートブックは、数値を予測するために使用します。このテンプレートでは、一般化線形モデル(GLM)などの複数の回帰アルゴリズムを使用します。
  • OML4SQL統計ファンクション: このノートブックは、記述統計および比較統計のファンクションに使用します。このノートブック・テンプレートでは、SHスキーマ・データを使用します。
  • OML4SQL時系列: このノートブックは、予測のために時系列データに基づく時系列モデルを構築するために使用します。このノートブックは、指数平滑法アルゴリズムに基づいています。このノートブックの売上予測例は、SH.SALESデータに基づいています。すべての計算は、Oracle Autonomous Database内で行われます。