Oracle Analytics予測モデルの作成および使用

Oracle Analyticsの予測モデルでは、いくつかの埋込み機械学習アルゴリズムを使用して、データ・セットのマイニング、ターゲット値の予測、またはレコードのクラスの識別を行います。予測モデルの作成やトレーニング、データへの適用には、データ・フロー・エディタを使用します。

Oracle Analytics予測モデルとは

Oracle Analytics予測モデルにより、データ・セットに特定のアルゴリズムが適用され、値の予測、クラスの予測またはデータ内のグループの識別が行われます。

Oracle機械学習モデルは、データの予測にも使用できます。Oracle AnalyticsでOracle機械学習モデルを使用するにはどのようにすればよいですかを参照してください。

Oracle Analyticsには、様々な目的のために予測モデルをトレーニングするのに役立つアルゴリズムが含まれています。アルゴリズムの例としては、分類および回帰ツリー(CART)、ロジスティック回帰、K平均法などがあります。

データ・フロー・エディタを使用して、トレーニング・データ・セットのモデルを最初にトレーニングします。予測モデルをトレーニングした後で、予測するデータ・セットにその予測モデルを適用します。

トレーニング済モデルを他のユーザーが使用できるようにすると、ユーザーはそのモデルをデータに適用して値を予測できるようになります。場合によっては、特定のユーザーがモデルをトレーニングし、他のユーザーがそのモデルを適用することがあります。

ノート:

データ内の何を見るべきかわからない場合は、Explainを使用することから始め、機械学習を使用して傾向とパターンを特定できます。データ・フロー・エディタを使用して、予測モデルを作成およびトレーニングし、見つかった傾向とパターンを詳しく調べることができます。「Explainとは」を参照してください。
データ・フロー・エディタを使用して、モデルをトレーニングします。
  • まず、データ・フローを作成し、モデルのトレーニングに使用するデータ・セットを追加します。このトレーニング・データ・セットには、予測するデータ(例: 売上や年齢などの値、または信用リスク・バケットなどの変数)が含まれています。
  • 必要な場合、データ・フロー・エディタを使用して、列の追加、列の選択、結合などによってデータ・セットを編集できます。
  • データがモデルのトレーニング対象であることを確認した後、データ・フローにトレーニング・ステップを追加し、分類(バイナリまたはマルチ)、回帰またはクラスタのアルゴリズムを選択してモデルをトレーニングします。次に、作成されたモデルに名前を付け、データ・フローを保存し、それを実行してモデルをトレーニングおよび作成します。
  • 機械学習オブジェクトのプロパティを調査して、モデルの品質を判別します。必要に応じて、モデルが必要な品質に達するまでトレーニング・プロセスを繰り返すことができます。

完成したモデルを使用して、不明な(またはラベルなしの)データをスコアリングし、データ・フロー内でデータ・セットを生成するか、予測のビジュアライゼーションをプロジェクトに追加します。

たとえば、心疾患を発症するリスクが高い患者を予測するために複数分類モデルを作成してトレーニングするとします。

  1. 年齢、性別、胸痛経験の有無などの個々の患者の属性、および血圧、空腹時血糖、コレステロール、最大心拍数などのメトリックが含まれるトレーニング・データ・セットを提供します。トレーニング・データ・セットには、「尤度」という名前の列も含まれ、これには、「なし」、「可能性が低い」、「可能性がある」、「可能性が高い」、または「あり」のいずれかの値が割り当てられます。
  2. CART (ディシジョン・ツリー)アルゴリズムを使用します。これは、このアルゴリズムが予測の値を追加しない冗長な列を無視し、ターゲットの予測に役立つ列のみを識別および使用するためです。データ・フローにアルゴリズムを追加する場合、「尤度」列を選択してモデルをトレーニングします。このアルゴリズムは機械学習を使用して、出力予測と関連データ・セットを実行するために必要なドライバ列を選択します。
  3. 結果を調べて、トレーニング・モデルを微調整してから、より大きなデータ・セットにモデルを適用して、心疾患があるか発症する可能性が高い患者を予測します。

