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