在移动设备中使用libsvm进行java代码预测
我的应用程序包含一个学习任务,它是一个SVM分类。经过一番艰苦的研究,我了解了SVM的基本知识,并通过命令行使用libSVM工具尝试了一些示例。但是,我的应用程序部署在客户机-服务器体系结构中:在移动设备中使用libsvm进行java代码预测,java,android,machine-learning,classification,libsvm,Java,Android,Machine Learning,Classification,Libsvm,我的应用程序包含一个学习任务,它是一个SVM分类。经过一番艰苦的研究,我了解了SVM的基本知识,并通过命令行使用libSVM工具尝试了一些示例。但是,我的应用程序部署在客户机-服务器体系结构中: 训练集存储在服务器端,服务器端负责生成支持向量机模型 然后将SVM模型发送到客户端并用于预测 客户端是安卓移动设备 我的问题是如何在Java代码中使用libSVM而不是通过命令行运行它?由于文档有点少,最好的方法可能是查看libSVM发行版中命令行工具svm_predict.Java的源代码 e、
- 训练集存储在服务器端,服务器端负责生成支持向量机模型
- 然后将SVM模型发送到客户端并用于预测
- 客户端是安卓移动设备
我的问题是如何在Java代码中使用libSVM而不是通过命令行运行它?由于文档有点少,最好的方法可能是查看libSVM发行版中命令行工具svm_predict.Java的源代码 e、 g.从文件加载svm模型:
svm_model model = svm.svm_load_model("filename");
然后你可以做一个预测:
double v = svm.svm_predict(model, x);
svm_predict.java中的
predict()
方法详细介绍了如何设置x。由于文档有点少,最好的方法可能是查看libsvm发行版中命令行工具svm_predict.java的源代码
e、 g.从文件加载svm模型:
svm_model model = svm.svm_load_model("filename");
然后你可以做一个预测:
double v = svm.svm_predict(model, x);
svm_predict.java中的
predict()
方法详细介绍了如何设置x。实现这一点的最通用、多语言方法是实现等式,以获得给定训练svm样本的决策分数。这将在Java、C、Dalvik和Objective C中工作,无论您现在或将来何时使用
LIBSVM生成的模型文件有三个重要方面:
- 拉格朗日乘数(alphas)
- 支持向量的标签(y_i's)
- 支持向量(来自用于描述决策面的训练集的数据点)、x_i
决策仅仅是这个决策值的符号(例如,sgn(f(x))x)最通用的多语言方法是实现这个等式,以获得给定训练SVM的样本的决策分数。这将在Java、C、Dalvik和Objective C中工作,无论您现在或将来何时使用 LIBSVM生成的模型文件有三个重要方面:
- 拉格朗日乘数(alphas)
- 支持向量的标签(y_i's)
- 支持向量(来自用于描述决策面的训练集的数据点)、x_i
而决策只是这个决策值的符号(例如,sgn(f(x))x)您可以在Android开发中使用包含此项目的方法
您可以使用包含此项目的方法进行Android开发
我找到了这个项目,效果很好
我找到了这个项目,效果很好
对不起,我没有正确理解这个问题,所以我删除了我的答案。但是,libsvm页面说Java代码与本机C源代码很接近,也许您可以按照C教程进行操作?对不起,我没有正确理解这个问题,所以我删除了我的答案。然而,libsvm页面说Java代码与本机C源代码非常接近,也许您可以按照C教程进行操作?