予測モデル・アルゴリズムの選択方法

Oracle Analyticsには、機械学習のモデル化のニーズ(数値予測、複数分類子、バイナリ分類子、およびクラスタリング)用のアルゴリズムが用意されています。

Oracleの機械学習機能は、検索対象が何であるか、予測分析の実践方法の詳細、およびアルゴリズム間の相違点を理解している高度なデータ・アナリストを対象としています。

通常、ユーザーは、複数の予測モデルを作成して比較し、ユーザーの基準と要件を満たす結果をもらたす可能性が最も高いものを選択することを求めています。これらの基準は異なる場合があります。たとえば、ユーザーは、全体の精度がより高いモデルを選択したり、タイプI (偽陽性)とタイプII (偽陰性)のエラーが最も少ないモデルを選択したり、結果が最適ではないとしても、許容レベルの精度を持つ結果をより速く返すモデルを選択したりする場合があります。

Oracle Analyticsには、予測または分類の種類ごとに複数の機械学習アルゴリズムが含まれています。これらのアルゴリズムを使用すると、ユーザーは複数のモデルを作成することも、微調整されたパラメータを複数使用することも、複数の入力トレーニング・データセットを使用して最適なモデルを選択することもできます。ユーザーは、独自の基準に基づいてモデルを比較および重み付けすることにより、最適なモデルを選択できます。ユーザーは、最適なモデルを決定するために、モデルを適用して計算の結果を視覚化し、精度を決定したり、Oracle Analyticsで出力にモデルを使用した関連データ・セットを開いて探索できます。予測モデルの関連データ・セットとはを参照してください。

提供されているアルゴリズムについて学習するには、次の表を参照してください。

名前 タイプ カテゴリ 関数 説明
CART

分類

回帰

二項分類子

多項分類子

数値

- ディシジョン・ツリーを使用して、離散値と連続値の両方を予測します。

大規模なデータ・セットで使用します。

Elastic Net線形回帰 回帰 数値 ElasticNet 高度な回帰モデル。追加情報(正則化)を提供し、変数選択を実行し、一次結合を実行します。LassoおよびRidge回帰法のペナルティ。

多数の属性とともに使用して、共線性(複数の属性が完全に相関関係にある状態)およびオーバーフィットを回避します。

階層 クラスタリング クラスタリング AgglomerativeClustering ボトムアップ(各観察はそれぞれ独自のクラスタであり、後でマージされます)またはトップダウン(すべての観察が1つのクラスタとして開始されます)および距離メトリックを使用して、クラスタリングの階層を構築します。

データ・セットが大きくなく、事前にクラスタ数がわからない場合に使用します。

K平均法 クラスタリング クラスタリング k-means 反復的にレコードをkクラスタにパーティション化し、各観察が最も近い平均値を持つクラスタに属するようにします。

メトリック列をクラスタ化し、必要なクラスタの数が見込まれている場合に使用します。大きなデータセットの場合に有効に機能します。結果は実行ごとに異なります。

線形回帰 回帰 数値 最小二乗法

リッジ

Lasso

データ・セット内のターゲット変数とその他の属性間のモデル化関係に対する線形アプローチ。

属性が完全に相関していない場合に、数値を予測するために使用します。

ロジスティック回帰 回帰 二項分類子 LogisticRegressionCV カテゴリ依存変数の値を予測するために使用します。依存変数は、1または0にコーディングされたデータを含むバイナリ変数です。
Naive Bayes 分類

二項分類子

多項分類子

GaussianNB 機能間に依存性がないことを前提としたベイズの理論に基づく確率的な分類。

入力ディメンションが多数ある場合に使用します。

ニューラル・ネットワーク 分類

二項分類子

多項分類子

MLPClassifier 分類結果と実際の値を比較して学習し、その結果をネットワークに返してその後の反復のためにアルゴリズムを変更する反復分類アルゴリズム。

テキスト分析に使用します。

ランダム・フォレスト 分類

二項分類子

多項分類子

数値

- 複数のディシジョン・ツリーを構成し、すべてのディシジョン・ツリーをまとめて表す値を出力するアンサンブル学習法。

