我是支持向量机的初学者。是否有一些准则说明哪个内核(例如线性,多项式)最适合特定问题?就我而言,我必须根据网页是否包含某些特定信息对网页进行分类,即我存在二进制分类问题。
您能否总体说出最适合此任务的内核?还是我必须在特定的数据集上尝试其中的几个才能找到最佳数据集?顺便说一句,我正在使用利用libSVM库的Python库scikit-learn。
我是支持向量机的初学者。是否有一些准则说明哪个内核(例如线性,多项式)最适合特定问题?就我而言,我必须根据网页是否包含某些特定信息对网页进行分类,即我存在二进制分类问题。
您能否总体说出最适合此任务的内核?还是我必须在特定的数据集上尝试其中的几个才能找到最佳数据集?顺便说一句,我正在使用利用libSVM库的Python库scikit-learn。
Answers:
实际上,您在文献中遇到了一个未解决的问题。如您所说,有各种各样的内核(例如,线性,径向基函数,S形,多项式),它们将在由它们各自的方程式定义的空间中执行分类任务。据我所知,没有人明确表明一个内核在一种类型的文本分类任务上总是表现最佳。
需要考虑的一件事是,每个内核功能都有一个或多个参数,需要针对您的数据集进行优化,这意味着,如果操作正确,您应该拥有第二个支持训练集合,您可以在该集合上进行操作研究这些参数的最佳值。(我说第二个保留集合,因为您应该已经有了一个集合,可以用来为分类器找出最佳输入功能。)我做了一段时间的实验,在其中我对每个模型进行了大规模优化。这些参数可用于简单的文本分类任务,并且发现每个内核看起来表现都相当不错,但是在不同的配置下却表现良好。如果我没记错我的结果,则S型曲线的性能最好,但在非常具体的参数调整中却表现最佳-这项调整花了我一个多月的时间才能找到我的机器。