正規性検定は、統計的決定における特別な適合度仮説検定です。 正規性テストは、観測を使用して、母集団が正規分布に従うかどうかを判断します。 このトピックでは、Machine Learning Studioが提供する正常性テストコンポーネントについて説明します。
Normality Testコンポーネントは、Anderson-Darling Test、Kolmogorov-Smirnov Test、およびQ-Qプロットメソッドで構成されています。 ビジネス要件に基づいて1つ以上のテスト方法を選択できます。
アンダーソン − ダーリング検定は、サンプルデータの経験的分布関数を予想正規分布と比較する。 差が大きい場合、検定は、母集団が正規分布を有するという仮説を否定する。
Kolmogorov-Smirnov検定は、2つの観測値の分布を比較します。
Q-Qプロットは、試験サンプルデータの分位数を既知の分布と比較することによってデータの分布を試験する。 1,000を超えるサンプルが収集された場合、システムはこれらのサンプルを計算に使用し、Q-Qプロットを生成します。 プロット中のデータ点は、必ずしも全てのサンプルをカバーするわけではない。
コンポーネントの設定
次のいずれかの方法を使用してコンポーネントを設定できます。
AI (PAI) コンソール向けMachine Learning Platform for AI
タブ
パラメーター
説明
フィールド設定
Columns
非該当
パラメーター設定
Anderson-Darling Test
有効な値:
Yes
No
デフォルト値: はい。
Kolmogorov-Smirnov Test
有効な値:
Yes
No
デフォルト値: はい。
Use Q-Q Plotの使用
有効な値:
Yes
No
デフォルト値: はい。
チューニング
Computing Cores
コンピューティングで使用されるコアの数。 値は正の整数でなければなりません。
Memory Size per Core (Unit: MB)
各コアのメモリサイズ。
PAIコマンド
PAI -name normality_test -project algo_public -DinputTableName=test -DoutputTableName=test_out -DselectedColNames=col1,col2 -Dlifecycle=1;
パラメーター
必須
説明
デフォルト値
inputTableName
Yes
入力テーブルの名前。
デフォルト値なし
outputTableName
Yes
出力テーブルの名前。
デフォルト値なし
selectedColNames
No
入力テーブルから選択された列。 DOUBLEまたはBIGINTタイプの複数の列を選択できます。
デフォルト値なし
inputTablePartitions
No
入力テーブルのパーティションの名前。
""
enableQQplot
No
Q-Qプロットを使用するかどうかを指定します。 有効な値は true と false です。
true
enableADtest
No
Anderson-Darlingテストを実行するかどうかを指定します。 有効な値は true と false です。
true
enableKStest
No
Kolmogorov-Smirnovテストを実行するかどうかを指定します。 有効な値は true と false です。
true
ライフサイクル
No
出力テーブルのライフサイクル。 値は -1以上の整数です。
-1
coreNum
No
このパラメーターはmemSizePerCoreで使用されます。 値は正の整数でなければなりません。 システムは、入力データの量に基づいてインスタンスの数を計算します。
-1
memSizePerCore
No
各コアのメモリサイズ。 単位:MB。 値は正の整数でなければなりません。 有効値: (100,64 × 1024) システムは、入力データの量に基づいてメモリサイズを計算します。
-1
例:
入力データ
drop table if exists normality_test_input; create table normality_test_input as select * from ( select 1 as x union all select 2 as x union all select 3 as x union all select 4 as x union all select 5 as x union all select 6 as x union all select 7 as x union all select 8 as x union all select 9 as x union all select 10 as x ) tmp;
PAIコマンド
PAI -name normality_test -project algo_public -DinputTableName=normality_test_input -DoutputTableName=normality_test_output -DselectedColNames=x -Dlifecycle=1;
入力の説明
入力形式: 計算に必要な列を選択します。 複数の列を選択できます。 データ型はDOUBLEまたはBIGINTです。
アウトプットの説明
出力形式: ダイアグラムと結果テーブルが提供されます。 次の表に、結果テーブルのフィールドを示します。 結果テーブルには2つのパーティションがあります。
p=test
のパーティションには、Anderson-DarlingまたはKolmogorov-Smirnovテストの結果がリストされています。enableADtest
またはenableKStest
パラメーターがtrueに設定されている場合、データが提供されます。p=プロット
のパーティションは、Q-Qプロットテストの結果をリストします。enableQQplot
パラメーターがtrueに設定されている場合、データが提供されます。p=test
列は再利用されます。 パーティションp=plot
が使用されている場合、testvalue列には元の観測値 (Q-Qプロットのx軸) が記録され、pvalue列には正規分布の予想データ (Q-Qプロットのy軸) が記録されます。
列
データ型
説明
colName
STRING
列名
testname
STRING
テスト名。
testvalue
DOUBLE
テスト値またはQ-Qプロットのx軸。
pvalue
DOUBLE
Q-Qプロットのp値またはy軸。
p
DOUBLE
パーティション名。
出力テーブル
+------------+------------+------------+------------+------------+ | colname | testname | testvalue | pvalue | p | +------------+------------+------------+------------+------------+ | x | NULL | 1.0 | 0.8173291742279805 | plot | | x | NULL | 2.0 | 2.470864450785345 | plot | | x | NULL | 3.0 | 3.5156067948020056 | plot | | x | NULL | 4.0 | 4.3632330349313095 | plot | | x | NULL | 5.0 | 5.128868067945126 | plot | | x | NULL | 6.0 | 5.871131932054874 | plot | | x | NULL | 7.0 | 6.6367669650686905 | plot | | x | NULL | 8.0 | 7.4843932051979944 | plot | | x | NULL | 9.0 | 8.529135549214654 | plot | | x | NULL | 10.0 | 10.182670825772018 | plot | | x | Anderson_Darling_Test | 0.1411092332197832 | 0.9566579606430077 | test | | x | Kolmogorov_Smirnov_Test | 0.09551932503797644 | 0.9999888659426232 | test | +------------+------------+------------+------------+------------+