数値およびカテゴリ変数を予測するために使用します。

SVM 分類

二項分類子

多項分類子

LinearSVC、SVC レコードを空間内でマッピングし、分類に使用できる超平面を構築することで、レコードを分類します。新しいレコード(スコアリング・データ)は空間にマップされ、カテゴリに属すると予測されます。これは、レコードが属する超平面の側に基づきます。

Oracle Analytics予測モデルを作成して使用するための一般的なワークフロー

次に、予測モデルを作成するための一般的なタスクと、そのモデルをデータ・セットに適用してプロジェクトで使用する方法を示します。

タスク 説明 詳細情報
サンプル・データを使用したモデルのトレーニング 付属のアルゴリズムのいずれかを使用してモデルをトレーニングし、サンプル・データのトレンドとパターンを予測します。 予測モデルの作成およびトレーニング
モデルの評価 関連データ・セットを使用して、モデルの有効性を評価し、問題がなくなるまでモデルを繰り返し調整します。 予測モデルの検査
データ・フローを使用したデータへのモデルの適用 トレーニング予測モデルをデータに適用して、予測されたトレンドとパターンを含むデータ・セットを生成します。 データ・セットへの予測モデルまたは登録されているOracle機械学習モデルの適用
プロジェクト・データへの予測モデルの適用 シナリオを使用してプロジェクトに予測モデルを追加します。 プロジェクトへの予測モデルの追加

予測モデルの作成およびトレーニング

解決が必要な問題に基づいて、拡張データ・アナリストが適切なアルゴリズムを選択し、予測モデルをトレーニングし、次にモデルの結果を評価します。

正確なモデルへの到達は反復プロセスであり、拡張データ・アナリストは様々なモデルを試して、その結果を比較し、試行錯誤に基づいてパラメータを微調整できます。データ・アナリストは、ファイナライズされた正確な予測モデルを使用して、他のデータ・セットのトレンドを予測したり、モデルをプロジェクトに追加したりできます。

Oracle Analyticsには、数値予測、複数分類、バイナリ分類およびクラスタリング用のアルゴリズムが用意されています。アルゴリズムを選択する方法の詳細は、予測モデル・アルゴリズムの選択方法を参照してください。

  1. ホーム・ページで、「作成」をクリックしてから、「データ・フロー」を選択します。
  2. モデルのトレーニングに使用するデータ・セットを選択します。「追加」をクリックします。
    通常は、モデルのトレーニング用として特別に準備され、予測するデータのサンプルを含むデータ・セットを選択します。モデルの精度は、トレーニング・データの代表性によって異なります。
  3. データ・フロー・エディタで、「ステップの追加(+)」をクリックします。
    データ・セットを追加した後、データ・セット内のすべての列を使用してモデルを構築したり、関連する列のみを選択したりできます。関連する列を選択するには、データ・セットについて理解している必要があります。結果の動作に影響しないことがわかっている列、または冗長な情報を含む列は無視します。「列の選択」ステップを追加することで、関連する列のみを選択できます。関連する列がわからない場合は、すべての列を使用します。
  4. リストの最下部に移動し、データ・セットに適用するトレイン・モデル・タイプをクリックします。
  5. アルゴリズムを選択して、「OK」をクリックします。
  6. 予測や分類などの教師ありモデルで作業している場合は、「ターゲット」をクリックして、予測しようとしている列を選択します。たとえば、個人の収入を予測するモデルを作成する場合は、「収益」列を選択します。
    クラスタリングなど、教師なしモデルで作業している場合、ターゲット列は必要ありません。
  7. モデルのデフォルト設定を変更して微調整し、予測結果の精度を改善します。これらの設定は、操作中のモデルによって決定されます。
  8. 「モデルの保存」ステップをクリックして、名前と説明を指定します。これは、生成された予測モデルの名前になります。
  9. 「保存」をクリックし、データ・フローの名前および説明を入力し、「OK」をクリックしてデータ・フローを保存します。
  10. 「データ・フローの実行」をクリックし、入力データ・セットおよび指定したモデル設定に基づいて予測モデルを作成します。

