python package : https://github.com/mwburke/xgboost-python-deploy

import xgboost as xgb
import numpy as np
import pandas as pd
from xgb_deploy.fmap import generate_fmap_from_pandas
from xgb_deploy.model import ProdEstimator
from sklearn.model_selection import train_test_split
import json
import random dim_float = 80
dim_int = 20
n = 50000 df_float = pd.DataFrame(np.random.rand(n,dim_float))
df_float.columns = ['float_%s'%i for i in range(dim_float)]
df_int = pd.DataFrame(np.random.randint(0,10,size=(n,dim_int)))
df_int.columns = ['int_%s'%i for i in range(dim_int)]
feature_cols = list(df_float.columns)+list(df_int.columns)
df_data = pd.concat([df_float,df_int],axis=1)
df_data['label'] = np.random.randint(0,2,n)
print(df_data['label'].value_counts())
print(df_data.shape)
print(df_data.head(5)) generate_fmap_from_pandas(df_data, 'demo_fmap.txt') X_train, X_test, y_train, y_test = train_test_split(df_data[feature_cols], df_data['label'], test_size=0.33) dtrain = xgb.DMatrix(data=X_train, label=y_train)
dtest = xgb.DMatrix(data=X_test, label=y_test) classification_params = {
'base_score': 0.5, # np.mean(y_train),
'max_depth': 3,
'eta': 0.1,
'objective': 'binary:logistic',
'eval_metric': 'auc',
'silent': 1,
'n_jobs ':-1
} clf = xgb.XGBClassifier(**classification_params)
clf.fit(X_train, y_train,eval_set=[(X_train, y_train), (X_test, y_test)],eval_metric='logloss',verbose=True)
X_test['pred1'] = clf.predict_proba(X_test)[:,1]
model = clf._Booster model.dump_model(fout='demo_xgb.json', fmap='demo_fmap.txt', dump_format='json') with open('demo_xgb.json', 'r') as f:
model_data = json.load(f) estimator = ProdEstimator(model_data, pred_type='classification', base_score=classification_params['base_score'])
X_test['pred2'] = estimator.predict(X_test.to_dict(orient='records'))
X_test['diff'] = X_test['pred1'] - X_test['pred2']
print(X_test[['pred1','pred2','diff']].head(30))
print(X_test['diff'].sum())
      pred1     pred2          diff

33243 0.515672 0.515672 1.635301e-08

15742 0.478694 0.478694 3.468678e-08

24815 0.596091 0.596091 -5.536898e-09

33120 0.489696 0.489696 4.128085e-08

29388 0.472804 0.472804 -6.701184e-09

33662 0.478668 0.478668 1.495377e-08

15019 0.495415 0.495415 -1.104315e-09

7787 0.555280 0.555280 -1.022957e-08

39378 0.494439 0.494439 5.891659e-08

15317 0.481563 0.481563 1.630472e-08

31946 0.533403 0.533403 -2.231835e-08

16784 0.484454 0.484454 2.196223e-08

13511 0.529494 0.529494 -2.274838e-09

11304 0.492583 0.492583 -1.724794e-09

9583 0.501279 0.501279 -1.815183e-09

31448 0.517019 0.517019 -2.593171e-08

38030 0.482880 0.482880 -1.191063e-08

49734 0.479614 0.479614 -1.770112e-08

15682 0.479675 0.479675 4.876058e-09

30756 0.539753 0.539753 9.885628e-09

4829 0.507685 0.507685 2.341456e-08

49888 0.502952 0.502952 2.951946e-08

41311 0.500395 0.500395 1.270836e-08

22434 0.486226 0.486226 1.047917e-08

45807 0.531456 0.531457 -3.217818e-08

25009 0.490071 0.490071 2.752955e-08

3419 0.516763 0.516763 -2.142890e-09

18176 0.486686 0.486686 -5.403653e-09

18296 0.490275 0.490275 -3.624349e-08

314 0.496112 0.496112 -1.507733e-08

-0.05263647978160496

