Oracle Analytics予測モデルの作成および使用
Oracle Analyticsの予測モデルでは、いくつかの埋込み機械学習アルゴリズムを使用して、データ・セットのマイニング、ターゲット値の予測、またはレコードのクラスの識別を行います。予測モデルの作成やトレーニング、データへの適用には、データ・フロー・エディタを使用します。
Oracle Analytics予測モデルとは
Oracle Analytics予測モデルは、データ・セットに特定のアルゴリズムを適用し、値やクラスの予測をしたり、そのデータ内のグループを識別します。
Oracle機械学習モデルは、データの予測にも使用できます。参照
Oracle AnalyticsでOracle機械学習モデルを使用する方法
Oracle Analyticsには各種アルゴリズムが組み込まれており、様々な目的での予測モデルのトレーニングに役立ちます。アルゴリズムには、分類や回帰ツリー(CART)、ロジスティック回帰、K平均法などがあります。
データ・フロー・エディタを使用して、まずトレーニング・データ・セットのモデルをトレーニングします。予測モデルのトレーニングを行ったら、予測するデータ・セットにそれを適用します。
トレーニングしたモデルを他のユーザーが使用できるようにすれば、それらのユーザーも自身のデータにそのモデルを適用して値を予測できます。場合によっては、特定のユーザーがモデルのトレーニングを行い、その他のユーザーがそのモデルを適用します。
ノート:
データで探すものがわからない場合は、機械学習によって傾向とパターンを特定するExplainの使用から始めることができます。その後、データ・フロー・エディタを使用して、予測モデルの作成とトレーニングを行い、Explainが検出した傾向とパターンを掘り下げます。Explainとはを参照してください。- まず、データ・フローを作成し、モデルのトレーニングに使用するデータ・セットを追加します。このトレーニング・データ・セットには、予測するデータ(売上や年齢のような値や、信用リスク・バケットのような変数など)が含まれています。
- 必要な場合は、データ・フロー・エディタを使用して列の追加や選択、結合などを行い、データ・セットを編集できます。
- そのデータがモデルのトレーニング対象であることを確認したら、データ・フローにトレーニング・ステップを追加し、分類(二項または多項)、回帰、クラスタのいずれかのアルゴリズムを選択してモデルをトレーニングします。その後、結果のモデルに名前を付けてデータ・フローを保存し、それを実行してモデルのトレーニングと作成を行います。
- 機械学習オブジェクトのプロパティを調べて、モデルの品質を判断します。必要な場合は、モデルが求める品質になるまでトレーニング・プロセスを繰り返すことができます。
完成したモデルを使用して、不明またはラベルのないデータをスコアリングし、データ・フロー内にデータ・セットを生成するか、プロジェクトに予測ビジュアライゼーションを追加します。
例
心臓病になるリスクが高い患者を予測するために、多項分類モデルを作成してトレーニングする必要があるとします。
- 年齢や性別、これまでに胸の痛みを感じたことがあるかなど、個々の患者に関する属性と、血圧や空腹時血糖、コレステロール、最大心拍数などのメトリックを含むトレーニング・データ・セットを用意します。トレーニング・データ・セットには、値absent、less likely、likely、highly likelyまたはpresentのいずれかが割り当てられた"Likelihood"という名前の列も含めます。
- 予測に値を加えない冗長な列が無視され、ターゲットの予測に役立つ列のみが識別されて使用されるため、CART (ディシジョン・ツリー)アルゴリズムを選択します。データ・フローにアルゴリズムを追加したら、「Likelihood」列を選択してモデルをトレーニングします。アルゴリズムでは機械学習を使用して、予測の実行および予測や関連データ・セットの出力に必要なドライバ列を選択します。
- 結果を調べて、トレーニング・モデルを細かく調整した後、そのモデルをより大規模なデータ・セットに適用して、心臓病にかかっている、またはかかる可能性が高い患者を予測します。
トレーニング・モデル・アルゴリズムの選択方法
Oracle Analyticsには、数値予測、多項分類子、二項分類子、クラスタリングなど、機械学習モデリングに必要なアルゴリズムが用意されています。
オラクル社の機械学習機能は、データで探すものがわかっていて、予測分析の実行に詳しく、アルゴリズム間の相違点を理解している上級データ・アナリスト向けです。
通常は、複数の予測モデルを作成してそれらを比較し、基準や条件を満たす結果を得られる可能性が最も高いモデルを選択します。これらの基準は変わる場合もあります。たとえば、全体の精度がより高いモデルを選択する場合もあれば、最も低いタイプI (偽陽性)やタイプII (偽陰性)のエラーがあるモデルを選択する場合や、理想的な結果でなくても、許容できるレベルの精度で、より速く結果を返すモデルを選択する場合もあります。
Oracle Analyticsには、各種の予測または分類向けに、複数の機械学習アルゴリズムがあります。ユーザーは、これらのアルゴリズムを使用して、複数のモデルを作成することも、細かく調整された各種パラメータを使用することも、様々な入力トレーニング・データセットを使用してから最適なモデルを選択することも可能です。最適なモデルは、ユーザー独自の基準に対してモデルを比較し、重み付けすることで選択できます。最適なモデルを判断するには、モデルを適用し、計算の結果をビジュアル化して精度を判断するか、Oracle Analyticsでモデルを使用して出力された関連データ・セットを開いて調査します。関連データ・セットとはを参照してください。
次の表を参考にして、用意されているアルゴリズムを確認してください。
名前 | タイプ | カテゴリ | 関数 | 説明 |
---|---|---|---|---|
CART |
分類 回帰 |
二項分類子 多項分類子 数値 |
- | ディシジョン・ツリーを使用して、離散値と連続値の両方を予測します。
大規模データ・セットに使用します。 |
エラスティック・ネット線形回帰 | 回帰 | 数値 | ElasticNet | 詳細回帰モデル。追加の情報(正則化)を提供し、変数の選択およびと線形結合を実行します。LassoおよびRidge回帰法のペナルティ。
共線性(複数の属性が完全に相関している)やオーバーフィットを避けるため、多数の属性とともに使用します。 |
階層 | クラスタリング | クラスタリング | AgglomerativeClustering | ボトムアップ(各観察はそれ自体のクラスタであり、順次マージされる)またはトップダウン(すべての観察が1つのクラスタとして開始される)と、距離メトリックを使用してクラスタの階層を作成します。
データ・セットが大規模ではなく、クラスタの数が事前にわからない場合に使用します。 |
K平均法 | クラスタリング | クラスタリング | k-means | 最も近い平均のクラスタに各観察が属するkクラスタに、レコードを繰り返しパーティション化します。
メトリック列のクラスタ化に使用したり、予想される必要なクラスタ数を設定して使用します。大規模データ・セットに使用すると効果的です。結果は実行ごとに異なります。 |
線形回帰 | 回帰 | 数値 | 最小二乗法
リッジ Lasso |
データ・セット内のターゲット変数とその他の属性間のモデリング関係に対する線形アプローチ。
属性が完全には相関していない場合に、数値の予測に使用します。 |
ロジスティック回帰 | 回帰 | 二項分類子 | LogisticRegressionCV | カテゴリ依存変数の値の予測に使用します。依存変数は、1または0にコード化されたデータを含むバイナリ変数です。 |
Naive Bayes | 分類 |
二項分類子 多項分類子 |
GaussianNB | 特徴の間に依存性がないことを前提としたBayesの定理に基づく確率的分類。
入力ディメンションが多数ある場合に使用します。 |
ニューラル・ネットワーク | 分類 |
二項分類子 多項分類子 |
MLPClassifier | 分類結果を実際の値と比較することで学習し、それをネットワークに返して今後の反復のためのアルゴリズムを変更する反復分類アルゴリズム。
テキスト分析に使用します。 |
ランダム・フォレスト | 分類 |
二項分類子 多項分類子 数値 |
- | 複数のディシジョン・ツリーを作成し、すべてのディシジョン・ツリーを一括して表す値を出力するアンサンブル学習手法。
数値変数やカテゴリ変数の予測に使用します。 |
SVM | 分類 |
二項分類子 多項分類子 |
LinearSVC、SVC | レコードを空間にマップし、分類に使用可能な超平面を作成することでレコードを分類します。新しいレコード(スコアリング・データ)は空間にマップされ、新しいレコードが属する超平面の側面に基づいて、あるカテゴリに属すると予測されます。 |
Oracle Analytics予測モデルを作成して使用するための一般的なワークフロー
次に、予測モデルを作成するための一般的なタスクと、そのモデルをデータ・セットに適用してプロジェクトで使用する方法を示します。
タスク | 説明 | 詳細情報 |
---|---|---|
サンプル・データを使用したモデルのトレーニング | 付属のアルゴリズムのいずれかを使用してモデルをトレーニングし、サンプル・データのトレンドとパターンを予測します。 | 予測モデルの作成およびトレーニング |
モデルの評価 | 関連データ・セットを使用して、モデルの有効性を評価し、問題がなくなるまでモデルを繰り返し調整します。 | トレーニング・モデルの検査 |
データ・フローを使用したデータへのモデルの適用 | トレーニング予測モデルをデータに適用して、予測されたトレンドとパターンを含むデータ・セットを生成します。 | データ・セットへの予測モデルまたはOracle機械学習モデルの適用 |
プロジェクト・データへの予測モデルの適用 | シナリオを使用してプロジェクトに予測モデルを追加します。 | プロジェクトへの予測モデルの追加 |
予測モデルの作成およびトレーニング
解決が必要な問題に基づいて、上級データ・アナリストが適切なアルゴリズムを選択して予測モデルをトレーニングした後、モデルの結果を評価します。
正確なモデルに到達するにはプロセスを繰り返す必要があり、上級データ・アナリストは、様々なモデルを試してその結果を比較し、試行錯誤を基にしてパラメータを細かく調整できます。データ・アナリストは、ファイナライズされた正確な予測モデルを使用して、その他のデータ・セットの傾向を予測したり、モデルをプロジェクトに追加できます。
Oracle Analyticsには、数値予測、多項分類、二項分類およびクラスタリングのアルゴリズムが用意されています。アルゴリズムの選択方法の詳細は、トレーニング・モデル・アルゴリズムの選択方法を参照してください。
アルゴリズムは、Oracle Machine LearningをローカルのOracle Analytics Desktopディレクトリにインストールするまで使用できません。「デスクトップのMachine Learningのインストール方法」を参照してください