図21.12 「Arrhythmia.jmp」の連続変数の欠測値レポート
起動ウィンドウで[OK]をクリックすると、レポートが開き、「コマンド」アウトラインと「欠測値に関する情報」が表示されます。以下のコマンドがあります。
• 欠測値レポート
• 多変量正規分布による補完(起動ウィンドウに指定した列に、名義尺度や順序尺度のものがある場合は使用できません。)
• 多変量の特異値分解補完(起動ウィンドウに指定した列に、名義尺度や順序尺度のものがある場合は使用できません。)
• 自動データ補完(起動ウィンドウに指定した列に、名義尺度や順序尺度のものがある場合は使用できません。)
ヒント: By変数のすべての水準に対して欠測値コマンドを実行するには、Ctrlキーを押しながら目的のコマンドのボタンをクリックします。
[欠測値レポート]をクリックすると、各列の名前と、その列の欠測値の個数をリストした「欠測値に関する情報」が開きます。
欠測値のある列のみ表示
欠測値がない列をリストから除外します。
閉じる
「欠測値に関する情報」を閉じます。
行の選択
レポートで選択されている列で欠測値を含む行を、データテーブルで選択します。
行の除外
レポートで選択されている列で欠測値を含む行に関して、[行の除外]属性をオンにします。
セルの色
レポートで選択されている列に関して、データテーブルにおいて、欠測値を含むセルに色を塗ります。
行の色分け
レポートで選択されている列に関して、データテーブルにおいて、欠測値を含む行に色を与えます。
[欠測値のクラスター分析]は、欠測値のパターンに対して階層型クラスター分析を行います。
• プロット右側の樹形図は、欠測値のパターンに対するクラスター分析の結果です。各行は、[テーブル]>[欠測値パターン表示]を使用して得られる行と同じものです。
• プロット下側の樹形図は、変数に対するクラスター分析の結果です。
このレポートを使用して、特定グループの列に類似した欠測値パターンの傾向があるかどうかを判断できます。
プロットの行は、欠測値のパターンによって定義されます。各パターンに対してそれぞれ1つの行があります。列は変数に対応しています。赤いセルは、プロットの下に表示されている列が欠測値になっていることを示しています。セルの上にカーソルを置くと、そのセルが表す行番号のリストが表示されます。プロット内をクリックすると、その欠測パターンのデータ行が選択されます。また、プロットには選択されていることを示す縦の棒が表示されます。
[欠測値のスナップショット]をクリックすると、欠測値のセルプロットが表示されます。列は変数を表します。黒いセルは欠測値を示します。このプロットは、データ収集期間が終わる前に患者や回答者などが試験や調査から外れることができるような経時測定データの欠測を理解する上で特に便利です。
「多変量正規分布による補完」ユーティリティは、多変量正規分布に基づいて欠測値を補完します。この手順では、すべての変数が連続尺度でなければなりません。アルゴリズムは最小2乗法に基づく補完法を使用します。共分散行列がペアごとの共分散を使用して計算されます。共分散行列の対角要素(分散)は、変数ごとに欠測値以外のすべての値を用いて計算されます。共分散行列の非対角要素は、両変数において欠測値でないペアを用いて計算されます。共分散行列が特異な場合、アルゴリズムはMoore-Penrose疑似逆行列に基づく最小2乗最小ノルム法を使って補完を行います。
[多変量正規分布による補完]では、共分散の推定値として縮小させた推定値(shrinkage estimation)を使用できます。縮小させた推定値を使用すると、共分散行列の推定値を改善できます。縮小させた推定値の詳細については、Schäfer and Strimmer(2005)を参照してください。
メモ: 検証列が指定されている場合、共分散行列は学習セットだけを用いて計算されます。
「欠測値補完に関する情報」は、「多変量の欠測値補完」で使われた計算を説明しています。その結果には、次の内容が含まれています。
• 補完の手法(最小2乗法または最小2乗最小ノルム法)
• 補完された個数
• 共分散行列の推定値として、縮小された推定値を用いたかどうか
• 非対角要素の縮小で用いた係数
• 処理された行数および列数
• 欠測値パターンの数
補完が完了すると、データテーブル内で補完された値に対応するセルが明るい青色で表示されます。「欠測値に関する情報」が開いている場合は、表示内容が更新され、欠測値がなくなったことが示されます。
補完を取り消すには[元に戻す]をクリックします。すると、補完された値が元の欠測値に戻ります。
「多変量の特異値分解補完」ユーティリティは、特異値分解(SVD; Singular Value Decomposition)を使って欠測値を補完します。このユーティリティは、変数の数が数百を超えるようなデータに便利です。特異値分解の計算には共分散行列の計算が必要ないため、多数の変数を含むデータテーブルの場合は、この特異値分解による補完をお勧めします。この手法では、すべての変数が連続尺度でなければなりません。
特異値分解は、データの行列XをX = UDV′で表します。ここで、UとVは直交行列、Dは対角行列です。
「多変量の特異値分解補完」ユーティリティのデフォルトで使用される特異値分解アルゴリズムは疎なLanczos法(sparse Lanczos method)であり、これはIRLB法(Implicitly Restarted Lanczos Bidiagonalization method)とも呼ばれます。Baglama and Reichel(2005)を参照してください。このアルゴリズムにより、以下のことが行われます。
1. 初期値として、各欠測値を、その列の平均に置き換えます。
2. 欠測部分が置き換えられた行列Xを、特異値分解します。
3. 欠測値を、特異値分解から得られたUDV′ 行列の対応する要素に置き換えます。
4. 行列Xが変化しなくなるまで、手順2と3の特異値分解を繰り返します。
[多変量の特異値分解補完]をクリックすると、「補完法」ウィンドウが開き、推奨される設定が表示されます。
特異ベクトルの数
補完において計算される特異ベクトルの個数です。
メモ: 特異ベクトルの次元を大きくしすぎないことが重要です。次元が大きいと、特異値分解と補完の各反復において、数値が変化しません。
最大反復回数
欠測値の補完に使用される反復回数です。
反復ログの表示
反復回数を示す「詳細」レポートが開き、収束基準の詳細が表示されます。
データが大きい場合は、進捗バーが表示されて、特異値分解が完了した次元が示されます。いつでも補完を停止し、その次元の数を使用できます。
「欠測値補完に関する情報」には、欠測値補完に関する次のような情報が表示されます。
• 補完の手法
• 補完された個数
• 処理された行数および列数
補完が完了すると、「欠測値に関する情報」にはどの列にも欠測値が存在しないことが表示されます。補完された値はデータテーブル内で明るい青色で表示されます。
補完を取り消すには[元に戻す]をクリックします。すると、補完された値が元の欠測値に戻ります。
ADI(Automated Data Imputation)ユーティリティは、低ランク行列近似法(low rank matrix
approximation)の1つを使用して欠損値を代入します。この手法は、「行列補完」(matrix completion)とも呼ばれています。一度、学習すれば、その学習したモデルのスコアリング計算式を使用して、ストリーミングデータを補完できます。「ストリーミングデータ」とは、将来において新しく入手されるデータのことで、補完の調整や検証には使用されなかったデータのことを指します。が追加されます。このユーティリティは柔軟かつロバスト(頑健)であり、また、低ランク近似のための最良の次元を自動的に選択します。これらの機能により、ADIはさまざまな種類のデータセットに対して適用できます。
行列の低ランク近似は、X = UDV′形式であり、特異値分解(SVD; Singular Value Decomposition)として見ることができます。ADIは、補完モデルとして柔らかい補完法(soft impute method)を使用しています。また、低ランク近似のランクをデータから決定します。
ADIアルゴリズムは次の手順を踏みます。
1. データを、学習セットと検証セットに分割します。
2. 各セットを、学習セットのデータを使用して中心化・尺度化します。
3. 分割されたそれぞれのデータセットに対して、乱数に基づき一部の非欠測部分を欠測値に変更します。この追加された欠測値を、ここでは生成された欠測値(IM; Induced Missing)と呼びます。
4. 調整パラメータの値ごとに、学習セットから補完モデルを推定します。生成された欠測値(IM)が、調整パラメータの最適値を決定するのに使用されます。
5. ステップ4で選択された補完モデルをもとに、学習セットから低ランク近似が行われます。
6. 学習セットへのオーバーフィットを避けるために(つまり、将来のデータに対するあてはまりがよくなるように)、検証セットをもとにランクを決めます。これは、ステップ5で決定されたランクを上限として、検証セットに補完モデルをあてはめることで行います。
「自動データ補完」ユーティリティには、補完した値の保存に関するオプションと詳細設定を保存するためのオプションがあります。
図21.13 ADI制御
補完値の保存に関するオプション
ADIメソッドの補完された値を保存するための、次の3つの オプション が利用できます。
新しいデータテーブルを作成する
元のデータテーブルと同じ大きさのデータテーブルを新規作成します。新規作成されたテーブルには、起動ウィンドウで選択された列には補完値が含まれています。
現データテーブルに計算式を保存する
起動ウィンドウで指定された列の欠測値を補完した列を現在のデータテーブルに作成します。これらの新たに作成された列は、「補完された_」という名前の列グループにまとめられます。また、「自動データ補完列」という列も作成されます。この列には、欠測値を補完する計算式が含まれています。新たな行が追加されると計算式によって、その新たな行における欠測部分が自動的に補完されます。この計算式により、ストリーミングデータの欠測値に対する補完が行えます。これは、デフォルトのオプションです。
現データテーブルの欠測を置き換える
現在のデータテーブルに欠測値を補完します。補完された値は、データテーブル内で明るい青色で表示されます。
詳細設定
次の詳細設定が含まれます。なお、推奨される値がデフォルト値になっています。
次元の上限
低ランク近似における最大ランクを指定します。デフォルト値は、選択された列で形成される行列の次元から決められます。
最大反復回数
補完モデルを推定する反復計算の最大反復回数を指定します。デフォルトの値は10です。
次元選択で欠測値として扱う割合
学習セットと検証セットに追加されるIM値(imputed missing value; 生成された欠測値)の割合を決定します。デフォルトの割合は、各セットで0.2です。
検証データとして用いる行の割合
学習セットと検証セットに使用する行の割合を指定します。デフォルトの割合は、0.3です(検証セットが30%)。
乱数シード値の設定
「自動データ補完」で用いる乱数のシード値を指定します。後に同じ結果を再現したい場合には、このオプションに正の値を指定してください。