xgboost load model from demp text file的更多相关文章

  1. unity, read text file

    using System.IO; //test read txt        //Resources.Load(...) loads an asset stored at path in a Res ...

  2. [转]Loading, Editing, and Saving a Text File in HTML5 Using Javascript

    本文转自:http://thiscouldbebetter.wordpress.com/2012/12/18/loading-editing-and-saving-a-text-file-in-htm ...

  3. shell脚本执行时报"bad interpreter: Text file busy"的解决方法

    在执行一个shell脚本时,遇到了“-bash: ./killSession.sh: /bin/bash: bad interpreter: Text file busy”错误提示,如下所示: [or ...

  4. eclipse的使用-------Text File Encoding没有GBK选项的设置

    eclipse的使用-------Text File Encoding没有GBK选项的设置 2013-12-25 09:48:06 标签:java myeclipse使用 有一个项目是使用GBK编码的 ...

  5. Writing Text File From A Tabular Block In Oracle Forms

    The example given below for writing text file or CSV using Text_IO package from a tabular block in O ...

  6. create feature from text file

    '''---------------------------------------------------------------------------------- Tool Name: Cre ...

  7. The 12th tip of DB Query Analyzer, powerful in text file process

    MA Gen feng ( Guangdong Unitoll Services incorporated, Guangzhou 510300) Abstract   It's very powerf ...

  8. 【转】shell脚本执行时报"bad interpreter: Text file busy"的解决方法

    1)问题现象: 在ubuntu下执行以下脚本( while_count),报错: -bash: ./while_count: /bin/bash: bad interpreter: Text file ...

  9. memtrack: Couldn't load memtrack module (No such file or directory) 的问题解决

    通过了编译,可是在模拟器运行时,却出现stopping…….查看logcat,发现出现错误: E/memtrack: Couldn't load memtrack module (No such fi ...

随机推荐

  1. 「CH2601」 电路维修 解题报告

    CH2601 电路维修 描述 Ha'nyu是来自异世界的魔女,她在漫无目的地四处漂流的时候,遇到了善良的少女Rika,从而被收留在地球上.Rika的家里有一辆飞行车.有一天飞行车的电路板突然出现了故障 ...

  2. golang编译之vendor机制

    Go 1.5引入了vendor 机制,但是需要手动设置环境变量 GO15VENDOREXPERIMENT= 1,Go编译器才能启用.从Go1.6起,,默认开启 vendor 目录查找,vendor 机 ...

  3. DM7的SQL批量插入for、while方法

    示例1,for用法: begin for i in 1...10000 loop insert into test values(i,i,'aaa',sysdate); if i mod 20 = 0 ...

  4. javascript-void keyword

    javascript-void keyword 写在前面 ECMA-262定义了ECMAScript所支持的关键字(keyword),关键字不能用作ECMAScript程序的标识符(Indetifie ...

  5. cometoj 茶颜悦色|扫描线+懒惰标记

    传送门 题目描述 茶颜悦色也太好喝了!鸡尾酒在长沙的各种茶颜悦色的店铺中流连忘返.他发现长沙有炒鸡多的茶颜悦色店,走两步就能遇到一家. “方圆一公里能有十家茶颜悦色!”鸡尾酒感叹了起来. 于是他想到了 ...

  6. Could not write JSON: Infinite recursion (StackOverflowError);

    转自:https://blog.csdn.net/east123321/article/details/80435051 在controller返回数据到统一json转换的时候,出现了json inf ...

  7. python线性数据结构

    1.栈(Stack)(后进先出) 栈的实现: class Stack: def __init__(self): self.items = [] def isEmpty(self): return se ...

  8. 机器学习——Java调用sklearn生成好的Logistic模型进行鸢尾花的预测

    机器学习是python语言的长处,而Java在web开发方面更具有优势,如何通过java来调用python中训练好的模型进行在线的预测呢?在java语言中去调用python构建好的模型主要有三种方法: ...

  9. 打造m3u8视频(流视频)下载解密合并器(kotlin)

    本文是对我原创工具m3u8视频下载合并器关键代码解析及软件实现的思路的讲解,想要工具的请跳转链接 1.思路说明 思路挺简单,具体步骤如下: 下载m3u8文件 解析m3u8文件获得ts文件列表 根据文件 ...

  10. Akka Java 文档 -- 容错

    [转自: http://blog.csdn.net/zjw10wei321/article/details/46911825] 容错 实际中的故障处理 容错案例图解 容错案例所有源码 创建新的监管策略 ...