ヘッダーをスキップ
Oracle Data Mining概要
11g リリース1(11.1)
E05704-02
  目次へ
目次
索引へ
索引

戻る
戻る
 
次へ
次へ
 

16 Non-Negative Matrix Factorization

この章では、特徴抽出用にOracle Data Miningで使用される監視なしアルゴリズムであるNon-Negative Matrix Factorizationについて説明します。


注意:

Non-Negative Matrix Factorization(NMF)は、「Learning the Parts of Objects by Non-Negative Matrix Factorization」という論文(D. D. Lee、H. S. Seung共著、『Nature』誌第401号P.788〜791、1999年)に記述されています。

この章では、次の項目について説明します。

NMFとは

Non-Negative Matrix Factorization(NMF)は、最新の抽出アルゴリズムです。NMFは、多数の属性があるときに、これらの属性があいまいな場合や予測可能性が低い場合に有効です。属性を組み合せることによって、意味のあるパターン、トピックまたはテーマが生成されます。

NMFは、多くの場合テキスト・マイニングで役立ちます。テキスト・ドキュメントでは、同じ言葉が異なる場所で別の意味を持って出現することがあります。たとえば、「hike」という単語は、アウトドア(outdoor)または金利(interest rate)に関連して使用されます。NMFでは、次のように属性を組み合せることによって、予測能力にとって必須であるコンテキストを取り入れます。


"hike" + "mountain" -> "outdoor sports"
"hike" + "interest" -> "interest rates"

仕組み

NMFでは、ユーザーが定義した数の特徴を作成して多変量データを分解します。各特徴は元の属性セットの一次結合で、これらの一次結合の係数は非負数です。

NMFは、VとW×Hがほぼ等しくなるように、データ行列Vを2つの下位ランク行列WおよびHの積に分解します。NMFは、反復法を使用して、その積がVに近づくようにWとHの初期値を変更します。近似誤差が収束するか、反復が指定数に達すると、処理が停止します。

モデル適用の際、NMFモデルでは、モデルによって発見された属性(特徴)の新しいセットに元のデータがマップされます。

NMF用のデータ準備

NMFに対する自動データ準備では、量的属性が正規化されます。

単純な(ネストしていない)データ型の列に欠損値がある場合、NMFではそれらをランダムに欠損した値として解釈します。質的データの欠損値は最頻値に、量的データの欠損値は平均値に置換されます。

ネストした列に欠損値がある場合、NMFではそれらをスパースとして解釈します。スパースな量的データは0(ゼロ)に、スパースな質的データはゼロ・ベクトルに置換されます。

独自のデータ準備を行う場合、外れ値が存在するとNMFに大きな影響を与える可能性があります。ビニングまたは正規化を行う前に、クリッピング変換を実行してください。NMFでは通常、正規化を行うことによってメリットが得られます。ただし、min-max正規化で外れ値が存在すると、行列因数分解のパフォーマンスが低下します。行列因数分解のパフォーマンスを向上するには、許容誤差を減らす必要があります。しかし、許容誤差を減らすと作成時間が長くなります。


関連項目:

第19章「自動データ準備と組込みのデータ準備」

ネストした列および欠損データについては、『Oracle Data Miningアプリケーション開発者ガイド』を参照してください。


SVDやその他の従来の分解手法と比較して、NMFはテキスト抽出に優れた方法であることが知られています。NMFは、ドキュメントの用語行列を入力として受け取り、共起用語の加重セットを表すトピック・セットを生成します。検出されたトピックによって、元のドキュメントを効率的に表現する基盤が形成されます。