libsvm3.24在vs2017下的简单使用

参考:libsvm的C++使用详细例子(采用TXT格式的数据)
libsvm在vs2017下使用c++实例详解(含c++代码)

1 环境搭建

1.1 libsvm官网下载最新版本(本文使用libsvm3.24)
在这里插入图片描述
1.2 按照要求格式制作数据集
训练集和测试集要放在与工程的vcxproj文件同目录下。
在这里插入图片描述
训练集:
在这里插入图片描述
测试集:
在这里插入图片描述

2 训练

2.1 在vs2017中新建一个空白工程,接着导入svm.h、svm.cpp、svm-train.c。
在这里插入图片描述
2.2 配置参数
右键工程——属性——调试——命令参数,添加训练集文件名称(包后缀)和训练后得到的模型文件名称(不包后缀)。
在这里插入图片描述
2.3 在svm-train.c下的main函数的return语句前加上一句system(“pause”); 防止代码一闪而过。此外,还需要改动gamma的值,把0改为特征数量的倒数。
在这里插入图片描述
2.4 直接编译会发现编译出错,这时候需要改动两个地方:①右键工程——Properties(属性)——C++——Preprocesser(预处理器)——Preprocesser Definitions(预处理器定义)中添加_CRT_SECURE_NO_WARNINGS ②把strdup改为_strdup。

2.5 运行结果
在这里插入图片描述
在这里插入图片描述

3 测试

3.1 移除工程中的svm-train.c,导入svm-predict.c。
在这里插入图片描述
3.2 配置参数
右键工程——属性——调试——命令参数,添加测试集文件名称(包后缀)、训练后得到的模型文件名称(不包后缀)、测试结果文件名称(包后缀)。
在这里插入图片描述
3.3 在svm-predict.c下的main函数的return语句前加上一句system(“pause”); 防止代码一闪而过。
在这里插入图片描述
3.4 运行结果
在这里插入图片描述
在这里插入图片描述

发布了5 篇原创文章 · 获赞 0 · 访问量 54

猜你喜欢

转载自blog.csdn.net/za_zhi/article/details/105499138
今日推荐