予測モデルの検査

予測モデルを作成し、データ・フローを実行すると、モデルに関する情報を確認して、その正確性を判断できます。この情報を使用して、モデルの設定を繰り返し調整することで、その正確性を向上させ、より質の高い結果を予測します。

予測モデルの詳細の表示

予測モデルの詳細情報は、モデルの理解およびデータの予測に適しているかどうかの判断に役立ちます。モデルの詳細には、そのモデル・クラス、アルゴリズム、入力列および出力列が含まれます

  1. ホーム・ページで、「ナビゲータ」をクリックしてから、「機械学習」をクリックします。
  2. トレーニング・モデルのメニュー・アイコンをクリックして「検査」を選択します。
  3. 「詳細」をクリックしてモデルの情報を表示します。

予測モデルの質の評価

予測モデルの質の理解に役立つ情報を表示します。たとえば、モデル精度、適合率、再現率、F1値、偽陽性比率などの正確性のメトリックを確認できます。

Oracle Analyticsでは、モデルの作成に使用されるアルゴリズムに関係なく同じメトリックが提供されるため、異なるモデル間の比較が簡単になります。モデルの作成プロセス中、入力データ・セットが2つに分割され、パーティション・パーセントのトレーニング・パラメータに基づいてモデルがトレーニングおよびテストされます。モデルでは、データ・セットのテスト部分を使用して、構築されるモデルの精度をテストします。
「品質」タブの知見に基づいて、モデル・パラメータを調整して再トレーニングする必要がある場合があります。「予測モデルの作成およびトレーニング」を参照してください。
  1. ホーム・ページで、「ナビゲータ」をクリックしてから、「機械学習」をクリックします。
  2. トレーニング・モデルのメニュー・アイコンをクリックして「検査」を選択します。
  3. 「品質」タブをクリックしてモデルの質のメトリックを確認します。

予測モデルの関連データ・セットとは

データ・フローを実行してOracle Analyticsの予測モデルを作成すると、Oracle Analyticsによって、関連する一連のデータ・セットが作成されます。これらのデータ・セットについてプロジェクトをオープンおよび作成して、モデルの正確性を学習できます。

予測モデルの関連データ・セットとはを参照してください。

モデルに対して選択したアルゴリズムに応じて、関連データ・セットには、予測ルール、精度メトリック、混同マトリックス、予測のキー・ドライバなど、モデルに関する詳細が含まれます。この情報を使用して、モデルを微調整して結果を改善したり、関連データ・セットを使用してモデルを比較し、より正確なモデルを判断できます。

たとえば、ドライバ・データ・セットを開いて、モデルに対して強い正または負の影響がある列を確認できます。これらの列を調べることで、一部の列が現実的な入力ではない、または予測に対しては細かすぎるため、モデル変数として扱われないことがわかります。データ・フロー・エディタを使用してモデルを開き、検出した情報に基づいて、無関係な列や細かすぎる列を削除してモデルを再生成します。「品質」および「結果」タブをチェックし、モデルの精度が向上しているかどうかを確認します。モデルの精度が十分になり、新しいデータ・セットをスコアリングする準備が整うまでこのプロセスを続行します。

異なるアルゴリズムによって、同様の関連データ・セットが生成されます。アルゴリズムのタイプに応じてデータ・セット内の個々のパラメータおよび列名が変更される場合がありますが、データ・セットの機能は同じままです。たとえば、統計データ・セットの列名が線形回帰からロジスティック回帰に変更される場合がありますが、統計データ・セットにはモデルの精度メトリックが含まれます。

関連データ・セットは次のとおりです。

CARTree

このデータ・セットはCART (ディシジョン・ツリー)を表形式で表したもので、ターゲット列値を予測するために計算されます。これには、ディシジョン・ツリーの条件と条件の基準、各グループの予測、および予測信頼度を表す列が含まれています。組込みツリー図ビジュアライゼーションは、このディシジョン・ツリーをビジュアル化するために使用できます。

