问题标签 [liblinear]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2100 浏览

libsvm - 如何理解 LIBLINEAR 中的偏差参数?

我不明白LIBLINEAR API 中bias 参数的含义。为什么用户在培训期间指定?不应该只是从分离超平面到作为学习模型参数的原点的距离吗?

这是来自自述文件:

如果偏差 >= 0,我们假设在每个数据实例的末尾添加一个附加特征。

这个附加功能是什么?

0 投票
1 回答
8156 浏览

python - 为什么 LinearSVC 不能做这个简单的分类?

我正在尝试LinearSVC使用scikit-learn. 我试过同时使用 0.10 和 0.14 版本。使用代码:

我得到输出:

但是,如果我将分类器替换为

然后我得到结果

哪个是对的。有谁知道为什么使用LinearSVC会破坏这个简单的问题?

0 投票
1 回答
872 浏览

matlab - liblinear 的 50% 准确率问题

我在 Liblinear/Libsvm 中很新,我在这里遇到了一个很好的问题。

我有非常大的训练数据(2.883.584 个高度不平衡的样本,每个样本都是 21 维)以及用于测试的大数据(262.144 个样本也有 21 维)。我正在使用 LIBSVM(或 LibLinear)的线性内核实现,因为我的数据具有大数据性质。文献警告我使用 RBF 内核处理这些数据的问题。

我的问题是:无论我做什么,分类器只预测一个类(样本较多的类,或者我实验中的负类)。

到目前为止我尝试过:

1-训练平衡和不平衡数据,不缩放数据,不选择参数。

2-训练平衡和不平衡的数据,用不同的范围([-1,1]和[0,1])缩放数据但没有参数选择。

3-训练平衡和不平衡数据,通过参数选择缩放具有不同范围([-1,1]和[0,1])的数据。

所有这些实验都产生了 81% 的准确率,但这些正确的预测都来自负类。所有正类都被线性支持向量机错误分类。

.model 文件非常奇怪,如下所示:

当我通过网格搜索进行参数选择时,最好的 C 总是给我 5 倍交叉验证的最佳准确率 50%。这就是我在 Matlab 中进行网格搜索的方式:

编辑:这是我的训练数据的一个正面和负面样本:

这是我的测试数据的一个正面和负面样本:

我的数据有问题吗?我应该增加网格搜索中的 C 范围吗?还是我应该使用另一个分类器?

0 投票
2 回答
321 浏览

visual-studio-2012 - LibLinear 与 Visual Studio 2012

如何在 C++ Visual Studio 2012 项目中使用 Liblinear(作为开发人员)?我尝试将文件“linear.h”、“linear.cpp”、“tron.h”、“tron.cpp”添加到我的项目中;但是我无法解决与位于 liblinear 目录内的“blas”目录相关的其他依赖项。谁能提供有关如何在 Visual Studio 中使用 liblinear 的分步说明?

提前致谢!

0 投票
2 回答
447 浏览

svm - 用户定义的损失函数 liblinear

在 Java 版本的 LIBLINEAR 中有一个名为“SolverType”的类,可以在其中选择要优化函数的损失函数的类型。例如“SolverType.L2LOSS_SVM_DUAL”。有没有办法定义用户定义的损失函数?

0 投票
2 回答
4143 浏览

matlab - MATLAB 训练接口 LIBLINEAR

LIBLINEAR 文档中,我们有

但是,即使在阅读主页并查看文档之后,我也无法找出liblinear_options.

这是否在某处列出但我显然错过了它?

此外,由于我无法在liblinear_options任何地方找到列出的内容,因此我遇到了以下问题:

train方法是否使用线性 SVM 来开发模型?

0 投票
1 回答
67 浏览

svm - SVM 的关键短语

SVM 新手 - 我有 160 个类别,从几个到多个成员术语和短语不等,用于训练数据。有些类别的短语很少,而其他类别则有数百个。

我有很多主题广泛的文本测试数据。我想我想要一个 MultiClass、oneVsRest SVM、二进制分类器。

1) 1 个类别 SVM 的训练输入是否应该是一组具有 1 个 feature3:1 feature5:1 ... 对于成员资格的行,其中 feature 是类成员资格列表中的一个术语/短语 - 二进制值是否足够?和 -1 feature1:1 feature2:1 feature4:1 的行...对于 known_terms_of_interest 字典中其他类的所有成员?

2) 测试文档输入是否应该只包括在 known_terms_of_interest 字典中找到的术语?

3)线性正确吗?-C 1 ?还是因为某些 RBF 中的术语很少?

似乎示例以预处理文件而不是原始文本开头;所以我错过了关键的设置放置步骤,因为文档进入了边距等的描述。

0 投票
0 回答
302 浏览

java - 自由线性逻辑回归输出始终为 -1

我是机器学习的新手,我正在尝试使用来自这里http://www.ats.ucla.edu/stat/data/binary.csv的数据集在 liblinear 中使用逻辑回归预测

我正在使用 java 来训练和测试。但是,即使我在同一个文件上运行预测,我总是得到 -1 作为所有文件的预测。即使我使用 lib linear 和 libsvm 提供的 heart_scale,我也永远不会得到 100%。我做错了什么?

我在java中运行以下命令

java -cp liblinear-1.94.jar de.bwaldvogel.liblinear.Train -s 0 trainFile

java -cp liblinear-1.94.jar de.bwaldvogel.liblinear.Predict -b 1 testFile testFile.model testFile.txt

0 投票
1 回答
609 浏览

classification - Weka 中 SMO、NaiveBayes 和 BayesNet 分类器的不同结果

我正在我的数据集上尝试不同的 Weka 分类器。我有小数据集,我将我的数据分为五类。我的问题是,当我通过不同的分类器应用交叉验证或百分比拆分分类时,我会得到非常不同的结果。

例如,当我使用NaiveBayseorBayseNet分类器时,所有类的 F 分数都在 40 左右,但使用SMO我得到的 F 分数为 20。当我使用LibLinear分类器时,得到的结果更差,它的 F 分数为15左右。

也许我应该提到,由于LibLinear分类器不接受名义,我为每个可能的名义值分配了一个代码,并将它们用作Numeric我的数据集中的值。

谁能告诉我为什么我会得到如此不同的结果?我希望所有分类器都有大致相似的结果。

此外,当我LibLinear在我的测试集上使用时,我将所有数据归为一类,而其他四类中没有实例。

提前致谢,

0 投票
2 回答
196 浏览

windows - 将 Cygwin 或 VM 与 UNIX 一起用于需要 UNIX 的库?

原谅我的无知:我需要使用一个需要 UNIX 系统的库(LIBSHORTTEXT)。我需要用 Unix 安装虚拟机还是 Cygwin 就足够了?(我已经阅读了很多关于它们之间差异的文章,但我并不真正了解这种特定用途的实际差异)。谢谢!

编辑:说图书馆需要 UNIX 的文档在这里