Python之nyoka:nyoka库函数的简介、安装、使用方法之详细攻略
Python之nyoka:nyoka庫函數(shù)的簡介、安裝、使用方法之詳細(xì)攻略
?
?
?
?
?
目錄
nyoka庫函數(shù)的簡介
1、Nyoka的核心模塊
2、模型
(1)、基礎(chǔ)模型
(2)、LightGBM:
(3)、XGBoost (version <= 0.90):
(4)、Statsmodels (version <= 0.11.1):
3、預(yù)處理
nyoka庫函數(shù)的安裝
nyoka庫函數(shù)的使用方法
1、Nyoka為每個庫包含獨(dú)立的導(dǎo)出程序,例如scikit-learn、keras、xgboost等。
2、基于StandardScaler的決策樹分類器案例
3、LGBMClassifier → PMML
4、基于nyoka庫利用LGBMClassifier模型實(shí)現(xiàn)對iris數(shù)據(jù)集訓(xùn)練、保存為pmml模型并重新載入pmml模型進(jìn)而實(shí)現(xiàn)推理
?
?
?
?
nyoka庫函數(shù)的簡介
? ? ?Nyoka是一個全面支持最新PMML (PMML 4.4)標(biāo)準(zhǔn)的Python庫。使用Nyoka,數(shù)據(jù)科學(xué)家可以出口大量的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)從流行的Python框架PMML模型通過使用任何眾多包括現(xiàn)成的出口商或通過創(chuàng)建自己的專業(yè)出口商/個人模型類型通過構(gòu)造函數(shù)的調(diào)用序列。
? ? ?除了大約500 Python類,每個封面PMML標(biāo)簽和所有構(gòu)造函數(shù)參數(shù)/屬性中定義的標(biāo)準(zhǔn),Nyoka還提供了越來越多的方便的類和函數(shù),簡化數(shù)據(jù)科學(xué)家的生活例如通過閱讀或編寫任何PMML文件在一行代碼中你最喜歡的Python環(huán)境。
? ? ?Nyoka提供了完整的Python源代碼,擴(kuò)展的HTML類/函數(shù)文檔,以及越來越多的Jupyter筆記本教程,幫助您熟悉Nyoka支持您使用PMML作為您最喜歡的數(shù)據(jù)科學(xué)傳輸文件格式的方式。
Nyoka文檔:https://softwareag.github.io/nyoka/
?
1、Nyoka的核心模塊
- Statsmodels Exporter Module
- Keras Exporter Module
- RetinaNet Exporter Module
- LightGBM Exporter Module
- Pre-Processing Exporter Module
- Scikit-Learn Exporter Module
- XGBoost Exporter Module
- ExponentialSmoothing Exporter Module
- Nyoka's Pre-Processing Module
- Enums Module
?
2、模型
(1)、基礎(chǔ)模型
- linear_model.LinearRegression
- linear_model.LogisticRegression
- linear_model.RidgeClassifier
- linear_model.SGDClassifier
- discriminant_analysis.LinearDiscriminantAnalysis
- tree.DecisionTreeClassifier
- tree.DecisionTreeRegressor
- svm.SVC
- svm.SVR
- svm.LinearSVC
- svm.LinearSVR
- svm.OneClassSVM
- naive_bayes.GaussianNB
- ensemble.RandomForestRegressor
- ensemble.RandomForestClassifier
- ensemble.GradientBoostingRegressor
- ensemble.GradientBoostingClassifier
- ensemble.IsolationForest
- neural_network.MLPClassifier
- neural_network.MLPRegressor
- neighbors.KNeighborsClassifier
- neighbors.KNeighborsRegressor
- cluster.KMeans
(2)、LightGBM:
- LGBMClassifier
- LGBMRegressor
(3)、XGBoost (version <= 0.90):
- XGBClassifier
- XGBRegressor
(4)、Statsmodels (version <= 0.11.1):
- tsa.arima_model.ARIMA
- tsa.arima.model.ARIMA?(In statespace form)
- tsa.statespace.SARIMAX
- tsa.statespace.VARMAX
- tsa.statespace.ExponentialSmoothing
?
?
?
3、預(yù)處理
- preprocessing.StandardScaler
- preprocessing.MinMaxScaler
- preprocessing.RobustScaler
- preprocessing.MaxAbsScaler
- preprocessing.LabelEncoder
- preprocessing.Imputer
- preprocessing.Binarizer
- preprocessing.PolynomialFeatures
- preprocessing.LabelBinarizer
- preprocessing.OneHotEncoder
- feature_extraction.text.TfidfVectorizer
- feature_extraction.text.CountVectorizer
- decomposition.PCA
- sklearn_pandas.CategoricalImputer?( From?sklearn_pandas?library )
?
?
?
?
nyoka庫函數(shù)的安裝
pip install nyoka
pip install --user -i https://pypi.tuna.tsinghua.edu.cn/simple nyoka
?
?
?
?
nyoka庫函數(shù)的使用方法
1、Nyoka為每個庫包含獨(dú)立的導(dǎo)出程序,例如scikit-learn、keras、xgboost等。
| scikit-learn | skl_to_pmml |
| xgboost | xgboost_to_pmml |
| lightgbm | lgbm_to_pmml |
| keras | KerasToPmml |
| statsmodels | StatsmodelsToPmml & ExponentialSmoothingToPmml |
| retinanet | RetinanetToPmml |
?
2、基于StandardScaler的決策樹分類器案例
?from sklearn.pipeline import Pipelinefrom sklearn.tree import DecisionTreeClassifierfrom sklearn.preprocessing import StandardScalerpipeline_obj = Pipeline([("scaler",StandardScaler()),("model",DecisionTreeClassifier())])from sklearn.dataset import load_irisiris_data = load_iris()X = iris_data.datay = iris_data.targetfeatures = iris_data.feature_namespipeline_obj.fit(X,y)from nyoka import skl_to_pmmlskl_to_pmml(pipeline=pipeline_obj,col_names=features,target_name="species",pmml_f_name="decision_tree.pmml")?
?
?
3、LGBMClassifier → PMML
import pandas as pd from sklearn import datasets from sklearn.pipeline import Pipeline from lightgbm import LGBMRegressor,LGBMClassifier from nyoka import lgb_to_pmmliris = datasets.load_iris() irisd = pd.DataFrame(iris.data,columns=iris.feature_names)target = 'Species' irisd[target] = iris.target features = irisd.columns.drop(target)#保存模型 pipeline_obj = Pipeline([ ('lgbmc',LGBMClassifier())]) pipeline_obj.fit(irisd[features],irisd[target]) lgb_to_pmml(pipeline_obj,features,target,"lgbmc_pmml.pmml")#讀入數(shù)據(jù)進(jìn)行測試 auto = pd.read_csv('auto-mpg.csv') X = auto.drop(['mpg','car name'], axis=1) y = auto['mpg']feature_names = [name for name in auto.columns if name not in ('mpg','car name')] target_name='mpg'pipeline_obj = Pipeline([ ('lgbmr',LGBMRegressor()) ]) pipeline_obj.fit(auto[feature_names],auto[target_name]) lgb_to_pmml(pipeline_obj,feature_names,target_name,"lgbmr_pmml.pmml")?
4、基于nyoka庫利用LGBMClassifier模型實(shí)現(xiàn)對iris數(shù)據(jù)集訓(xùn)練、保存為pmml模型并重新載入pmml模型進(jìn)而實(shí)現(xiàn)推理
ML之nyoka:基于nyoka庫利用LGBMClassifier模型實(shí)現(xiàn)對iris數(shù)據(jù)集訓(xùn)練、保存為pmml模型并重新載入pmml模型進(jìn)而實(shí)現(xiàn)推理
?
?
?
?
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的Python之nyoka:nyoka库函数的简介、安装、使用方法之详细攻略的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IT:银行类金融科技岗笔试习题集合—各大
- 下一篇: sklearn:sklearn.prep