Weka を使用して、特定のデータセットの確率を計算しています。具体的には、KernelEstimatorクラスを使用しています。
良好な密度推定結果を得るには、帯域幅パラメーターの選択が重要ですが、帯域幅パラメーターの計算方法を見つけることができませんでした。使用されているカーネル関数は単純なGaussian Kernelです。帯域幅パラメーターの計算方法を知っている人はいますか?
Weka を使用して、特定のデータセットの確率を計算しています。具体的には、KernelEstimatorクラスを使用しています。
良好な密度推定結果を得るには、帯域幅パラメーターの選択が重要ですが、帯域幅パラメーターの計算方法を見つけることができませんでした。使用されているカーネル関数は単純なGaussian Kernelです。帯域幅パラメーターの計算方法を知っている人はいますか?
ここで見つけることができます:
そこにあなたが見つけるでしょう
m_SumOfWeights += weight;
double range = m_Values[m_NumValues - 1] - m_Values[0];
if (range > 0) {
m_StandardDev = Math.max(range / Math.sqrt(m_SumOfWeights),
// allow at most 3 sds within one interval
m_Precision / (2 * 3));
}
m_StandardDev は、後でガウス カーネルの「分散」、つまり帯域幅として使用するものです。