【历史文档】高阶技巧-通过自定义Python模块使用固化的模型去做预测
由qxiao创建,最终由small_q 被浏览 453 用户
更新
本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明
新版量化开发IDE(AIStudio):
https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW
新版模版策略:
https://bigquant.com/wiki/doc/demos-ecdRvuM1TU
新版数据平台:
https://bigquant.com/data/home
https://bigquant.com/wiki/doc/dai-PLSbc1SbZX
新版表达式算子:
https://bigquant.com/wiki/doc/dai-sql-Rceb2JQBdS
新版因子平台:
https://bigquant.com/wiki/doc/bigalpha-EOVmVtJMS5
导语
当用户训练出具有一定意义的深度学习模型的时候,把训练得到的模型固化到本地可以方便以后的调用,关于如何固化深度学习模型,请移步这里。一般来说,固化深度学习模型是为了节省下一次训练重跑的时间,除此之外,被固化的模型还具有更复杂的使用方法。
本篇文章主要目的是为了讲述如何在一个自定义Python模块去调取被固化的深度学习模型,并且使用这些模型去做预测。需要注意的是,调取模型和做预测这两个流程都将在自定义Python中实现,不需要再新建其他的模块。
操作步骤
这里用一个简单的StockRanker多因子选股策略作为例子,来讲一讲具体怎么调取需要的模型,并且使用这些模型去做新的预测。我们举这个例子只是为了说明这个方法是如何使用的,各位学员掌握了方法之后还可以举一反三,去思考其更多的使用方法。假定我们的固化模型为 'model_stockranker1', 'model_stockranker2', 'model_stockranker3', 'model_stockranker4' 这四个模型。
第一步,从左侧工具栏拖出自定义Python模块到画布中,点击此模块打开属性栏,打开属性栏中的主函数。可以看到,默认的主函数里面的代码如下:
第二步,修改主函数里面的代码,修改之后如下:
详细的代码标注已经放在图片里面。我们可以看到,修改后的代码逻辑大概为,依次导入固化模型,然后调用预测函数,把固化模型和需要预测的数据集放到预测函数里面,算出预测值为score,最后把所有score放入一个列表里面,并返回该列表作为主函数的最终输出值。
注意事项
需要注意的是,我们这里新建的自定义Python模块是为了做预测的,因此必须导入用来预测的数据集。我们可以看到在上述例子中,第12行代码就是用来导入要预测的数据集的:
data=input_1, # 导入input_1作为要预测的数据集使用
画布中如下显示:
可以看到,我们的m4自定义Python模块和上面的m14缺失数据处理模块连接起来,用来导入数据。
https://bigquant.com/experimentshare/ee434b208ba541a5b502405866300f50
\