搞 AI 建模预测都在用 Python,其实入门用 SPL 也不错

慈云数据 7个月前 (05-09) 技术支持 49 0
(2)在SPL中配置外部库
(a)复制外部库所需要的文件

在易明建模的安装目录下找 YModelCil 和 lib 文件夹

然后去这两个文件夹里找到建模外部库所需要的文件,复制到集算器目录(【安装根目录】\esProc\extlib\YModelCil),比如C:\Program Files\raqsoft\esProc\extlib\YModelCli。

建模外部库所需的文件有:

1>易明建模目录的YModelCil中含有以下jar和xml

ant-1.8.2.jar

commons-beanutils.jar

commons-lang-2.6.jar

ezmorph-1.0.2.jar

json-lib-1.1-jdk13.jar

raq-ymodel-cli-2.10.jar

userconfig.xml

2>易明建模的lib中含有以下jar

commons-io-2.4.jar

esproc-ext-20211104.jar

fastjson-1.2.58.jar

gson-2.8.0.jar

jackson-annotations-2.9.6.jar

jackson-core-2.9.6.jar

jackson-databind-2.9.6.jar

jackson-databind-2.9.6-sources.jar

jackson-dataformat-msgpack-0.8.14.jar

mining.jar

msgpack-0.6.12.jar

msgpack-core-0.8.16.jar

(b)设置userconfig.xml文件参数

在集算器目录esProc\extlib\YModelCil下的userconfig.xml文件中设置参数

名称参数说明
sAppHome易明建模的安装目录
sPythonHome易明建模目录的Python路径 Windows: raqsoft\ymodel\Python37 Linux: raqsoft/ymodel/Python37/bin/python3.7
iPythonServerPortPython服务网络端口
iPythonProcessNumberPython进程数
bAutoDecideImpute是否智能补缺
iResampleMultiple重抽样次数

其中必须要配置的参数为sAppHome和sPythonHome,其他参数可以采用默认值,有需要再进行修改。比如可以配置参数如下,加粗部分是必须要配置的,根据自己的安装路径


    
        
		
		
		
  	    
						
    

其实,从这里可以看出,易明建模也是基于Python写的,但它将Python算法做了封装后,程序员就不必再理解算法的数学原理和运行细节了。

(c)SPL环境配置

1>. 配置外部库

打开SPL,在选项菜单里,外部库选择里勾选YModelCli,使其生效。外部库的路径为第(1)步骤中集算器YModelCli的安装路径。

在无图形界面的服务器中去集算器的安装目录下esProc\config\raqsoftConfig.xml文件中进行配置外部库路径和名称。

外部库路径

外部库名称(可多个)

2>. 线程数设置

如果有并发预测,还需要在SPL设置“最大并行数”,也就是线程数。设置多少用户根据需求和机器情况自行设定。

在无图形界面的服务器中去集算器的安装目录下esProc\config\raqsoftConfig.xml文件中进行配置。

最大并行数

到此,环境配置完成。

3. 建模和预测

(1)加载数据

SPL能支持csv,excel或数据库中的数据用于建模,这里以csv为例,其它数据源类似。

设有一个贷款违约数据表如下,需要建模来预测新用户是否会发生违约行为。

文件命名为bank-full.csv;

A
1=file(“bank-full.csv”).import@tc()
2=ym_env()
3=ym_model(A2,A1)

A1 导入建模数据,读成序表

A2 初始化环境,执行A2后会在易明建模的安装目录下生成store目录及子目录用以保存数据及结果文件。

A3 加载建模文件,生成md对象

(2)目标变量设置和变量统计

数据加载进来后要设置目标变量

A
4=ym_target(A3,“y”)
5=ym_statistics(A3,“age”)
6=A1.fname().(ym_statistics(A3,~))

A4 表示将字段“y”设置为目标变量,目标变量可以是二值变量或数值型变量。

A5 查看某个变量的统计指标,比如 “age”,返回值中可以看到缺失率,最大最小值,异常值,数据分布图等参数。

A6 循环变量名查看所有字段的统计信息,返回包含所有字段的统计信息二级序列。

(3)建立模型和模型表现
A
7=ym_build_model(A3)
8=ym_present(A7)
9=ym_performance(A7)
10=ym_importance(A7).sort@z(Importance)

A7 使用建模函数建立模型,执行后在后台会进行全自动化数据预处理和建模过程,此过程会耗费一些时间,时间长短取决于数据量。结果返回pd模型对象。

模型建好后,可以调用pd模型对象查看模型信息、模型质量和重要度。

A8 返回模型AUC值及参数

A9 返回多种模型指标和图形,诸如AUC,ROC, Lift……

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里无偿获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon