在R中为svm编写自定义内核
我希望在R中使用e1071软件包的svm()函数。我是这个软件包的新手,我想知道是否有可能在svm()中编写您自己的可调用自定义内核。我看到有几个预加载的内核,但我没有看到余弦相似内核,这正是我所需要的在R中为svm编写自定义内核,r,machine-learning,svm,cosine-similarity,R,Machine Learning,Svm,Cosine Similarity,我希望在R中使用e1071软件包的svm()函数。我是这个软件包的新手,我想知道是否有可能在svm()中编写您自己的可调用自定义内核。我看到有几个预加载的内核,但我没有看到余弦相似内核,这正是我所需要的 或者,R中是否有另一个软件包允许您使用余弦相似性内核运行SVM?坏消息是,e1071目前不支持它。很多年前就有过一次讨论 好消息是,余弦相似核被定义为 K(x, y) = <x, y> / (||x|| ||y||) = <x / ||x||, y / ||y||> K
或者,R中是否有另一个软件包允许您使用余弦相似性内核运行SVM?坏消息是,e1071目前不支持它。很多年前就有过一次讨论 好消息是,余弦相似核被定义为
K(x, y) = <x, y> / (||x|| ||y||) = <x / ||x||, y / ||y||>
K(x,y)=/(x | | | | | | | | y |)=
因此,您不必实现自定义内核,只需规范化数据,并运行常规线性内核支持向量机即可。换句话说,计算(样本)正则欧几里德范数,并将每个样本除以自己的范数。然后运行线性支持向量机,其结果相当于对原始数据运行余弦核
<>如果你想用“强”>定制的<强>机器学习模型来研究,R可能不是要走的路(因为它是一个应用现有技术的工具而不是一个设计良好的开发系统——如果你想在R中自定义某个东西,你基本上必须去C++级)。相反,您可能需要考虑Python和许多库(例如ScKiTe+PykRes),这给了您更大的灵活性。 < P>坏消息是E1071.目前不支持。很多年前就有过一次讨论 好消息是,余弦相似核被定义为
K(x, y) = <x, y> / (||x|| ||y||) = <x / ||x||, y / ||y||>
K(x,y)=/(x | | | | | | | | y |)=
因此,您不必实现自定义内核,只需规范化数据,并运行常规线性内核支持向量机即可。换句话说,计算(样本)正则欧几里德范数,并将每个样本除以自己的范数。然后运行线性支持向量机,其结果相当于对原始数据运行余弦核
<>如果你想用“强”>定制的<强>机器学习模型来研究,R可能不是要走的路(因为它是一个应用现有技术的工具而不是一个设计良好的开发系统——如果你想在R中自定义某个东西,你基本上必须去C++级)。相反,您可能需要考虑Python和许多库(例如ScKiTeCub + PyKeles),这给了您更大的灵活性。