页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始

该子模块包含近似与某些内核对应的特征映射的函数,因为它们用于例如支持向量机(见支持向量机)。以下特征函数执行输入的非线性变换,可以作为线性分类或其他算法的基础。

与使用特征映射隐含的内核技巧相比,使用近似显式特征映射的优点 是,显式映射可以更好地适合在线学习,并且可以显着降低使用非常大的数据集学习的成本。标准内核SVM不能很好地扩展到大型数据集,但是使用近似的内核映射可以使用更高效的线性SVM。特别地,内核映射近似的组合 SGDClassifier可以使大型数据集上的非线性学习成为可能。

由于使用近似嵌入没有太多的经验性工作,建议在可能的情况下将结果与精确的内核方法进行比较。

 

也可以看看:多项式回归:使用精确多项式变换的基函数扩展线性模型

内核近似的Nystroem方法 

实施的Nystroem方法Nystroem是用于内核的低等级近似的一般方法。它通过基本上对内核评估的数据进行二次采样来实现这一点。默认情况下Nystroem使用rbf内核,但它可以使用任何内核函数或预计算内核矩阵。所使用的样本数量(也是计算的特征的维数)由参数给出n_components

 

径向基函数内核

所述RBFSampler构建体的近似映射为径向基函数内核,也被称为随机厨房水槽 [RR2007] 。在应用线性算法(例如线性SVM)之前,可以使用此转换来明确建模内核映射:

>>> from sklearn.kernel_approximation import RBFSampler
>>> from sklearn.linear_model import SGDClassifier
>>> X = [[0, 0], [1, 1], [1, 0], [0, 1]]
>>> y = [0, 0, 1, 1]
>>> rbf_feature = RBFSampler(gamma=1, random_state=1)
>>> X_features = rbf_feature.fit_transform(X)
>>> clf = SGDClassifier()   
>>> clf.fit(X_features, y)
SGDClassifier(alpha=0.0001, average=False, class_weight=None, epsilon=0.1,
       eta0=0.0, fit_intercept=True, l1_ratio=0.15,
       learning_rate='optimal', loss='hinge', n_iter=5, n_jobs=1,
       penalty='l2', power_t=0.5, random_state=None, shuffle=True,
       verbose=0, warm_start=False)
>>> clf.score(X_features, y)
1.0

 

映射依赖于内核值的蒙特卡罗逼近。该fit函数执行蒙特卡罗采样,而该transform方法执行数据的映射。由于过程的固有随机性,结果可能会在不同的fit函数调用之间变化。

fit函数有两个参数: n_components它是特征变换的目标维数,以及gammaRBF-内核的参数。更高的n_components将导致内核的更好的近似,并且将产生与由内核SVM产生的结果更相似的结果。请注意,“拟合”特征函数实际上不取决于赋予该fit函数的数据。只使用数据的维数。有关方法的详细信息,请参见[RR2007]

对于给定的值n_components RBFSampler通常不太准确NystroemRBFSampler但是,使用较大的特征空间更有效率的计算便宜。


将精确的RBF内核(左)与近似(右)进行比较

加性Chi平方内核

加性卡方核是直方图的核心,通常用于计算机视觉。

这里使用的加法i平方内核给出

这不完全一样sklearn.metrics.additive_chi2_kernel[VZ2010]的作者喜欢上面的版本,因为它总是积极的。由于内核是加法的,因此可以分别处理所有组件 X_I以进行嵌入。这使得可以以规则的间隔对傅立叶变换进行采样,而不是使用蒙特卡罗采样近似。

该类AdditiveChi2Sampler实现了这个组件明确的确定性抽样。每个分量被采样ñ次数,产生 每个输入维数的维数(来自傅立叶变换的实部和复数部分的两个数据段的倍数)。在文献中,ñ通常选择为1或2,将数据集转换为大小(在这种情况下)。n_samples * 5 * n_features

提供的近似特征图AdditiveChi2Sampler可以与提供的近似特征图组合,RBFSampler以产生取幂的卡方平方内核的近似特征图。请参阅[VZ2010]细节和[VVZ2010]与对组合RBFSampler

 

歪斜Chi平方内核

偏斜的卡方平方内核由下式给出:

它具有类似于通常用于计算机视觉中的指数化的平方核,但允许对特征图的简单蒙特卡罗近似的属性。

与上述用法SkewedChi2Sampler相同RBFSampler。唯一的区别是在自由参数中,这被称为C。对于这种映射的动机和数学细节,参见[LS2010]

 

数学细节

支持向量机或核心化PCA等内核方法依赖于再现内核希尔伯特空间的属性。对于任何正确的内核函数ķ(所谓的Mercer内核),保证存在一个映射 到希尔伯特空间,使得

哪里表示希尔伯特空间中的内积。

如果诸如线性支持向量机或PCA的算法仅依赖于数据点的标量积X_I,则可以使用对应于将映射数据点应用算法的值。使用的优点ķ是映射永远不必显式计算,允许任意大的特征(甚至无限大)。

内核方法的一个缺点是,可能需要在优化期间存储许多内核值。如果将核心分类器应用于新数据y_j,则 需要进行计算以进行预测,可能X_I在训练集中有许多不同之处。

该子模块中的类允许近似嵌入 ,从而明确地与表示方式进行工作 ,从而避免了应用内核或存储培训示例的需要。

参考文献:

[RR2007]12 “进行大规模核机器随机特征” 拉希米,A和Recht,B. -神经信息处理2007的进展,
[LS2010]“歪斜乘法直方图内核的 随机Fourier逼近”歪斜乘法直方图内核的随机Fourier逼近 - 计算机科学(DAGM)讲义
[VZ2010]12 “通过明确的特征映射高效添加剂仁” Vedaldi,A和Zisserman,A. -计算机视觉与模式识别2010
[VVZ2010]

“广义RBF功能图用于有效检测” Vempati,S.和Vedaldi,A.和Zisserman,A.和Jawahar,CV - 2010

  • 无标签