跳转到内容

Table KNIME Rule Engine 步骤

表:KNIME Rule Engine 步骤应用保存在表中的 KNIME Rule Engine 规则列表,规则在步骤运行时读取。第一条与某行匹配的规则决定该行的结果。当规则来自仅在工作流运行时才可知的表时,已迁移的 KNIME 工作流将此步骤用于 Rule Engine (Dictionary)、Rule Engine Variable (Dictionary)、Rule-based Row Filter (Dictionary) 和 Rule-based Row Splitter (Dictionary) 节点,包括 PMML 规则集。

该步骤转换其所读取规则的方式与转换器相同。无法承载的规则(例如使用仅限 Java 的语法或流变量的规则)会导致步骤失败,而不会写入错误的列。

步骤表单包含:表 部分,其中 规则的用途 用于选择规则类型,您在此选择源表、输出表和规则表;输出 部分;用于 PMML 规则集的 规则集评分 部分;以及 列 部分。

  • source 和 target_frame:要读取的表和要写入的表。source_columns 和 target_columns 是读取和写入的列;由 output_column 指定的目标列接收规则的结果。
  • rules_source:其行即为规则的表。rules_column 保存每条规则,outcome_column 保存其结果,设置后,rules_order_column 用于为规则排序。
  • rule_kind:engine(默认)将规则的结果写入 output_column,类型由 output_dtype 决定。filter 和 splitter 写入规则保留的行:include(默认为 true)决定规则结果为 TRUE 时是保留还是丢弃该行,port 为 1 表示保留的行,为 2 表示其余行。variable 写入规则所计算值的单行表,没有源表。
  • outcome_cell:结果列的 KNIME 单元格类型,决定规则中结果的写法。knime_types 给出带时区的日期时间、持续时间和时间段输入列的 KNIME 单元格类型。
  • dollar_references:$column$ 形式的结果指向列而非文本。disallow_long(默认为 true)与 KNIME 中同名的设置一致。
  • PMML 规则集:default_rule 是始终触发的规则,附加在最后。weight_column 和 default_weight(默认为 1.0)设置每条规则用于加权选择的权重,权重最大的规则最先尝试。confidence_column、confidence_cell、confidence_output 和 default_confidence_rule 写入每条规则结果的置信度。