buaasuozi  这是原作者;

安装libsvm 不成功有可能是你的MATLAB版本或者是编译文件版本的问题,但是不要急着换其他版本。。。。说不定就有别的解决办法呢

首先感谢Lin教授及其实验室提供的libsvm工具箱,原始下载地址:下载主页:http://www.csie.ntu.edu.tw/~cjlin/libsvm/       下载地址:http://www.csie.ntu.edu.tw/~cjlin/libsvm/#download  
 
原本我使用的是libsvm-3.01版本,但是目前更换了matlab版本,由32位变为64位,再使用原来的libsvm进行  mex -setup 编译就会出现如下错误(异常):
 
>> mex -setup
MEX 配置为使用 'Microsoft Visual C++ 2012 (C)' 以进行 C 语言编译。
警告: MATLAB C 和 Fortran API 已更改,现可支持
        包含 2^32-1 个以上元素的 MATLAB 变量。不久以后,
         您需要更新代码以利用
         新的 API。您可以在以下网址找到相关详细信息:
         http://www.mathworks.com/help/ma ... use-64-bit-api.html

要选择不同的语言,请从以下选项中选择一种命令:
mex -setup C++ 
mex -setup FORTRAN

 
在网上找了很多解决方案,都没有奏效,开始以为是matlab和visual studio版本问题,也怀疑了win10 64位系统问题,按照网上的方案解决都没有奏效。
后来参看了 http://apinetree.blog.51cto.com/714152/1560254 这篇文章,受到了启发。但是按照这篇文章的提示操作,还是报错:
 
Invalid MEX-file 'C:\Program Files\MATLAB\R2014b\toolbox\libsvm-3.21\windows\libsvmread.mexw64': 找不到指定的模块。
 
后来按照libsvm提供的最原始办法:make 解决了
具体步骤如下:
1、下载libsvm,我下载的是libsvm-3.21版本,大家也可以去这里下载:下载libsvm-3.21
2、解压后放到matlab的安装目录下,我个人喜欢直接放到matlab下面的toolbox里面,毕竟这也是其中的工具之一。
3、在matlab主界面找到“设置路径”,添加文件夹及其子文件,索性把整个libsvm-3.21全添加进去,反正可能都要用到。
4、切换matlab运行目录致:C:\Program Files\MATLAB\R2014b\toolbox\libsvm-3.21\matlab,在命令行输入make,也就是该目录下的那个make文件。这时候就像以前安装libsvm一样,会自动make出来很多文件,不用管,主要是会看到make出带有mexm64后缀名的文件,这就成功了。
 
5、拷贝4步骤中matlab文件夹下所有make出来的文件,到libsvm-3.21\windows文件夹下,替换替换替换……,统统替换。
6、over,出一口气,放松一下,距离成功只差后面的第七步
7、验证是否成功:使用数据libsvm试验数据下载
可以将下载后的heart_scale.mat数据复制到刚才的目录下(其实无所谓)。然后输入libsvm工具箱特有的语句,就可以验证成功与否了:
>> load heart_scale.mat
>> model = svmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
>> [predict_label, accuracy, dec_values] = svmpredict(heart_scale_label, heart_scale_inst, model);
 
输出:
*
optimization finished, #iter = 134
nu = 0.433785
obj = -101.855060, rho = 0.426412
nSV = 130, nBSV = 107
Total nSV = 130
、、、、标准支持向量和边界支持向量。。。nSV = 130, nBSV = 107
Accuracy = 86.6667% (234/270) (classification)
 
得到了分类精度,这就证明libsvm安装成功!
以上亲测,运行环境win10  64位系统,matlab R2014b   libsvm-3.21   visual studio 2012

http://blog.csdn.net/buaasuozi/article/details/50781615

