いくつかの1クラス分類アルゴリズムをテストするために、外れ値を持つ非線形データをシミュレートするRコード/パッケージを探しています。アウトライヤーと非線形データをシミュレートして1クラスの分類子をテストする
バナナ型のデータセットを作成するこのコードが見つかりました。私の実際のデータが2dの双曲線のように見えるので、かなり良いです。 しかし、私は混乱行列を印刷して私のモデルの性能を評価できるように、すべての異常値がラベル付けされたデータセットが必要です。 必ずしもこのように見える必要はありません。最も重要なことは非線形性です。
ありがとうございます。
banana=function(A,B,C1,C2,N,keep=10,init=10)
{
R=init*keep+N*keep
x1=x2=0
bimat=matrix(double(2*N),ncol=2)
for (r in 1:R) {
x1=rnorm(1,mean=(B*x2+C1)/(A*(x2^2)+1),sd=sqrt(1/(A*(x2^2)+1)))
x2=rnorm(1,mean=(B*x2+C2)/(A*(x1^2)+1),sd=sqrt(1/(A*(x1^2)+1)))
if (r>init*keep && r%%keep==0) {
mkeep=r/keep; bimat[mkeep-init,]=c(x1,x2)
}
}
return(bimat)
}
# usage
set.seed(66)
nvar2=2
A=0.5; B=0; C1=C2=3
y2=banana(A=A,B=B,C1=C1,C2=C2,1000)
曲をすることができますベクトル、結果を比較し、あなたの混乱マトリックスを持っています –
データをソートすることによってあなたは何を意味するのですか?それらは2次元にあり、2次元の1つの値の高い値はそれが外れ値であることを暗示しません。 – MomoMI
どのような外れ値あなたはx = 3、y = 3のような点を追加するだけでもよいし、あなたの分布にほぼ合った点を望んでいるかもしれませんが、ちょっと離れすぎています。 – G5W