これらのモデルとアルゴリズムの組合せを選択すると、CARTreeデータ・セットが出力されます。

モデル アルゴリズム
数値 数値予測のCART
二項分類 CART (ディシジョン・ツリー)
多項分類 CART (ディシジョン・ツリー)

分類レポート

このデータ・セットは、ターゲット列の個別値ごとの精度メトリックを表形式で示したものです。たとえば、ターゲット列にYesとNoという異なる2つの値を入力できる場合、このデータ・セットは、F1、精度、リコール、サポート(この値を含むトレーニング・データ・セットの行数)など、ターゲット列の異なる個々の値に関する精度メトリックを示します。

これらのモデルとアルゴリズムの組合せを選択すると、分類データ・セットが出力されます。

モデル アルゴリズム
二項分類

Naive Bayes

ニューラル・ネットワーク

サポート・ベクター・マシン

多項分類

Naive Bayes

ニューラル・ネットワーク

サポート・ベクター・マシン

混同マトリックス

エラー・マトリックスとも呼ばれるこのデータ・セットは、ピボット表レイアウトです。各行は予測クラスのインスタンスを表し、各列は実際のクラスのインスタンスを表します。この表は、精度、リコールおよびF1の精度メトリックの計算に使用される偽陽性、偽陰性、真陽性および真陰性の数をレポートします。

これらのモデルとアルゴリズムの組合せを選択すると、混同マトリックス・データ・セットが出力されます。

モデル アルゴリズム
二項分類

ロジスティック回帰

CART (ディシジョン・ツリー)

Naive Bayes

ニューラル・ネットワーク

ランダム・フォレスト

サポート・ベクター・マシン

多項分類

CART (ディシジョン・ツリー)

Naive Bayes

ニューラル・ネットワーク

ランダム・フォレスト

サポート・ベクター・マシン

ドライバ

このデータ・セットは、ターゲット列値を決定する列に関する情報を提供します。線形回帰を使用して、これらの列を識別します。各列には係数値と相関値が割り当てられます。係数値は、ターゲット列の値の決定に使用される列の加重期間を説明します。相関値は、ターゲット列と依存列の関係の方向を示します。たとえば、依存列に基づいて、ターゲット列の値が増えるか減るかということです。

これらのモデルとアルゴリズムの組合せを選択すると、ドライバ・データ・セットが出力されます。

モデル アルゴリズム
数値

線形回帰

Elastic Net線形回帰

二項分類

ロジスティック回帰

サポート・ベクター・マシン

多項分類 サポート・ベクター・マシン

Hitmap

このデータ・セットには、ディシジョン・ツリーのリーフ・ノードに関する情報が含まれています。表の各行はリーフ・ノードを表しており、セグメント・サイズや信頼度、予想される行数など、そのリーフ・ノードが表している内容を説明する情報が格納されています。たとえば、予想される正確な予測の数 = セグメント・サイズ * 信頼度です。

これらのモデルとアルゴリズムの組合せを選択すると、Hitmapデータ・セットが出力されます。

モデル アルゴリズム
数値 数値予測のCART

残差

このデータ・セットは、残差予測の品質に関する情報を提供します。残差とは、回帰モデルの測定値と予測値の差異です。このデータ・セットには、データ・セットの列すべての実際の値と予測された値の絶対差を集計した合計値が含まれています。

これらのモデルとアルゴリズムの組合せを選択すると、残差データ・セットが出力されます。

モデル アルゴリズム
数値

線形回帰

Elastic Net線形回帰

数値予測のCART

二項分類 CART (ディシジョン・ツリー)
多項分類 CART (ディシジョン・ツリー)

統計

このデータ・セットのメトリックは、生成に使用されたアルゴリズムによって異なります。このメトリックのリストは、次のアルゴリズムに基づいていることに注意してください。

  • 線形回帰、数値予測のCART、エラスティック・ネット線形回帰 - これらのアルゴリズムには、R2乗、調整済R2乗、平均絶対誤差(MAE)、平均平方根誤差(MSE)、相対絶対誤差(RAE)、関連平方根誤差(RSE)、2乗平均平方根誤差(RMSE)が含まれます。
  • CART (分類および回帰ツリー)、Naive Bayes分類、ニューラル・ネットワーク、Support Vector Machine (SVM)、ランダム・フォレスト、ロジスティックス回帰 - これらのアルゴリズムには、精度、合計F1が含まれます。

