我正在尝试将我用python编写的SVM分类器模型打包为PMML,以便在Flink项目中使用。
参考:https://github.com/aedenj/flink-machine-learning-fish-market-example/blob/main/model/model.ipynb
该模型运行良好,并返回预期结果,如下所示(不确定是否有重复输出,但这不是这里的问题)。
当我尝试将其打包为PMML文件时,出现“请求的数组大小超出VM限制”错误。
谁能告诉我这里发生了什么事?
另外,我想知道这是否与未设置活动字段有关。训练数据是一个One-hot编码的矢量表示。
1条答案
按热度按时间nxowjjhe1#
sklearn2pmml.sklearn2pmml
实用函数通过Python的subprocess.Popen
调用Java可执行文件。如果默认的Java启动配置在内存方面太“小”,那么你可以通过指定-Xms
和/或-Xmx
Java可执行文件选项来增加它的大小。有两种方法:
JAVA_OPTS
环境变量中。sklearn2pmml.sklearn2pmml
实用函数支持java_home
和java_opts
参数。样品使用:
无论如何,在当前情况下,请将此
OutOfMemoryError
作为您拟合的模型对象出现问题的警告信号。在模型外部执行OHE,然后尝试将0.5M输入特征值馈送到(PMML-)模型是没有意义的。