c*******h 发帖数: 1096 | 1 对任何一个可以拓展到用kernel的算法,一般来说怎么选kernel和怎么定kernel
里面的参数?除了试个遍,有没有什么理论或者intuition可以在实际做之前大
概预想一下用什么kernel会出什么结果? |
K****n 发帖数: 5970 | 2 要说model selection,可以用cross validation之类的办法. Bayesian model
selection也可以用,不过不同的model难易度不同,如果用monte carlo的话倒基本什么
都能估算.
要说参数优化,最好是列出likelihood之后能求导,求不出来的话就要大家各显神通了,
比如找lower bound, 用variational inference, 还有拉格郎日啊.不过不知道多少人
真的自己develope这些东西.
要有intuition,还得看具体什么问题,否则差别可大了. 不过其实我也没太搞过kernel
【在 c*******h 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 对任何一个可以拓展到用kernel的算法,一般来说怎么选kernel和怎么定kernel : 里面的参数?除了试个遍,有没有什么理论或者intuition可以在实际做之前大 : 概预想一下用什么kernel会出什么结果?
|
c*******h 发帖数: 1096 | 3 我比较钝,完全听不懂。。。
举个最简单的例子,我想用kernel svm分基因,那是应该用polynomial kernel呢还是
rbf kernel呢?用polynomial kernel的话用多少阶的呢?用rbf kernel的话用多大
variance的呢?
我就是想在实验之前先有个感觉,而不是所有都试一遍,哪个好就哪个,换一个数据
集又一切重来。凡方法总有优缺点,适用范围。即使只是比较polynomial和rbf两个
kernel,那它们相比较,孰优孰劣呢?
主要是觉得kernel越来越流行,但好像基本上都是盲试啊
kernel
【在 K****n 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 要说model selection,可以用cross validation之类的办法. Bayesian model : selection也可以用,不过不同的model难易度不同,如果用monte carlo的话倒基本什么 : 都能估算. : 要说参数优化,最好是列出likelihood之后能求导,求不出来的话就要大家各显神通了, : 比如找lower bound, 用variational inference, 还有拉格郎日啊.不过不知道多少人 : 真的自己develope这些东西. : 要有intuition,还得看具体什么问题,否则差别可大了. 不过其实我也没太搞过kernel
|
K****n 发帖数: 5970 | 4 你指的盲试是cross validation吗? 这确实是最直白的方法.不过用CV选的model换个
dataset不用重新选啊.
svm 的 kernel optimization 我没琢磨过,不会没人研究过的,好好找找吧.
你可以把kernel画出来, 看看长什么样儿,再想想自己的数据怎么假设比较好. 选
kernel有时候确实是取决于你主观上对data的认识,比如两个data point之间的
covariance倒底是不是spatially invariant,之类的. |
l********o 发帖数: 33 | 5 no specific reason to choose rbf or poly kernel.
but usually rbf is preferable, but it requires extra computation
model selection is usually done by cross-validation
but i think you also have to estimate model parameters, right?
sometimes this can be done analytically.
【在 c*******h 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我比较钝,完全听不懂。。。 : 举个最简单的例子,我想用kernel svm分基因,那是应该用polynomial kernel呢还是 : rbf kernel呢?用polynomial kernel的话用多少阶的呢?用rbf kernel的话用多大 : variance的呢? : 我就是想在实验之前先有个感觉,而不是所有都试一遍,哪个好就哪个,换一个数据 : 集又一切重来。凡方法总有优缺点,适用范围。即使只是比较polynomial和rbf两个 : kernel,那它们相比较,孰优孰劣呢? : 主要是觉得kernel越来越流行,但好像基本上都是盲试啊 : : kernel
|
c*******h 发帖数: 1096 | 6 说白了就是缺乏直观的或者理论的认识,不知道各种kernel长的什么样。统计上来说,
cross validation只不过是给一些数字来convince大家说对目前的数据集这个好那个不
好,但没有说出来各个model的本质是什么。
举个例子,(当然很有可能是不对的,)如果一个数据集原来的decision boundary
是正态分布曲面形状的,用rbf kernel可以将数据映射成线性可分的,那对rbf
kernel的认识就立马深刻多了。如果我觉得数据的decision boundary跟这个差很远
的,那我就根本想都不想rbf kernel了。这样不是很好?
【在 K****n 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 你指的盲试是cross validation吗? 这确实是最直白的方法.不过用CV选的model换个 : dataset不用重新选啊. : svm 的 kernel optimization 我没琢磨过,不会没人研究过的,好好找找吧. : 你可以把kernel画出来, 看看长什么样儿,再想想自己的数据怎么假设比较好. 选 : kernel有时候确实是取决于你主观上对data的认识,比如两个data point之间的 : covariance倒底是不是spatially invariant,之类的.
|
K****n 发帖数: 5970 | 7 嗯,是,一般都建议 always look at your data first, plot your data, use simple
technique to analyze your data 之类的, 就是你说的,要先混个脸儿熟 |
S*******t 发帖数: 97 | 8 你说的这些对高维的数据根本没用,比如doc classification
simple
【在 K****n 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 嗯,是,一般都建议 always look at your data first, plot your data, use simple : technique to analyze your data 之类的, 就是你说的,要先混个脸儿熟
|
K****n 发帖数: 5970 | 9 那怎么办
【在 S*******t 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 你说的这些对高维的数据根本没用,比如doc classification : : simple
|
p****e 发帖数: 2 | 10 理论上每个模型确实存在一个最优的参数,这个参数一般是由你样本来自的概率分布决
定的。实际中那个概率分布没法知道。于是我们还是只能通过cross validation来获得。
至于选哪种核的问题,还是跟那个概率分布有关。rbf核的好处是decision boundary可
以逼近任意连续函数,所以适应性很广(bias偏小)。但是这种核得到的boundary较复
杂(variance较大),如果decision boundary能被低阶多项式甚至线性函数刻画时,低
阶的多项式核效果会更好。到底哪种核更合适,还是只能由cross validation知道。 |
|
|
c*******h 发帖数: 1096 | 11 好
不过逼近任意连续函数这个我有点怀疑。让我想想
得。
【在 p****e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 理论上每个模型确实存在一个最优的参数,这个参数一般是由你样本来自的概率分布决 : 定的。实际中那个概率分布没法知道。于是我们还是只能通过cross validation来获得。 : 至于选哪种核的问题,还是跟那个概率分布有关。rbf核的好处是decision boundary可 : 以逼近任意连续函数,所以适应性很广(bias偏小)。但是这种核得到的boundary较复 : 杂(variance较大),如果decision boundary能被低阶多项式甚至线性函数刻画时,低 : 阶的多项式核效果会更好。到底哪种核更合适,还是只能由cross validation知道。
|
s******e 发帖数: 285 | 12 逼近任意连续函数任何exponential的kernel都可以啊。
你自己也说了这种boundary较复杂了,难道你连最基本
的overfitting理论都不知道吗?
得。
【在 p****e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 理论上每个模型确实存在一个最优的参数,这个参数一般是由你样本来自的概率分布决 : 定的。实际中那个概率分布没法知道。于是我们还是只能通过cross validation来获得。 : 至于选哪种核的问题,还是跟那个概率分布有关。rbf核的好处是decision boundary可 : 以逼近任意连续函数,所以适应性很广(bias偏小)。但是这种核得到的boundary较复 : 杂(variance较大),如果decision boundary能被低阶多项式甚至线性函数刻画时,低 : 阶的多项式核效果会更好。到底哪种核更合适,还是只能由cross validation知道。
|
w***g 发帖数: 5958 | 13 如果你的输入可以表示成简单的向量的话,其实试一下linear kernel和rbf就可以了。
我自己的经验是预测结果主要看数据的难易,kernel影响不大(我组要和高维数据打交
道)。这一点来说SVM还是很不错的。
【在 c*******h 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 对任何一个可以拓展到用kernel的算法,一般来说怎么选kernel和怎么定kernel : 里面的参数?除了试个遍,有没有什么理论或者intuition可以在实际做之前大 : 概预想一下用什么kernel会出什么结果?
|
p****e 发帖数: 2 | 14 用rbf核的时候,overfitting靠参数来控制
【在 s******e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 逼近任意连续函数任何exponential的kernel都可以啊。 : 你自己也说了这种boundary较复杂了,难道你连最基本 : 的overfitting理论都不知道吗? : : 得。
|
s********t 发帖数: 4150 | 15 If you really care about the intuition/theory behind the kernel, you should
design your own custom kernel, which will likely better fit your problem and
data. |