これらのモデルとアルゴリズムの組合せを選択すると、このデータ・セットが出力されます。

モデル アルゴリズム
数値

線形回帰

Elastic Net線形回帰

数値予測のCART

二項分類

ロジスティック回帰

CART (ディシジョン・ツリー)

Naive Bayes

ニューラル・ネットワーク

ランダム・フォレスト

サポート・ベクター・マシン

多項分類

Naive Bayes

ニューラル・ネットワーク

ランダム・フォレスト

サポート・ベクター・マシン

サマリー

このデータ・セットには、ターゲット名やモデル名などの情報が含まれます。

これらのモデルとアルゴリズムの組合せを選択すると、サマリー・データ・セットが出力されます。

モデル アルゴリズム
二項分類

Naive Bayes

ニューラル・ネットワーク

サポート・ベクター・マシン

多項分類

Naive Bayes

ニューラル・ネットワーク

サポート・ベクター・マシン

予測モデルの関連データ・セットの検出

関連データ・セットは、予測モデルをトレーニングすると生成されます。

関連データ・セットには、アルゴリズムに応じて、予測ルール、正確性メトリック、混同マトリックス、予測のキー・ドライバなどのモデルに関する詳細が含まれます。これらのパラメータは、予測および分類を決定するためにモデルで使用されたルールを理解するのに役立ちます。
  1. ホーム・ページで、「ナビゲータ」をクリックしてから、「機械学習」をクリックします。
  2. トレーニング・モデルのメニュー・アイコンをクリックして「検査」を選択します。
  3. 「関連」タブをクリックしてモデルの関連データ・セットにアクセスします。
  4. 関連データ・セットをダブルクリックして、表示したり、プロジェクトで使用します。

プロジェクトへの予測モデルの追加

プロジェクトでシナリオを作成するときに、予測モデルをプロジェクトのデータ・セットに適用して、そのモデルが検索するよう設計されている傾向とパターンを明らかにします。

ノート:

Oracle機械学習モデルをプロジェクトのデータに適用することはできません。
モデルをプロジェクトに追加し、モデルの入力をデータ・セットの列にマップすると、「データ・パネル」に、キャンバスにドラッグ・アンド・ドロップできるモデルのオブジェクトが表示されます。機械学習では、ビジュアライゼーションの対応するデータ列に基づいてモデルの値が生成されます。
  1. ホーム・ページで、「作成」をクリックしてから、「プロジェクト」をクリックします。
  2. プロジェクトの作成に使用するデータ・セットを選択し、「プロジェクトに追加」をクリックします。
  3. 「データ」ペインで、「追加」をクリックし、「シナリオの作成」を選択します。
  4. 「シナリオの作成 - モデルの選択」ダイアログで、モデルを選択して「OK」をクリックします。
    適用できるのは予測モデルのみです。Oracle機械学習モデルは適用できません。
    各モデル入力をデータ要素と照合できない場合は、「モデルへのデータのマップ」ダイアログが表示されます。
  5. 「モデルへのデータのマップ」ダイアログが表示される場合は、「データ・セット」フィールドで、モデルで使用するデータ・セットを選択します。
  6. 必要に応じてモデル入力とデータ要素を照合します。「完了」をクリックします。
    シナリオが「データ要素」ペインにデータ・セットとして表示されます。
  7. データ・セットおよびデータ・モデルから「ビジュアル化」キャンバスに要素をドラッグ・アンド・ドロップします。
  8. シナリオを調整するには、「データ要素」ペインでシナリオを右クリックして、「シナリオの編集」を選択します。
  9. データ・セットを変更し、必要に応じてモデル入力とデータ要素のマッピングを更新します。
  10. 「保存」をクリックしてプロジェクトを保存します。