Machine learning 利巴索斯与佩加索斯

Machine learning 利巴索斯与佩加索斯,machine-learning,svm,liblinear,Machine Learning,Svm,Liblinear,我一直在寻找快速线性支持向量机库,我遇到了两个最重要的库Liblinear和Pegasos,从Liblinear的论文中可以看出LibLiner的性能优于Pegasos。然而,佩加索斯声称,如果数据稀疏,那么它工作得很快。 如前所述,这一点没有可比性;s文件 那么对于稀疏数据,我应该选择什么呢 LIBLINEAR和Pegasos都是线性分类技术,专门用于处理具有大量实例和特征的大型稀疏数据。在这类数据上,它们只比传统的支持向量机更快 我以前从没用过Pegasos,但我可以向您保证,LIBLINE

我一直在寻找快速线性支持向量机库,我遇到了两个最重要的库Liblinear和Pegasos,从Liblinear的论文中可以看出LibLiner的性能优于Pegasos。然而,佩加索斯声称,如果数据稀疏,那么它工作得很快。 如前所述,这一点没有可比性;s文件


那么对于稀疏数据,我应该选择什么呢

LIBLINEAR和Pegasos都是线性分类技术,专门用于处理具有大量实例和特征的大型稀疏数据。在这类数据上,它们只比传统的支持向量机更快


我以前从没用过Pegasos,但我可以向您保证,LIBLINEAR处理此类数据的速度非常快,作者说,它与最先进的线性分类器(如Pegasos)竞争,甚至比后者更快。

LIBLINEAR和Pegasos都是专门为处理大量稀疏数据而开发的线性分类技术实例和功能。在这类数据上,它们只比传统的支持向量机更快


我以前从未使用过Pegasos,但我可以向您保证,LIBLINEAR处理此类数据的速度非常快,作者说它与最先进的线性分类器(如Pegasos)竞争,甚至比之更快。

据我所知,稀疏数据两者都能很好地处理。问题更多的是数据点的数量。Liblinear具有原始和对偶的解算器,这些解算器可以高精度地解决问题,而无需调整参数。对于pegasos或类似的次梯度下降解算器,如果你想要其中的一个,我建议Leon Bottou的结果强烈依赖于初始学习率和学习率计划,这可能很难调整

根据经验,如果我的数据点少于10k,我总是使用原始解算器的liblinear,甚至可能高达100k。以上,如果我觉得线性是慢的,我会考虑使用SGD。即使liblinear稍微慢一点,我还是更喜欢使用它,因为它意味着我不必考虑学习速度、学习速度衰减和纪元数


顺便说一句,你可以很容易地使用一个框架来比较这些不同的解算器,比如,包括SGD、Liblinear和LibSVM解算器,或者,包括很多解算器。

据我所知,稀疏数据两者都能很好地处理。问题更多的是数据点的数量。Liblinear具有原始和对偶的解算器,这些解算器可以高精度地解决问题,而无需调整参数。对于pegasos或类似的次梯度下降解算器,如果你想要其中的一个,我建议Leon Bottou的结果强烈依赖于初始学习率和学习率计划,这可能很难调整

根据经验,如果我的数据点少于10k,我总是使用原始解算器的liblinear,甚至可能高达100k。以上,如果我觉得线性是慢的,我会考虑使用SGD。即使liblinear稍微慢一点,我还是更喜欢使用它,因为它意味着我不必考虑学习速度、学习速度衰减和纪元数


顺便说一句,您可以很容易地使用一个框架来比较这些不同的解算器,例如,包括SGD、LIBREANER和LibSVM解算器,或者,包括许多解算器。

Pegasos与SGD相比的主要优点是,您不需要调整初始学习率和衰减。它们是分析设置的,因此不需要考虑它们。时代的数量是一个不同的问题。Leon Bottou的sgd也有一个初始学习率的启发式方法。Pegasos比sgd的主要优点是,您不需要调整初始学习率和衰减。它们是分析设置的,因此不需要考虑它们。时代的数量是一个不同的问题。利昂·博图(Leon Bottou)的sgd对初始学习率也有启发。