SPSS Modeler 进行故障诊断

使用此信息来解决您使用 SPSS Modeler时迂到的问题。

运行多个流

避免同时在一个项目下运行多个使用同一用户名的流。 如果必须运行多个流量,请确保不超过内存限制(默认为 8 GiB,)。 如果在同一用户名和项目下同时运行过多流,那么 SPSS Modeler 可能会耗尽内存并返回错误消息,例如 执行已中断

如果收到此错误消息,请完成以下步骤:

  1. 等待一个或多个流运行完成。
  2. 关闭包含成功完成的流运行的任何浏览器选项卡。
  3. 等 15 分钟
  4. 如果在流中使用高速缓存,请清空高速缓存。
  5. 对返回错误的中断流单击 运行

执行已中断

如果 SPSS Modeler 流变为无响应或发出错误消息 (例如 Execution was interrupted) ,那么您可以尝试重新启动会话。 在 SPSS Modeler 流程中,完成以下步骤:

  1. 单击 流信息
  2. 单击 重新启动会话

文件不存在

若您重命名了文件或将文件从项目移动到某个文件夹,在运行流程 SPSS Modeler 时可能会收到此错误信息:

WDP Connector Error: CDICO2015E: The filepath/content.csv file does not exist or you do not have sufficient permissions.

此错误发生是因为流程尚未更新文件的名称或位置。 要修复此错误,您可以重启会话以更新流程 SPSS Modeler

  1. 单击 流信息
  2. 单击 重新启动会话

您也可以重启运行时来解决此问题。

无法将数据导出到 SPSS Statistics .sav 文件

您尝试使用 Data Asset Export 节点将数据导出到 SPSS Statistics .sav 文件,但文件未创建。 您还收到了这条错误信息:

WDP Connector Error: CDICO9999E: Internal error occurred: IO error: Invalid variable name error: Invalid character found in field name 'AGE YOUN'. Field names can only include any letter, any digit or the symbols @, #, ., _, or $ for export.

检查字段名是否包含空格。 .sav 文件格式不支持字段名中的空格。

已迁移流中的未命名字段

默认情况下,桌面 SPSS Modeler 中的未命名数据字段将命名为 field1field2field3、等。 在 SPSS Modelerwatsonx.ai,未命名的数据字段被命名为 COLUMN1COLUMN2COLUMN3、 等等。 若从在 SPSS Modeler 桌面端创建的流文件(.str)中创建流程,且该文件包含此类字段,则输出结果将有所不同。

作为变通方法,您可以向从导入的流创建的流添加如下脚本:
# TO DO: run this script once after importing the stream into CP4D 
import modeler.api
stream = modeler.script.stream()

# map "COLUMN" to "field" for data sources without field names (csv without headers)
source_node = stream.findByID("...") # TO DO: provide ID of existing source node (csv file without headers)
filter_node = stream.findByID("...") # TO DO: provide ID of existing filter node (where field names are provided) 
new_node = stream.create("filter", 'new node') # creates new filter node between source and filter
stream.linkBetween(new_node, source_node, filter_node)

# change field names from "COLUMN1" to "field1" etc. 
for number in range(1,1000): # change max value if necessary
    old_name = 'COLUMN' + str(number)
    new_name = 'field' + str(number)
    new_node.setKeyedPropertyValue("new_name", old_name, new_name)

具有不受支持的 Python 版本的 KDE 节点

如果运行包含旧 KDE 节点的流,那么可能会收到错误。 该错误指出模型使用不再受支持的 Python 包。 在这种情况下,请除去旧的 KDE 节点并添加新的 KDE 节点。

处理无行分隔符的方式的差异

如果数据记录中某行没有分隔符,则该行在 watsonx.ai. 中被丢弃。

"预测变量重要性" 的值在 SPSS Modeler 流和 SPSS Modeler 桌面流之间可能有所不同

为避免不同平台上出现不一致的结果,采用了一种新的随机抽样方法来计算预测变量的重要性 SPSS Modelerwatsonx.ai 这会导致新的预测重要性结果与 SPSS Modeler 桌面端原始预测重要性结果出现差异,前提是数据分布不均匀。 当记录数超过 200 时,将触发随机采样。 SPSS Modeler 桌面将在未来版本中升级,以匹配在 SPSS Modeler 上的结果 watsonx.ai

很难看出从文本分析生成的模型之间的差异

在文本分析工作台中,每次单击 生成新模型,都会在流程中创建一个新的模型块。 如果生成多个模型,它们都具有相同的名称,因此很难区分它们。 一种建议是使用注释来帮助识别(双击模型块以打开其属性,然后转至注释)。

发生内部错误: SCAPI 错误: 行 1,029 上的值不是有效字符串

例如,当 SPSS ModelerData Asset 节点中读取数据集时,会出现以下错误:

Internal error occurred: SCAPI error: The value on row 1,029 is not a valid string of the Bit data type for the SecurityDelay column.

此行为是预期行为。 对于大多数平面文件, SPSS Modeler 读取前1000条记录以推断数据类型。 在此情况下,前1000行均为0或1,因此 SPSS Modeler 推断该列包含二进制值(0或1)。 第 1,029 行的值为 3。 当 SPSS Modeler 读取第1029行中的数值3时,会引发错误,因为3并非二进制值。

建议的变通方法:

  • 调整 推断记录计数 参数以包含更多数据,改为选择 2000 行 (或更多)。
  • 如果此问题来自数据中的错误,请更新导致错误的前 1000 行中的任何值。