4 d+ A2 j# z* P H. X除了预测目标外,这里还需要很多信息,如表中的用户年龄、工作,房产,贷款情况……,这里的每一列称为变量,也就是和贷款人将来是否违约可能会相关的信息,原则上能收集到的变量越多越好。例如预测客户是否会购买产品,可以搜集客户的行为信息,购物偏好,以及产品的特征信息,促销力度等;预测汽车保险理赔风险,需要保单数据,车辆信息、车主交通习惯以及历史理赔情况等等,如果是预测健康险还需要一些被保人的生活习惯,身体状况,就医看病的信息;预测商场超市的销售情况,需要历史的销售订单,客户信息,商品信息;预测不良产品,需要生产的工艺参数,环境,原料情况等数据。总之,收集到的相关信息越多,预测效果也会越好。 5 Y+ e6 g# U' c: T, D Z( x9 X0 j) w: u# f4 H3 E采集数据时,通常会截取某一段时期的历史数据来制作宽表,比如我们想预测7月份用户的违约情况,可以采集1-6月份的数据来训练建立模型。数据采集的时间范围并不是固定的,可以灵活操作,例如也可以是近1年或者近3个月等等。 ) a' S* {# d; p" [, [7 i8 v + i0 I" P- p8 {$ j; r准备好的宽表可以是Excel格式或csv格式,第一行是标题,后面每一行都是一条历史记录。 2 V" ]4 |" h: E" R+ |0 r& `7 H2 F. W
如果企业有建设好的信息系统,那可以找IT部门要这些数据,很多企业的BI系统中可以直接导出这种数据。 , ?- W+ a ~1 L+ _( ], Y' ?# m( e7 j- Z5 l1 @, `' D6 f$ M) G
2. 下载软件,配置建模外部库 6 h1 w& Y. I& ]. M/ x& L, aSPL 在易明建模外部库的配合下可以提供全自动化的建模预测功能。 ' Q {" d! m, {' B1 H$ n& D& H8 e% M# N0 d3 y8 u& G* U
(1)下载安装集算器(SPL)和易明建模软件 / i' n: B& Q" D- p集算器下载: # x7 E8 o6 h7 p( b2 F“http://c.raqsoft.com.cn/article/1595816810031” ; D8 R8 x; k. Z7 w- U6 N5 J: L) x9 w2 D ' \4 u+ d! U" h" x# z9 v易明建模下载: “http://www.raqsoft.com.cn/download/download-ymodel”: d6 O( L1 f* \1 Z! p# P# c! P
4 Q) F' O( t0 p. i! s3 J5 L安装集算器和建模软件,并记录安装目录,比如:C:\Program Files\raqsoft\ymodel ; H5 u# `+ a0 m / T7 z- |) f( t! E! e* b+ ] * L9 V$ L5 p) p# {3 C+ s: V, ]5 S& Y& {5 n
(2)在SPL中配置外部库 + _( k0 L. u# q( ^# ~5 C(a)复制外部库所需要的文件+ m! o* o' g! N8 j
在易明建模的安装目录下找 YModelCil 和 lib 文件夹6 d) H6 |1 f1 I# t4 \" R) B
4 y# R/ P$ Z9 m7 H" d, b( M
9 G" \' F: l1 d, Q6 C1 t, U* N5 P8 ]) S
然后去这两个文件夹里找到建模外部库所需要的文件,复制到集算器目录(【安装根目录】\esProc\extlib\YModelCil),比如C:\Program Files\raqsoft\esProc\extlib\YModelCli。2 M. L' A W5 K, F
7 k( z- D7 y' b. X8 q5 {7 Q8 z9 c; ]建模外部库所需的文件有:3 e3 @5 ?- U6 J. Z; f. ?+ e
% k1 r! r) [- f* _% ^ H. M1>易明建模目录的YModelCil中含有以下jar和xml+ c' e: t9 C/ y1 S3 I
( [! s0 `$ ?, j
ant-1.8.2.jar , j+ E9 k6 A% icommons-beanutils.jar $ D4 F! W% V4 [1 h; H6 A* U5 Ucommons-lang-2.6.jar 3 l; w% W, T8 mezmorph-1.0.2.jar- A" |+ d% C, K( f% t
json-lib-1.1-jdk13.jar1 D& }0 \+ @! |; U0 s
raq-ymodel-cli-2.10.jar; |: u5 ] R0 r& S/ l
userconfig.xml ; [+ ?9 V& m% p4 ^6 J* ^ % Z/ e4 m7 k: C v6 D3 f2>易明建模的lib中含有以下jar$ r$ r, J: n( C+ Z
+ |) A4 N$ e, O9 ~ [) r
commons-io-2.4.jar2 g8 f- z, t: o# ^/ @4 k
esproc-ext-20211104.jar - D* B4 q+ I3 w: x* W' s9 E1 Cfastjson-1.2.58.jar8 r$ i6 l7 d7 l# l) ^5 Y2 j
gson-2.8.0.jar v8 y& D3 N$ m7 {: _0 t2 Mjackson-annotations-2.9.6.jar ( X. [2 M/ K. b) \6 p5 R) o3 kjackson-core-2.9.6.jar ) J, q7 n+ S& _$ x7 S2 ]jackson-databind-2.9.6.jar" T7 Q1 r8 p. J# e F( P
jackson-databind-2.9.6-sources.jar- k; i7 u1 i, t& H# I, z+ U, x
jackson-dataformat-msgpack-0.8.14.jar$ k$ A: w9 \1 P3 ~, R1 ^* D: Z
mining.jar: n+ w9 O) n& B1 S# v
msgpack-0.6.12.jar " ?4 `# s/ {& w: v+ nmsgpack-core-0.8.16.jar( ^* l" d( ^, d8 b( o
1 B( O6 l) l" F$ J7 N7 q' T/ s
(b)设置userconfig.xml文件参数/ U, W- w3 g- V
在集算器目录esProc\extlib\YModelCil下的userconfig.xml文件中设置参数" d# _4 r! F% x
~ h' N O* N3 }0 @
名称 参数说明# N6 }* B/ A' u
sAppHome 易明建模的安装目录 - F( N+ R, `2 esPythonHome 易明建模目录的Python路径 Windows: raqsoft\ymodel\Python37 Linux: raqsoft/ymodel/Python37/bin/python3.7 ! G( I4 X' e0 h2 L+ _/ s% S$ u* OiPythonServerPort Python服务网络端口0 k' f( J/ J4 S. q0 _7 P
iPythonProcessNumber Python进程数 6 w8 ~/ Y. p( C' e$ ~9 |9 R4 a! ObAutoDecideImpute 是否智能补缺 ( u q1 t( G4 j# k1 w: JiResampleMultiple 重抽样次数 $ X3 n7 O" O, G7 K其中必须要配置的参数为sAppHome和sPythonHome,其他参数可以采用默认值,有需要再进行修改。比如可以配置参数如下,加粗部分是必须要配置的,根据自己的安装路径。$ B' t! N* Z- Y) H
: S7 g4 q) [- j: b- h8 J6 W; R
<?xml version="1.0" encoding="UTF-8"?>4 G& D, |* \# [" `9 h9 M* ]
<Config Version="1">1 g, G" a" w1 Z7 u
<Options>/ j6 b( V4 T5 l
<Option Name="sAppHome" Value="C:\Program Files\raqsoft\ymodel"/> ( q6 P7 x+ ^: Q3 U$ j- ? <Option Name="sPythonHome" Value="C:\Program Files\raqsoft\ymodel\Python37\python.exe"/>) _, M- M8 Y' e) t, @" v
<Option Name="iPythonServerPort" Value="8510"/>. c4 q; A$ n/ r" x
<Option Name="iPythonProcessNumber" Value="2"/>/ z4 o/ c0 ]% q; U( `" _
<Option Name="bAutoDecideImpute" Value="true"/> & N. L/ A1 s$ | n) D5 N1 Q& J <Option Name="iResampleMultiple" Value="150"/> ; Z; J$ M2 u% h/ i5 n( X! ] </Options>7 `. T; D' w( R- a! C
</Config> - N2 ^9 k% ^. T& L! a7 ^, }13 _! i. n0 X9 w* M
2 K3 N8 l$ d! c6 U3# V+ N3 v" ]4 ?# J* p
4 - F6 L* T# }, p5) l% w! I( j5 `7 g6 I; @
6% N0 x7 ~0 @! l7 n; p( ]+ i
7% ]0 f# m. Y: @" V
8 $ W0 a# {- X, {; [( e7 |0 ?, ]9* w7 Z3 c1 M2 S& o0 w. J
108 n& f; q3 {2 c* @. Z! J0 k( I1 z
117 G2 A+ T, x, d3 f7 \! y3 f6 q
其实,从这里可以看出,易明建模也是基于Python写的,但它将Python算法做了封装后,程序员就不必再理解算法的数学原理和运行细节了。7 p0 d! c* ~* w3 J/ i/ ?1 u