Invalid PMML format 4.2 while using PMML Reader.

<?xml version="1.0" encoding="UTF-8"?>
<PMML xmlns="http://www.dmg.org/PMML-4_4" version="4.4.1">
    <Header copyright="Copyright (c) 2018 Software AG" description="Default Description">
        <Application name="Nyoka" version="4.4.0"/>
        <Timestamp>2021-01-04 15:11:22.915306</Timestamp>
    </Header>
    <DataDictionary numberOfFields="12">
        <DataField name="Index" optype="continuous" dataType="double"/>
        <DataField name="MZ" optype="continuous" dataType="double"/>
        <DataField name="Centroid Intensity" optype="continuous" dataType="double"/>
        <DataField name="Base Width" optype="continuous" dataType="double"/>
        <DataField name="Left Base (index)" optype="continuous" dataType="double"/>
        <DataField name="Right Base (index)" optype="continuous" dataType="double"/>
        <DataField name="Prominence" optype="continuous" dataType="double"/>
        <DataField name="Width (half prom)" optype="continuous" dataType="double"/>
        <DataField name="Intensity of half prominence" optype="continuous" dataType="double"/>
        <DataField name="Left HM (index)" optype="continuous" dataType="double"/>
        <DataField name="Right HM (index)" optype="continuous" dataType="double"/>
        <DataField name="Integrated HM intensity" optype="continuous" dataType="double"/>
    </DataDictionary>
    <RegressionModel modelName="LinearRegression" functionName="regression">
        <MiningSchema>
            <MiningField name="Index" usageType="active" optype="continuous"/>
            <MiningField name="MZ" usageType="active" optype="continuous"/>
            <MiningField name="Centroid Intensity" usageType="active" optype="continuous"/>
            <MiningField name="Base Width" usageType="active" optype="continuous"/>
            <MiningField name="Left Base (index)" usageType="active" optype="continuous"/>
            <MiningField name="Right Base (index)" usageType="active" optype="continuous"/>
            <MiningField name="Prominence" usageType="active" optype="continuous"/>
            <MiningField name="Width (half prom)" usageType="active" optype="continuous"/>
            <MiningField name="Intensity of half prominence" usageType="active" optype="continuous"/>
            <MiningField name="Left HM (index)" usageType="active" optype="continuous"/>
            <MiningField name="Right HM (index)" usageType="active" optype="continuous"/>
            <MiningField name="Integrated HM intensity" usageType="target" optype="continuous"/>
        </MiningSchema>
        <Output>
            <OutputField name="predicted_Integrated HM intensity" optype="continuous" dataType="double" feature="predictedValue"/>
        </Output>
        <RegressionTable intercept="-3.0827578121036225">
            <NumericPredictor name="Index" exponent="1" coefficient="-0.6362703114728284"/>
            <NumericPredictor name="MZ" exponent="1" coefficient="-0.0491739376900687"/>
            <NumericPredictor name="Centroid Intensity" exponent="1" coefficient="12.2212622759717231"/>
            <NumericPredictor name="Base Width" exponent="1" coefficient="-2.6443117432417687"/>
            <NumericPredictor name="Left Base (index)" exponent="1" coefficient="0.3706829564599151"/>
            <NumericPredictor name="Right Base (index)" exponent="1" coefficient="-0.3333816566577373"/>
            <NumericPredictor name="Prominence" exponent="1" coefficient="26.8575415734690779"/>
            <NumericPredictor name="Width (half prom)" exponent="1" coefficient="8.3333816973588224"/>
            <NumericPredictor name="Intensity of half prominence" exponent="1" coefficient="-1.2075085107628016"/>
            <NumericPredictor name="Left HM (index)" exponent="1" coefficient="6.0812338725474264"/>
            <NumericPredictor name="Right HM (index)" exponent="1" coefficient="-5.4726722940741430"/>
        </RegressionTable>
    </RegressionModel>
</PMML>

Hi @kamal and welcome to the forum.

Currently KNIME only supports PMML formats through 4.2, and your file appears to be 4.4.

It turns out you can manually edit the second line of your file to 4.2 and KNIME will read it, although that may end up causing some problems downstream, I don’t know.

1 Like

Thank you so much.

I am getting number of warnings

MiningField "Index": Only "asIs" is supported for invalidValueTreatment. invalidValueTreatment="returnInvalid" is treated as "asIs".

Should i add

<MiningField name="Index" usageType="active" optype="continuous" invalidValueTreatment="asIs" />

For all of those <MiningField />

Hi @kamal -

First off, I should say that I’m far from a PMML expert!

Certainly you could try that if you just want to get rid of the warning messages, but it doesn’t sound like that would change how the model is being applied in any case.

EDIT: We have a ticket open for updating the PMML version KNIME supports, and I’ve added a +1 from you on that (AP-8449).

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.