Oracle Data Mining (ODM) は、 Oracle Database Enterprise Editionのオプションです。分類、予測、回帰、関連付け、特徴選択、異常検出、特徴抽出、および特殊な分析のための、複数のデータマイニングおよびデータ分析アルゴリズムが含まれています。データベース環境内でデータマイニングモデルを作成、管理、および運用展開するための手段を提供します。
Oracle Corporationは、Oracle Databaseリレーショナルデータベース製品内にさまざまなデータマイニングアルゴリズムを実装しています。これらの実装はOracleデータベースカーネルと直接統合され、リレーショナルデータベーステーブルに格納されたデータに対してネイティブに動作します。これにより、データを抽出したり、スタンドアロンのマイニング/分析サーバーに転送したりする必要がなくなります。リレーショナルデータベースプラットフォームは、モデルを安全に管理し、大量のデータに対してSQLクエリを効率的に実行するために活用されます。このシステムは、データマイニング機能のための汎用的な統一インターフェースを提供するいくつかの汎用操作を中心に構成されています。これらの操作には、データマイニングモデルの作成、適用、テスト、および操作を行う機能が含まれます。モデルはデータベースオブジェクトとして作成および格納され、その管理は、テーブル、ビュー、インデックス、およびその他のデータベースオブジェクトと同様に、データベース内で行われます。
データマイニングにおいて、モデルを使用してまだ発生していない挙動の予測や記述を導き出すプロセスは「スコアリング」と呼ばれます。従来の分析ワークベンチでは、新しいデータをスコアリングするために、分析エンジンで構築されたモデルをミッションクリティカルなシステムにデプロイするか、リレーショナルテーブルから分析ワークベンチにデータを移動する必要があります。ほとんどのワークベンチは独自のスコアリングインターフェイスを提供しています。ODMは、データベースに直接保存されたデータをスコアリングするためのOracle SQL関数を提供することで、モデルのデプロイを簡素化します。これにより、ユーザー/アプリケーション開発者は、複数のレベルで結果をパイプライン化して操作する機能、およびパフォーマンス向上のためにデータアクセスを並列化およびパーティショニングする機能など、Oracle SQLのあらゆる機能を活用できます。
モデルは、いくつかの方法のいずれかで作成および管理できます。Oracle Data Miner は、モデルの作成、テスト、適用プロセスをユーザーが段階的に実行できるグラフィカル ユーザー インターフェイス( CRISP-DM手法に準拠) を提供します。アプリケーションおよびツール開発者は、PL/SQLまたはJava API を使用して、予測マイニング機能と記述マイニング機能を組み込むことができます。ビジネス アナリストは、専用のMicrosoft Excelアダプタ インターフェイスである Oracle Spreadsheet Add-In for Predictive Analytics を使用して、予測分析の機能を迅速に試したり、実証したりできます。ODM は、予測マイニングには決定木、ナイーブ ベイズ、サポート ベクター マシン、一般化線形モデル(GLM)、記述マイニングにはアソシエーション ルール、K 平均法、直交分割[ 1 ] [ 2 ]クラスタリング、非負行列因子分解など、よく知られた機械学習手法の選択肢を提供します。また、特定の問題に対する入力マイニング属性の相対的な重要度を評価するための、最小記述長に基づく手法も提供されます。 Oracle Data Miningのほとんどの機能は、テキスト(非構造化データ)属性を入力として受け入れることで、テキストマイニングを可能にします。ユーザーはテキストマイニングオプションを設定する必要はありません。Database_optionsデータベースオプションがバックグラウンドでこれを処理します。
Oracle Data Miningは2002年に初めて導入され、そのリリース名は対応するOracleデータベースのリリース名にちなんで付けられています。
Oracle Data Miningは、1990年代半ばにThinking Machines Corporationが開発し、1999年にOracleがThinking Machinesを買収した後にOracleが販売したデータマイニングツールセットであるDarwinの後継製品です。しかし、製品自体は完全に再設計され、ゼロから書き直されています。Darwinが古典的なGUIベースの分析ワークベンチであったのに対し、ODMはOracleデータベースに統合されたデータマイニング開発/展開プラットフォームとOracle Data Miner GUIを提供します。
Oracle Data Miner 11gR2の新しいワークフローGUIは、Oracle Open World 2009でプレビュー公開されました。更新されたOracle Data Miner GUIは2012年にリリースされました。これは無料で、Oracle SQL Developer 3.1の拡張機能として利用できます。
Oracle Data Miningは、リリース11gR1時点で、以下のデータマイニング機能を備えています。
Oracle Data Miningのほとんどの機能は、入力としてリレーショナルテーブルまたはビューを1つ受け取ります。フラットデータは、ネストされた列を使用することでトランザクションデータと組み合わせることができ、1対多の関係(スター型スキーマなど)を含むデータのマイニングが可能になります。データマイニング用のデータ準備には、日付や空間データを含め、 SQLのすべての機能を使用できます。
Oracle Data Miningは、数値属性、カテゴリ属性、および非構造化(テキスト)属性を区別します。また、外れ値処理、離散化、正規化、ビニング(一般的にはソート)など、モデル構築前のデータ準備ステップのためのユーティリティも提供します。
ユーザーは、Oracle Data Miner というGUIクライアント アプリケーションを介して Oracle Data Mining にアクセスできます。Oracle Data Minerは、データ マイニング機能と構造化テンプレート (マイニング アクティビティと呼ばれます) へのアクセスを提供し、操作の順序を自動的に指定し、必要なデータ変換を実行し、モデル パラメータを設定します。ユーザー インターフェイスでは、データ マイニングアクティビティに関連付けられたJavaおよび/またはSQLコードの自動生成も可能です。Java コード ジェネレータは、Oracle JDeveloperの拡張機能です。また、独立したインターフェイスとして、 Microsoft Excelから Oracle Data Mining Predictive Analytics PL/SQLパッケージにアクセスできる Predictive Analytics 用スプレッドシート アドインも存在します。
Oracleデータベースのバージョン11.2以降、Oracle Data MinerはOracle SQL Developerと統合されています。[ 3 ]
Oracle Data Miningは、モデルの作成、削除、記述、適用、テスト、エクスポート、インポートを行うためのネイティブPL/SQLパッケージ(DBMS_DATA_MINING)を提供します。以下のコードは、分類モデルを構築するための典型的な呼び出し例を示しています。
BEGIN DBMS_DATA_MINING.CREATE_MODEL ( model_name = > ' credit_risk_model' , function => DBMS_DATA_MINING.classification , data_table_name => 'credit_card_data' , case_id_column_name => 'customer_id' , target_column_name = > ' credit_risk' , settings_table_name => 'credit_risk_model_settings' ); END ;ここで、「credit_risk_model」はモデル名であり、テーブル「credit_card_data」で提供されるトレーニングデータに基づいて、将来の顧客の「credit_risk」を分類するという明確な目的のために構築され、各ケースは一意の「customer_id」によって区別され、残りのモデルパラメータはテーブル「credit_risk_model_settings」を通じて指定されます。
Oracle Data Miningは、 WebアプリケーションやJava EEアプリケーションとの統合を可能にし、プラットフォーム間の移植性を容易にするために、データマイニングに関するJava Data Mining (JDM)標準(JSR-73)に準拠したJava APIもサポートしています。
Oracle Data Miningは、リリース10gR2以降、データマイニングモデルのスコアリングを行うための組み込みSQL関数を備えています。これらの単一行関数は、分類、回帰、異常検出、クラスタリング、および特徴抽出をサポートします。以下のコードは、分類モデルの典型的な使用例を示しています。
SELECT customer_name FROM credit_card_data WHERE PREDICTION ( credit_risk_model USING * ) = 'LOW' AND customer_value = 'HIGH' ;リリース11gR2(11.2.0.2)では、ODMは一部のデータマイニングモデルについて、外部で作成されたPMMLのインポートをサポートしています。PMMLは、データマイニングモデルを表現するためのXMLベースの標準規格です。
PL /SQLパッケージDBMS_PREDICTIVE_ANALYTICSは、データの前処理、モデルの構築と評価、新規データのスコアリングなど、データマイニングプロセスを自動化します。PREDICT操作は、ターゲット値の分類または回帰を予測するために使用され、EXPLAINは、ターゲット列の特徴選択を説明する際に、属性を影響度順にランク付けします。新しい11g機能であるPROFILEは、ターゲット属性に基づいて顧客セグメントとそのプロファイルを検索します。これらの操作は、実行可能な結果を提供する運用パイプラインの一部として使用することも、エンドユーザーが解釈できるように表示することもできます。
Data Minerは、データアナリストがデータベース内のデータを直接操作し、データをグラフィカルに探索し、複数のデータマイニングモデルを構築および評価し、Oracle Data Miningモデルを新しいデータに適用し、Oracle Data Miningの予測と洞察を企業全体に展開できるようにするOracle SQL Developerの拡張機能です。[...] Oracle Data Minerは、次の3つのコンポーネントで構成されています。Oracle Database 12cまたはOracle Database 11g Release 2、Oracle Data MinerワークフローGUIをバンドルするSQL Developer(クライアント)、Oracle DatabaseにインストールされるData Minerリポジトリ