4.3 自動データ準備の理解
自動データ準備(ADP)を使用したデータ変換について理解します。
ほとんどのアルゴリズムでは、なんらかの形のデータ変換が必要となります。Oracle Machine Learning for SQLは、モデルの作成プロセス時にアルゴリズムで必要とされる変換を自動的に実行できます。ユーザーは、この自動変換に独自の変換を追加したり、すべての変換を独自に管理できます。
自動変換を計算する際、OML4SQLでは、ヒューリスティックを使用して特定のアルゴリズムの一般的な要件に対処します。多くの場合、このプロセスによってモデルの質がある程度確保されます。
ビニング、正規化および外れ値の処理は、機械学習アルゴリズムで一般的に必要とされる変換です。
4.3.1 ビニング
リソース使用率を改善するためにデータをビニングする方法について説明します。
ビニングは離散化とも呼ばれ、連続データおよび離散データのカーディナリティを減らすための手法です。ビニングでは、関連する複数の値をビンにグループ化して、個別値の数を減らします。
ビニングを行うと、モデルの質をほとんど落とすことなく、リソースの使用率やモデル作成の応答時間を大幅に向上させることが可能です。ビニングを行うと、属性間の関係が補強され、モデルの質が向上する場合があります。
教師ありビニングは、データの重要な特性を使用してビン境界を判断する高い知能を備える形式のビニングです。教師ありビニングでは、ターゲットとの結合分布を考慮した単一予測子のディシジョン・ツリーによってビン境界が特定されます。教師ありビニングは、量的属性と質的属性の両方に使用できます。
4.3.3 外れ値の処理
外れ値を処理するために行う必要のある操作について理解します。
列内の他の値から大幅に外れている値は、外れ値とみなされます。外れ値が存在すると、データに歪効果が現れ、正規化やビニングなどの変換の有効性が抑制される場合があります。
トリミングやクリッピングなど外れ値の処理手法を行うと、外れ値の影響を最小限に抑えることができます。
外れ値は、機器の異常に起因する不正確な読取りなど、問題のあるデータを表します。ただし、特にビジネス分野などの一部のケースでは、外れ値が完全に有効となることがあります。たとえば、人口調査のデータにおいて、富裕層に属する一部の個人の収入が一般層とは大きく異なる場合があります。この情報はデータの重要な部分であるため、外れ値として処理しないでください。外れ値の処理を決定するには専門知識が必要です。
4.3.4 ADPによるデータの変換方法
各アルゴリズムに対してADPがどのようにデータを準備するかを、次の表に示します。
表4-1 Oracle Machine LearningのアルゴリズムとADP
アルゴリズム | 機械学習機能 | ADPによる処理 |
---|---|---|
相関ルール |
ADPは相関ルールに対して効果がない。 |
|
分類 |
ADPはディシジョン・ツリーに対して効果がない。データ準備はアルゴリズムによって処理される。 |
|
クラスタリング |
ガウス分布を使用してモデル化された単一列の(ネストしていない)数値列が正規化される。ADPは他の種類の列に対して効果がない。 |
|
分類と回帰 |
量的属性が正規化される。 |
|
クラスタリング |
量的属性が正規化される。 |
|
属性評価 |
教師ありビニングによってすべての属性がビニングされる。 |
|
MSET-SPRT |
分類(異常検出用) |
Zスコアによる正規化が実行されます。 |
分類 |
教師ありビニングによってすべての属性がビニングされる。 |
|
特徴抽出 |
量的属性が正規化される。 |
|
クラスタリング |
属性ごとのビン数を自動的に計算する特別な形式の等幅ビニングによって量的属性がビニングされる。すべてNULLまたは単一の値を持つ数値列は除外されます。 |
|
特徴抽出 |
量的属性が正規化される。 |
|
分類、異常検出および回帰 |
量的属性が正規化される。 |
関連項目:
-
アルゴリズム固有のデータ準備の詳細は、Oracle Machine Learning for SQL概要の第III部 アルゴリズムを参照してください