我想为 KNN 方法中的距离度量确定一组权重。我通读了 MATLAB 帮助,发现有一些函数用于逆或平方逆(wrt the distances)权重,但是用户定义的权重必须是以下形式的函数@ fnc
:
fcn
是一个函数,它接受一个非负距离矩阵,并返回一个包含非负距离权重的相同大小的矩阵。例如,inversesquared
等价于@(d)d.^(-2)
。
我已经定义了提供一组随机权重的函数:
function WGT=gene
weights=round(rand(a,b))
WGT=T
end
但是,当我应用 KNN 时,权重不会改变并且是均匀分布的。