- NN entropy: Nearest Neighbor entropyは、標本座標が与えられたときに、各標本の最近傍点との距離を用いて標本の母集団のエントロピーを推定する方法のこと
- k-NN entropyは最近傍点の代わりに、第k近傍点を用いる方法のこと
- 標本座標の次元をm、標本数をn、を第i点の第k近傍点までの(ユークリッド)距離、はオイラー定数(0.5772...)、とすると、それは
- と計算するという
- もしくははdigamma(k)であるので
- 式の参照先
library(FNN)
m <- 2
n.pt <- 100
X <- matrix(rnorm(n.pt*m),ncol=m)
D <- as.matrix(dist(X))
D.sorted <- t(apply(D,1,sort))
sum.kNNdist <- apply(log(D.sorted),2,sum)
K <- 10
H <- m/n.pt * sum.kNNdist[2:(K+1)] + m/2*log(pi)-lgamma(m/2+1)-digamma(1:K)+log(n.pt)
H.fnn <- entropy(X,k=K)
print(H)
print(H.fnn)