2013-04-08 72 views
3

簡短問題:是否有Java,Python或支持SVM模型的任何其他主要編程語言的PMML接口?將PMML中的SVM模型導入到Java或Python?

背景:我已經使用kernlab包中的ksvm函數在R中訓練了一個SVM模型。現在我想在不同的軟件中使用這個模型。爲了從R中導出它,我想我可以通過pmml包使用PMML(預測模型標記語言)。

但是,我找不到任何用於Java,Python或基本上允許的任何語言的庫導入這樣一個模型。 The Data Mining Group列出了很多PMML接口,但這些主要是針對統計的特定工具。還有一個通用庫,但不清楚如何使用這個將模型從一個界面遷移到另一個界面。

+0

[Weka](http://wiki.pentaho.com/display/DATAMINING/PMML+Support+in+Weka)可能能夠導入SVM模型。 – 2013-04-08 13:12:38

+0

@VincentZoonekynd:看起來好像是這樣,雖然我還沒有找到任何文檔。謝謝。 – roelandvanbeek 2013-04-10 09:54:50

回答

0

您可以使用Zementis ADAPA評分引擎來部署您的模型,並通過網絡服務訪問它。根據我的經驗,ADAPA也可用作Java庫,因此您可以針對其Java API進行編碼。希望這可以幫助。

+0

這個Java庫聽起來像是我正在尋找的。但是,我在互聯網上找不到任何關於它的事情;它看起來好像ADAPA僅作爲Web服務提供。你有更多的信息嗎? – roelandvanbeek 2013-04-10 09:45:39

0

一個名爲「Pattern」的庫將PMML模型轉換爲Java中的Cascading應用程序。然後,您可以在Hadoop或其他Java應用程序中運行模型評分。 https://github.com/Cascading/pattern

有一個SVM impl模式 - 正在重寫爲圖書館的最新更新。查看開發人員電子郵件列表:https://groups.google.com/forum/?fromgroups#!forum/pattern-user

+0

糾正我,如果我錯了,但似乎層疊應用程序只用於評分模型,我也可以在R做。我想寫一個使用模型的應用程序。 – roelandvanbeek 2013-06-06 08:28:30

0

您可以使用Weka作爲Java API或獨立工具,這對於PPML和一些分類器來說效果很好。 在Weka API中檢查這些類:weka.classifiers.pmml.consumer.PMMLClassifier和weka.classifiers.pmml.consumer.SupportVectorMachineModel。

0

我相信JPMML(Java Evaluator PMML API)會做你想做的。