日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[机器学习] PMML实现模型上线

發(fā)布時間:2023/12/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [机器学习] PMML实现模型上线 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

機器學(xué)習(xí)在用于產(chǎn)品的時候,經(jīng)常會遇到跨平臺的問題。

比如用Python基于一系列的機器學(xué)習(xí)庫訓(xùn)練了一個模型,但是有時候其他的產(chǎn)品和項目想把這個模型集成進(jìn)去,但是這些產(chǎn)品很多只支持某些特定的生產(chǎn)環(huán)境比如Java,為了上一個機器學(xué)習(xí)模型去大動干戈修改環(huán)境配置很不劃算,此時我們就可以考慮用預(yù)測模型標(biāo)記語言(Predictive Model Markup Language,以下簡稱PMML)來實現(xiàn)跨平臺的機器學(xué)習(xí)模型部署。

?

一. PMML概述

PMML是數(shù)據(jù)挖掘的一種通用的規(guī)范,它用統(tǒng)一的XML格式來描述我們生成的機器學(xué)習(xí)模型。這樣無論你的模型是sklearn,R還是Spark MLlib生成的,我們都可以將其轉(zhuǎn)化為標(biāo)準(zhǔn)的XML格式來存儲。當(dāng)我們需要將這個PMML的模型用于部署的時候,可以使用目標(biāo)環(huán)境的解析PMML模型的庫來加載模型,并做預(yù)測。

可以看出,要使用PMML,需要兩步的工作,都需要相關(guān)的庫支持。

  • 將離線訓(xùn)練得到的模型轉(zhuǎn)化為PMML模型文件
  • 將PMML模型文件載入在線預(yù)測環(huán)境,進(jìn)行預(yù)測
  • ?

    二. PMML模型的生成和加載相關(guān)類庫

    大部分模型都可以用PMML的方式實現(xiàn)

    • jpmml的說明文檔:GitHub - jpmml/jpmml-evaluator: Java Evaluator API for PMML
    • Jpmml支持的轉(zhuǎn)換語言,主流的機器學(xué)習(xí)語言都支持了;
    • 從下圖可以看到,它支持R、python和spark、xgboost、lightgbm等模型的轉(zhuǎn)換,用起來非常方便;


    ?

    三、工具的工程實踐:

    1. Python模型上線,使用了模型轉(zhuǎn)換成PMML上線方法

    如果我們使用的是sklearn,那么可以使用sklearn2pmml這個python庫來做模型文件的生成,這個庫安裝很簡單,使用"pip install sklearn2pmml"即可。python-sklearn里面的模型都支持,也支持xgboost,并且PCA,歸一化可以封裝成preprocess轉(zhuǎn)換成PMML,所以調(diào)用起來很方便。特別需要注意的是:缺失值的處理會影響到預(yù)測結(jié)果,大家可以可以看一下, 用PMML方式預(yù)測,模型預(yù)測一條記錄速度是1ms,可以用這個預(yù)測來預(yù)估一下根據(jù)你的數(shù)據(jù)量,整體的速度有多少

    2. 如果使用的是Spark MLlib, 這個庫有一些模型已經(jīng)自帶了保存PMML模型的方法,可惜并不全。如果是R,則需要安裝包"XML"和“PMML”。此外,JAVA庫JPMML可以用來生成R,SparkMLlib,xgBoost,Sklearn的模型對應(yīng)的PMML文件。github地址是:https://github.com/jpmml/jpmml。加載PMML模型需要目標(biāo)環(huán)境支持PMML加載的庫,如果是JAVA,則可以用JPMML來加載PMML模型文件。

    ?

    ?

    ?

    ?

    https://zhuanlan.zhihu.com/p/39021238

    ?

    ?

    總結(jié)

    以上是生活随笔為你收集整理的[机器学习] PMML实现模型上线的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。