This topic contains 2 replies, has 1 voice, and was last updated by William Tarver 1 year, 1 month ago.
March 23, 2017 at 7:11 am #27408
I am trying to run an PMML SVM model, for that i created and uploaded following files in kamanja which got registered with successful status :
1. Cluster config file
2. Input message schema json
3. Output message schema json
4. Model config json
6. Adapter binding json
All the above files got registered successfully, I have created kafka topic for input message as well.
On sending data i am not getting any output at output topic also m not getting any exception over kamanja.
Please help me with this, am i missing any step here?
March 23, 2017 at 7:20 am #27409
One more question, like in case of java model i have in seen in helloworld example, we get instance of output message and populate its field in java code. But what if my model in pmml (xml file) how will it populate the output message?
March 23, 2017 at 8:59 am #27410
Can you paste the command you used to add your model? In the case of pmml models, if you wish to create your own output message definition, you need to include OUTMESSAGE namespace.messagename in the command. Otherwise the output message will be automatically generated based on the MiningSchema in your pmml. If you run “kamanja get all messages, it will display a list of active messages in metadata, which should include the name of the automatically generated output message (which should appear as modelNamespace.out_modelName.modelVersion or something of that nature). If you didn’t provide the output message when adding the pmml file, then your adapter message bindings are likely incorrect and the output is not being sent anywhere once it is produced. To determine if output is actually being produced, use the kafka-console-consumer.sh script as such:
kafka-console-consumer.sh –zookeeper localhost:2181 –topic testmessageevents_1 –from-beginning
This contains a JSON string tracking the status of each message that has been processed by Kamanja including whether a result was produced or not and the ID of the message that was produced.
If your model is a pmml file, if your message was generated automatically, the output message will match your MiningSchema. If you created the message definition by hand, you’ll need to ensure the fields in your output message match the fields in the miningschema. When the output message is generated by the model, the contents of the mining schema will be matched field for field with the output message. If a field is empty or doesn’t exist, it simply won’t be populated.