邻域分量分析(NCA)是一种非参数的特征选择方法,其目标是最大限度地提高回归和分类算法的预测精度。统计和机器学习工具箱™函数fscnca
和fsrnca
通过正则化执行NCA特征选择,学习特征权重,以最小化目标函数,该目标函数测量训练数据上的平均遗漏分类或回归损失。
考虑一个训练集包含的多类分类问题n观察:
在哪里 是特征向量, 是类标签,以及c为类数。目的是学习分类器 它接受一个特征向量并做出预测 真正的标签 属于 .
考虑一个随机分类器:
随机选择一个点, ,从 作为“参考点”
标签 使用参考点的标签 .
该方案类似于1-NN分类器,其中参考点被选择为新点的最近邻居 。在NCA中,参考点是随机选择的,并且 有一定的概率被选为参考点。的概率 那一点 选自 作为参考点 如果 更接近于 由距离函数测量 ,在那里
和 是特征权重。假设
在哪里 是否某个核函数或相似函数在什么时候假设值很大 它很小。假设它是
书中建议的那样[1].参考点 选择从 ,所以求和 对所有j必须等于1。因此,可以写入
现在考虑这个随机分类器的省略一应用,即预测的标签 使用 ,训练集 不包括的 . 这一点的概率 被选为的参考点 是
正确分类的平均漏掉概率为 随机分类器对观察结果进行正确分类我使用 .
在哪里
使用随机分类器进行正确分类的平均漏一概率为
右边的
取决于权重向量
.邻域分量分析的目标是最大化
关于
.fscnca
使用中介绍的正则化目标函数[1].
在哪里 是正则化参数。正则化项驱动了中的许多权重 到0。
选择内核参数后 在 作为1,求权向量 可以表示为以下给定条件下的最小化问题 .
在哪里f(w) = -F(w)和f我(w) = -F我(w).
请注意,
最小值的参数不变如果你给目标函数加一个常数。因此,您可以通过添加常数1来重写目标函数。
其中损失函数定义为
最小值的参数是使分类错误最小化的权重向量损失函数
的调用中的名称-值对参数fscnca
.
的fsrnca
函数执行修正后用于回归的NCA特征选择。鉴于n观察
唯一不同于分类问题的是响应值 是连续的。在这种情况下,目的是预测响应 给定训练集 .
考虑一个随机回归模型:
随机选取一个点( ) 作为“参考点”
将响应值设置为 等于参考点的响应值 .
再一次的概率 那一点 选自 作为参考点 是
现在考虑一下这个随机回归模型的省略一的应用,即预测对 使用 ,训练集 不包括的 . 这一点的概率 被选为的参考点 是
允许 为随机回归模型预测的响应值和 成为真正的回应 .,让 是一种损失函数,用来衡量两者之间的分歧 和 .然后,取平均值 是
添加正则化项后,最小化的目标函数为:
默认损失函数
用于回归的NCA是平均绝对偏差,但您可以指定其他损失函数,包括自定义函数,使用损失函数
的调用中的名称-值对参数fsrnca
.
正则化项将无关预测器的权重导出为零。在NCA分类或回归的目标函数中,只有一个正则化参数
对于所有权重。这一事实要求权重的大小彼此可比。当特征向量
在
在不同的标度中,这可能会导致权重在不同的标度中并且没有意义。为了避免这种情况,请在应用NCA之前将预测值标准化为零平均值和单位标准偏差。您可以使用“标准化”,真的
的调用中的名称-值对参数fscnca
或fsrnca
.
通常需要通过计算随机NCA分类器或回归模型在独立测试集上的准确性来选择正则化参数的值。如果使用交叉验证而不是单个测试集,请选择 值,该值使交叉验证折叠的平均损失最小化。有关示例,请参见使用NCA进行分类,调整正则化参数以检测特征和调整正则化参数的NCA回归.
杨伟,王凯,左伟。高维数据的邻域成分特征选择电脑杂志》上。2012年1月,第7卷第1期。
fscnca
|fsrnca
|FeatureSelectionNCAClassification
|特征选择回归