LibLinear(SVM包)的MATLAB安装

1 LIBSVM介绍

LIBSVM是众所周知的支持向量机分类工具包(一些支持向量机(SVM)的开源代码库的链接及其简介),运用方便简单,其中的核函数(常用核函数-Kernel Function)可以自己定义也可以默认。但是对一些大数据来说,有没有非线性映射,他们的性能差不多。如果不使用核,我们可以用线性分类或者回归来训练一个更大的数据集。这些数据往往具有非常高维的特征,例如文本分类Document classification。所以LIBSVM就诞生了。

关于liblinear 和 libSVM的详细介绍及其比较可以参见链接:

Libsvm和Liblinear的比较

liblinear VS libSVM

Libsvm和Liblinear的使用经验谈

Libsvm的MATLAB安装步骤

(1)下载安装包:http://download.csdn.net/detail/tiandijun/8136887

我使用的是最新版本liblinear1.95,MATLAB是R2012b.

(2)解压到相应的文件夹,在MATLAB中设置子路径,打开matlab,点击File->SetPath->Add withSubfolders,找到liblinear-1.95\matlab所在文件夹,点击save,点击close。

(3)在matlab的command window中输入mex -setup,选择合适的编译器,具体如下:

上图最后的“y”是自己手动输入进去的,表示同意选择编译方式。

(4)输入“2”作为编译环境

确认,输入“y”

结果图如下;

(5)在matlab的command window中输入make,如果正确的话,会如下所示:

同时,可以看到在当前目录下生成下图中的文件

特别是生成train.mexw32和predict.mexw32.

到这一步,Liblinear安装成功。

3 在matlab中测试Liblinear是否能用

model = train(svm_category', sparseTrainMatrix)

[output_label, accuracy] = predict(svm_category', sparseTestMatrix, model);

train中参数:svm_category'为列向量,表示training set的class label,假设为n维

sparseTrainMatrix为n*m维矩阵,n表示training set中样本的个数,m表示每个样本中feature的个数

model的内容为

predict中参数和train中取的类似,本例中直接把training set作为testing set重新预测了一下,model为train中输出的结构体

output_label输出的是testing set的class label的预测值

accuracy是预测准确度

到此结束。(注:具体数据可参考Andrew Ng的CS229课程problem set2的第二题)

具体运行还没有成功,欢迎讨论和指点。

LibLinear(SVM包)的MATLAB安装的更多相关文章

  1. LibLinear(SVM包)使用说明之(二)MATLAB接口

    LibLinear(SVM包)使用说明之(二)MATLAB接口 LibLinear(SVM包)使用说明之(二)MATLAB接口 zouxy09@qq.com http://blog.csdn.net/ ...

  2. LibLinear(SVM包)使用说明之(一)README

    转自:http://blog.csdn.net/zouxy09/article/details/10947323/ LibLinear(SVM包)使用说明之(一)README zouxy09@qq.c ...

  3. LibLinear(SVM包)使用说明之(三)实践

    LibLinear(SVM包)使用说明之(三)实践 LibLinear(SVM包)使用说明之(三)实践 zouxy09@qq.com http://blog.csdn.net/zouxy09 我们在U ...

  4. Matlab安装记录 - LED Control Activex控件安装

    Matlab安装记录-LED Control Activex控件安装 2013-12-01  22:06:36 最近在研究Matlab GUI技术,准备用于制作上位机程序:在Matlab GUI的技术 ...

  5. win7下编译Microsoft版的caffe包的MATLAB接口(CPU模式)

    本博客是基于http://www.cnblogs.com/njust-ycc/p/5776286.html这篇博客修改的,做出了更正与补充. 本人机器的环境:Win7+MATLAB2014b+VS20 ...

  6. 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题

    动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...

  7. npm包与gem包--在线&离线安装

    目录 NPM 在线 离线 GEM 在线 离线 NPM NPM,即为Node的包管理工具,官网为 https://www.npmjs.com/,我们可以在站内搜索所需要的NPM包,了解相关的使用规则 安 ...

  8. Python科学计算包模块的安装(ubuntu)

    Python的科学计算包设计到C语言代码的编译,采用pip的方式安装会出现错误. 一种简单的方式是采用的集成包,具体的步骤参考:https://www.continuum.io/downloads#_ ...

  9. CentOS 下 rpm包与 yum 安装与卸载

    rpm包的安装:      1.安装一个包 # rpm -ivh 2.升级一个包 # rpm -Uvh 3.移走一个包 # rpm -e 4.安装参数 --force 即使覆盖属于其它包的文件也强迫安 ...

随机推荐

  1. oh-my-zsh配置 alias 指定指令别名

    # vim ~/.zshrc alias ydocx="/Users/wanglili/work/mfe/ydoc/bin/ydoc" # source ~/.zshrc

  2. 亿能测试白盒安全测试模板V1.0发布

    亿能测试白盒安全测试模板V1.0发布http://automationqa.com/forum.php?mod=viewthread&tid=2911&fromuid=21

  3. 解决DataTable中的DataColumn类型默认为int类型时, 导致不能修改其列值为其他类型的解决办法

    问题起因: 扔给数据库一条select * from [表名] , 得到一个DataTable, 发现有一列status状态的DataColumn的类型是int,然后我想换成字典表里的文字描述,然后就 ...

  4. Manually connecting to the Oracle Linux Yum Server

    Manually connecting to the Oracle Linux Yum Server 1. Download and Install Oracle Linux   Note: The ...

  5. 闲话:你今天OO了吗?

    如果你的分析习惯是在调研技术的时候最先弄清楚有多少业务流程,先画出业务流程图,然后顺藤摸瓜,找出业务流程中每一步骤的参与部门或岗位,弄清楚在这一步参与者所做的事情和填写表单的结果,并关心用户是如何把这 ...

  6. MySQL基本查询语句

    创建一张表 create table user ( id ) not null, name ) not null, birthDate date not null, gender ) not null ...

  7. SQL Server 2008导入、导出数据库

    SQL Server 2008数据库的导入.导出和Mysql的导出还有一定的区别,刚开始的时候完全摸不到方向,利用Microsoft SQL Server Management Studio进行导入. ...

  8. CAS 单点登录,通过ticket 获取登录用户

    string url =SSOValidate+"?service=" + WebValidate + "&ticket=" + Ticket + &q ...

  9. jquery的事件绑定

    暂时有 bind(),live(),delegate(),on() 这四个事件监听函数 对应的4个事件解除函数分别是: unbind(),die(),undelegate(),off() bind:向 ...

  10. 一些VR延迟优化方法

    http://m.blog.csdn.net/article/details?id=50667507 VR中的”延迟”, 特指”Motion-To-Photon Latency”, 指的是从用户运动开 ...