标签: libsvm

R中SVM的一类分类

我正在使用R中的包e1071来构建一个类SVM模型.我不知道该怎么做,我也没有在互联网上找到任何例子.

有人可以给出一个示例代码来表征,例如,使用一类分类模型在"虹膜"数据集中表示"setosa"类,然后测试同一数据集中的所有示例(以便检查哪些示例属于"setosa"类的特征和哪些例子没有)?

r classification svm libsvm

11
推荐指数
2
解决办法
1万
查看次数

缩放LIBSVM的测试数据:MATLAB实现

我目前使用MATLAB版本的LIBSVM支持向量机来对我的数据进行分类.LIBSVM文档提到在应用SVM之前进行扩展非常重要,我们必须使用相同的方法来扩展训练和测试数据.

"相同的缩放方法"解释如下:例如,假设我们将训练数据的第一个属性缩放[-10, +10][-1, +1].如果测试数据的第一个属性位于范围内[-11, +8],我们必须将测试数据缩放到[-1.1, +0.8]

[0,1]可以使用以下MATLAB代码缩放范围内的训练数据:

(data - repmat(min(data,[],1),size(data,1),1))*spdiags(1./(max(data,[],1)-min(data,[],1))',0,size(data,2),size(data,2))
Run Code Online (Sandbox Code Playgroud)

但我不知道如何正确地扩展测试数据.

非常感谢您的帮助.

testing matlab scaling input libsvm

10
推荐指数
1
解决办法
1万
查看次数

在一对一SVM中使用10倍交叉验证(使用LibSVM)

我想在MATLAB中的一对一 支持向量机分类中进行10倍交叉验证.

我试图以某种方式混合这两个相关的答案:

但是因为我是MATLAB及其语法的新手,所以到目前为止我还没有成功.

另一方面,我在LibSVM README文件中看到了以下几行关于交叉验证的内容,我在那里找不到任何相关示例:

选项-v随机将数据分成n个部分,并计算它们的交叉验证准确度/均方误差.

有关输出的含义,请参阅libsvm FAQ.

有人能给我一个10倍交叉验证和一对一分类的例子吗?

matlab classification machine-learning svm libsvm

10
推荐指数
1
解决办法
2万
查看次数

JNI ERROR(app bug):本地参考表溢出(max = 512)

我试图用我自己的数据集运行LibSVMAndroidClassification Android项目.它与已经提供的数据集完美配合,当我使用100行(小于原始大小的1%)的csv时,它也可以正常工作.但是当我尝试使用例如1000行的"Train CSV"时,我看到了这个错误.我甚至试图在Manifest.xml中设置android:largeHeap ="true"但没有任何改进.

这是我的logcat转储.

10-31 17:49:06.745: E/dalvikvm(2008): JNI ERROR (app bug): local reference table overflow (max=512)
10-31 17:49:06.745: W/dalvikvm(2008): JNI local reference table (0x754057e0) dump:
10-31 17:49:06.745: W/dalvikvm(2008): Last 10 entries (of 512):
10-31 17:49:06.745: W/dalvikvm(2008): 511: 0x42d900b0 double
10-31 17:49:06.745: W/dalvikvm(2008): 510: 0x42a19698 int
10-31 17:49:06.745: W/dalvikvm(2008): 509: 0x42d8ff78 double
10-31 17:49:06.745: W/dalvikvm(2008): 508: 0x42a195f0 int
10-31 17:49:06.745: W/dalvikvm(2008): 507: 0x42d8fe40 double
10-31 17:49:06.745: W/dalvikvm(2008): 506: 0x42a19548 int
10-31 17:49:06.745: W/dalvikvm(2008): 505: 0x42d8fd08 double
10-31 17:49:06.745: W/dalvikvm(2008): …
Run Code Online (Sandbox Code Playgroud)

c++ java-native-interface android android-ndk libsvm

10
推荐指数
1
解决办法
1万
查看次数

如何在Matlab中使用libsvm?

我是matlab的新手,不知道如何使用libsvm.是否有任何示例代码用于使用SVM对某些数据(具有2个功能)进行分类,然后可视化结果?内核(RBF,多项式和Sigmoid)怎么样?我在libsvm包中看到了自述文件,但我无法做出它的头或尾请你在matlab中使用支持向量机(SVM)给出一个2类分类的例子:

Attribute_1    Attribute_2   Class
170            66            -1
160            50            -1
170            63            -1
173            61            -1
168            58            -1
184            88            +1
189            94            +1
185            88            +1
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

matlab kernel machine-learning svm libsvm

9
推荐指数
1
解决办法
3万
查看次数

如何判断OpenMP是否正常工作?

我试图以并行模式运行LIBSVM,但我的问题一般是在OpenMP中.根据LIBSVM常见问题解答,我使用#pragma调用修改了代码以使用OpenMP.我还通过添加-fopenmp参数修改了Makefile(对于un*x),因此它变为:

CFLAGS = -Wall -Wconversion -O3 -fPIC -fopenmp
Run Code Online (Sandbox Code Playgroud)

代码汇编得很好.我检查(因为它不是我的电脑)是否安装了OpenMP:

/sbin/ldconfig -p | grep gomp
Run Code Online (Sandbox Code Playgroud)

并看到它是 - 可能安装的:

 libgomp.so.1 (libc6,x86-64) => /usr/lib64/libgomp.so.1
 libgomp.so.1 (libc6) => /usr/lib/libgomp.so.1
Run Code Online (Sandbox Code Playgroud)

现在; 当我运行程序时,我没有看到任何速度改进.此外,当我检查"顶部"时,该进程最多使用%100 CPU(有8个内核),也没有CPU瓶颈(只有一个用户使用%100 CPU),我期待看到超过%100(或不同的指标)该进程正在使用多个核心.

有没有办法检查它是否正在运行多个核心?

c++ openmp libsvm

9
推荐指数
1
解决办法
6867
查看次数

如何在MATLAB中运行libsvm?

如何在MATLAB下开始使用libsvm

我已下载了该库,并将其解压缩C:\Program Files\MATLAB\R2012a\toolbox\,但后来我不知道如何在MATLAB中使用它.

matlab svm libsvm

9
推荐指数
1
解决办法
3万
查看次数

如何为Python设置LIBSVM

我使用Make在Mac OS X上构建了libsvm.

$ tar xzfv libsvm-3.17.tar.gz
$ cd libsvm-3.17
$ make
Run Code Online (Sandbox Code Playgroud)

这构建了各种libsvm二进制文件:

$ ls
COPYRIGHT           heart_scale svm-predict.c   svm-train.c tools
FAQ.html            java        svm-scale   svm.cpp     windows
Makefile            matlab      svm-scale.c svm.def
Makefile.win    python      svm-toy     svm.h
README      svm-predict svm-train   svm.o
Run Code Online (Sandbox Code Playgroud)

我还与此相关/usr/local:

$ ls -la /usr/local/
...
svm -> /usr/local/libsvm-3.17/
Run Code Online (Sandbox Code Playgroud)

并将Python绑定附加到我的路径:

import sys
sys.path.append('/usr/local/svm/python')
Run Code Online (Sandbox Code Playgroud)

但是Python绑定找不到"LIBSVM"库:

$ python test.py 
Traceback (most recent call last):
   File "test.py", line 8, in <module>
      import svmutil
   File "/usr/local/svm/python/svmutil.py", line 5, in <module>
      from svm import …
Run Code Online (Sandbox Code Playgroud)

python svm libsvm

9
推荐指数
2
解决办法
3万
查看次数

libsvm(C++)始终输出相同的预测

我已经为libsvm实现了一个OpenCV/C++包装器.在对SVM参数(RBF内核)进行网格搜索时,预测始终返回相同的标签.我创建了人工数据集,这些数据集具有非常容易分离的数据(并尝试预测我刚训练过的数据),但仍然会返回相同的标签.

我使用了libsvm的MATLAB实现,并在同一数据集上实现了高精度.我一定是在设置问题时做错了,但我已多次阅读README并且我找不到问题.

以下是我设置libsvm问题的方法,其中数据是OpenCV Mat:

    const int rowSize = data.rows;
    const int colSize = data.cols;

    this->_svmProblem = new svm_problem;
    std::memset(this->_svmProblem,0,sizeof(svm_problem));

    //dynamically allocate the X matrix...
    this->_svmProblem->x = new svm_node*[rowSize];
    for(int row = 0; row < rowSize; ++row)
        this->_svmProblem->x[row] = new svm_node[colSize + 1];

    //...and the y vector
    this->_svmProblem->y = new double[rowSize];
    this->_svmProblem->l = rowSize;

    for(int row = 0; row < rowSize; ++row)
    {
        for(int col = 0; col < colSize; ++col)
        {
            //set the index and the value. indexing …
Run Code Online (Sandbox Code Playgroud)

c++ svm libsvm

9
推荐指数
1
解决办法
5056
查看次数

如何在LibSVM中使用'svm_toy'Applet示例?

我正在使用LIBSVM.在下载包中是一个svm_toy.java文件.我无法弄清楚它是如何工作的.这是源代码:

import libsvm.*;
import java.applet.*;
import java.awt.*;
import java.util.*;
import java.awt.event.*;
import java.io.*;

/**
 * SVM package 
 * @author unknown
 *
 */
public class svm_toy extends Applet {

    static final String DEFAULT_PARAM="-t 2 -c 100";
    int XLEN;
    int YLEN;

    // off-screen buffer

    Image buffer;
    Graphics buffer_gc;

    // pre-allocated colors

    final static Color colors[] =
    {
      new Color(0,0,0),
      new Color(0,120,120),
      new Color(120,120,0),
      new Color(120,0,120),
      new Color(0,200,200),
      new Color(200,200,0),
      new Color(200,0,200)
    };

    class point {
        point(double x, double y, byte …
Run Code Online (Sandbox Code Playgroud)

java applet svm libsvm

9
推荐指数
1
解决办法
347
查看次数