MATLAB安装libsvm无法使用解决办法(转)的更多相关文章

  1. 树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法

    树莓派(Raspberry Pi 3)安装centos7后yum无法使用解决办法 人穷,闲鱼淘了个二手的树莓派3 英国版,无奈咱也不会用,很无奈~ 安装教程百度到的差不多都可以,找个格式正常的一步一步 ...

  2. eclipse安装错误的解决办法

    eclipse安装错误的解决办法 Eclipse 是一个集成开发环境,如Java,C,C++,PHP等安装Eclipse首先得先安装java的Jdk或者Jre 首先访问https://www.ecli ...

  3. freeradius 安装出错的解决办法

    sudo apt-get install freeradius-mysql Selecting previously unselected package freeradius-mysql. (Rea ...

  4. ecshop安装常见问题及解决办法

    一,Ecshop首页出现报错:Only variables should be passed by referen 最近想安装一个ECSHOP商城上去,老是报错,出现下面这就话: Strict Sta ...

  5. 用re-sign.jar重签名apk后安装失败的解决办法

    问题 打开re-sign.jar,将下载好的apk拖入re-sign.jar的界面进行重签名.重签名成功后,通过adb intall命令安装重签名后的apk文件失败.提示:Failure [INSTA ...

  6. bcrypt 安装不成功解决办法

    同一个项目,公司和家里的 node.js 的版本不同,导致项目安装依赖包时 bcrypt 安装不成功. 家里的版本为:8.11.3 公司的版本为:10.14.2 在当前项目中执行完下面两个命令后,报错 ...

  7. Sublime 无法安装插件的解决办法

    1,打开命令面板 Ctrl + Shift + P  输入:pi  回车 按回车后,出现异常如下图: 解决办法: 1,点击Preferences----Brows Packages ---会到安装目录 ...

  8. pip安装报错 解决办法

    安装库时报错:Could not fetch URL https://pypi.python.org/simple/wheel/: 解决办法:  pip --trusted-host pypi.pyt ...

  9. pip命令安装 pyinstaller失败解决办法

    写在前面,如果是用win10系统的用户,一定要先通过管理员模式打开命令窗口,我是直接按 win + x 键,选择 "Windows Powershell(管理员)",否则会提示:  ...

随机推荐

  1. date的讲解及分析

    Date() 对象(获取时间的)   不过是用类的写法来实现的:(他也没有私有属性,都是通过__proto__继承来的) Date()  分两大系      一个是get系列(及获取时间)     一 ...

  2. 关于json_encode()的使用注意

    json_encode($json_str,true)在一般情况下可以返回一个数组,但当$json_str的字符编码是GBK或其它时,返回的是一个 空数组,必须用iconv(‘gbk’,‘ut8//I ...

  3. pandas的merge函数

    pandas.merge(left,right,how='inner',on=None,left_on=None,right_on=None,left_index=False,right_index= ...

  4. 长短时记忆网络(LSTM)

    长短时记忆网络 循环神经网络很难训练的原因导致它的实际应用中很处理长距离的依赖.本文将介绍改进后的循环神经网络:长短时记忆网络(Long Short Term Memory Network, LSTM ...

  5. ubuntu18.04 安装hadoop 2.7.3+hive 2.3.4

    1. 安装hadoop 详细请参见本人的另外一片博文<Hadoop 2.7.3 分布式集群安装> 2. 下载hive 2.3.4 解压文件到/opt/software -bin.tar.g ...

  6. delphi WebBrowser的使用方法详解(三)

    WebBrowser 操作记要 WebBrowser1.GoHome;  //到浏览器默认主页 WebBrowser1.Refresh;  //刷新 WebBrowser1.GoBack;  //后退 ...

  7. Oracle中查询表的大小、表的占用情况和表空间的大小

    有两种含义的表大小.一种是分配给一个表的物理空间数量,而不管空间是否被使用.可以这样查询获得字节数: select segment_name, bytes from user_segments whe ...

  8. 0_Simple__simpleStreams

    对比使用单流和多流(4条)情况下数据拷贝,以及数据拷贝加内核调用的效率差别.▶ 源代码 #include <stdio.h> #include <cuda_runtime.h> ...

  9. zabbix监控系统日志

    监控日志必须让agent运行在主动模式 参考网站:https://www.cnblogs.com/dadonggg/p/8611054.html?from=singlemessage

  10. js实现点击按钮弹出上传文件的窗口

    转自:https://www.jb51.net/article/100916.htm 1.详细描述 在页面上设置一个“选择文件”按钮,点击该按钮,会弹出本地磁盘信息用于选择文件. 2.代码 ? 1 2 ...