機械学習(ML)モデルの使用
データ変換では、データ・フローでのMLモデルの使用がサポートされています。 データ・フローで機械学習(ML)モデルを作成および使用する方法について学習します。
トピック
- データ・フロー・エディタでのMLモデル・データ・エンティティの作成
データ変換でMLモデルを使用するには、2つのデータ・フローを作成する必要があります。 まず、データ・フロー・エディタを使用してMLモデル・データ・エンティティを構築してから、データ・フローのデータ・エンティティを使用して、ソース接続からデータをマイニングし、ターゲット・サーバーにロードする必要があります。 - MLモデル・データ・エンティティのプロパティ
「データ・エンティティの追加」ウィザードの「プロパティ」タブには、MLモデル・データ・エンティティの定義に使用できるデータ・マイニング・オプションがあります。 - データ・フローでのMLモデルの使用
「予測モデル」データベース関数を使用して、ソース・データに対してMLモデル・アルゴリズムを実行し、出力をターゲット・データベースにロードできます。
親トピック: データ変換ページ
データ・フロー・エディタでのMLモデル・データ・エンティティの作成
データ変換でMLモデルを使用するには、2つのデータ・フローを作成する必要があります。 まず、データ・フロー・エディタを使用してMLモデル・データ・エンティティを構築する必要があり、その後、データ・フローでデータ・エンティティを使用して、ソース接続からデータをマイニングし、ターゲット・サーバーにロードできます。
データ・フロー・エディタでMLモデル・データ・エンティティを構築するには、
- MLモデルを構築するデータ・エンティティをデザイン・キャンバスにドラッグします。
- コンポーネントを選択し、ターゲット・コンポーネントの右上隅にある「データ・エンティティの追加」アイコン
をクリックします。
- 「データ・エンティティの追加」ページが表示され、ターゲット・コンポーネントの次の詳細を構成できます:
「一般」タブ
- 「名前」テキスト・ボックスに、新しく作成したデータ・エンティティの名前を入力します。
- 「エンティティ・タイプ」ドロップダウンから、データ・エンティティ・タイプとして「MLモデル」を選択します。
このエンティティ・タイプを選択すると、ユーザー・インタフェースは次のように変化します:
- 「接続」ドロップダウンには、作成したOracle接続のみがリストされます。
- 「データ・エンティティの追加」ウィザードに「プロパティ」タブが表示され、「学習のタイプ」、「関数」、「アルゴリズム」を選択し、MLモデルを定義するパラメータを構成できます。 詳細は、「MLモデル・データ・エンティティのプロパティ」を参照してください。
- 「接続タイプ」ドロップダウンから、新しく作成したデータ・エンティティの追加元となる必要な接続を選択します。 MLモデル・データ・エンティティの場合、「接続タイプ」ドロップダウンには、オプションとして「Oracle」のみがリストされます。
- 「接続」ドロップダウンには、関連する接続タイプを使用して作成した接続が移入されます。 「接続」ドロップダウンから、MLモデル・データ・エンティティを保持するサーバー名を選択します。
- 「スキーマ」ドロップダウンに、選択した接続に対応するすべてのスキーマが2つのグループで表示されます。
- 「新規データベース・スキーマ」(以前にインポートしたことがないもの)と、
- 既存のデータベース・スキーマ(以前にインポートされて、データ・エンティティを置換する可能性があるもの)です。
- 「タグ」テキスト・ボックスに、希望するタグを入力します。 タグを使用して、「データ・エンティティ」ページに表示されるデータ・エンティティをフィルタできます。
- このデータ・エンティティを機能グループとしてマークする場合は、「拡張オプション」を開き、「機能グループとして処理」チェック・ボックスをクリックします。
- 「次」をクリックします。
「プロパティ」タブ
- このデータ・エンティティの構築に使用する「学習のタイプ」、「関数」および「アルゴリズム」を選択します。 オプションの詳細は、「MLモデル・データ・エンティティのプロパティ」を参照してください。
- 選択したオプションに基づいて、「パラメータ」セクションに「重要度」および「高」とマークされたパラメータのリストが移入されます。
アイコンを使用して、その他の必須パラメータを追加できます。
データ・フローを正常に実行できるように、各パラメータに値を指定する必要があります。
「列」タブ
- 新しく作成したデータ・エンティティに新しい列を追加するには、
「列の追加」アイコンをクリックします。
表示されている表に新しい列が追加されます。
- この表には次の列が表示されます:
- 名前
- データ型 - セルをクリックして、必要なデータ型を構成します。
- スケール
- 長さ
- アクション - 作成した列を削除するには、クロス・アイコンをクリックします。
- 列を一括で削除するには、列を選択して
「削除」アイコンをクリックします。
- 必要な列詳細を検索するには、「検索」テキスト・ボックスに必要な列名を入力し、[Enter]を押します。 必要な列の詳細が表示されます。
- 「次」をクリックします。
「データ・エンティティのプレビュー」タブ
作成したすべての列とその構成済の詳細のプレビューが表示されます。 データ・エンティティがOracleデータベースに属している場合、表の統計を表示することもできます。 詳細は、「データ・エンティティの統計の表示」を参照してください。
- 「保存」をクリックして構成を保存し、ウィザードを終了します。
- データ・フローを保存して実行します。
新しいデータ・エンティティが作成され、「データ・エンティティ」ページに表示されます。
親トピック: 機械学習(ML)モデルの使用
MLモデル・データ・エンティティのプロパティ
「データ・エンティティの追加」ウィザードの「プロパティ」タブには、MLモデル・データ・エンティティの定義に使用できるデータ・マイニング・オプションがあります。
このトピックでは、データ・マイニングの関数やアルゴリズムなどのOracle Machine Learningの概念に関する予備知識を前提としています。 詳細は、『Oracle Machine Learning for SQL APIガイド』を参照してください。
次のいずれかのオプションを使用して、MLモデル・データ・エンティティのプロパティを構成できます:
- 学習のタイプ: 管理者
- 関数: 分類
- ディシジョン・ツリー
- 明示的セマンティック分析
- 一般化線形モデル
- Naive Bayes
- ランダム・フォレスト
- ニューラル・ネットワーク
- サポート・ベクター・マシン
- 関数: 回帰
- 一般化線形モデル
- ニューラル・ネットワーク
- サポート・ベクター・マシン
- 関数: 時系列
- 指数平滑法
- 関数: 属性重要度
- 最小説明長
- 関数: 分類
- 学習のタイプ: 監視なし
- 関数: 関連
- Apriori
- 関数: 属性重要度
- CUR行列分解
- 関数: 異常検出
- 1クラス・サポート・ベクター・マシン
- 関数: クラスタリング
- 期待値最大化
- k-Means
- 直交パーティショニング・クラスタリング
- 関数: 特徴抽出
- 明示的セマンティック分析
- Non-Negative Matrix Factorization
- 特異値分解
- 関数: 関連
親トピック: 機械学習(ML)モデルの使用
データ・フローでのMLモデルの使用
「予測モデル」データベース関数を使用して、ソース・データに対してMLモデル・アルゴリズムを実行し、出力をターゲット・データベースにロードできます。
MLモデルをデータ・フローで使用する前に、MLモデルを構築する必要があります。 MLモデルの作成方法の詳細は、「データ・フロー・エディタでのMLモデル・データ・エンティティの作成」を参照してください。
データ・フローでMLモデルを使用するには:
- 「データ・フローの作成」の指示に従って、新しいデータ・フローを作成します。
- データ・フロー・エディタで、データ・フローでソースとして使用する表をドラッグし、デザイン・キャンバスにドロップします。
- データベース関数ツールバーで、「機械学習」をクリックし、予測モデル変換コンポーネントをドラッグしてデザイン・キャンバスにドロップします。
- 予測モデル変換コンポーネントをクリックして、プロパティを表示します。
- 「一般」タブで、次を指定します:
- 接続 - ドロップダウンには、使用可能なすべてのOracle接続がリストされます。 使用するOracle接続を選択します。
- スキーマ - スキーマを選択します。
- MLモデル - ドロップダウンには、使用可能なすべてのMLモデルがリストされます。 MLモデルの構築方法の詳細は、「データ・フロー・エディタでのMLモデル・データ・エンティティの作成」を参照してください。
- 「列マッピング」タブで、埋め込むソース列を演算子のINPUT属性にマップします。 列マッピングで使用可能な列は、
prediction parameters
のみです。 使用可能な列から「式」列にテキスト列をドラッグします。 - データ・フローでターゲットとして使用する表をドラッグし、デザイン・キャンバスにドロップします。
- データ・フローを保存して実行します。
データ変換では、ソース・データに対して予測モデルが実行され、出力がターゲット表に書き込まれます。
親トピック: 機械学習(ML)モデルの使用