Nominal Valued Attribute Problem

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Nominal Valued Attribute Problem

Desai Ankit
Dear Weka People, 

I have a model trained on 5 attributes. Out of them 2 numeric and 3 nominal. 

Attrib 1. numeric
Attrib 2. numeric
Attrib 3. nominal {true, false}
Attrib 4. nominal {val1, val2, val3}
Attrib 5. nominal {a,b,c,d}

Problem is, during training the algorithm (SMOReg) had seen only above range of nominal values, but in prediction, it might encounter out of the list value. 

eg. for Attrib 4 the prediction might encounter val 4. or for attrib 5 the prediction might encounter e. 

Currently it is not able to predict value for the scenario stated. 

How to handle such case? (simply setting it to missing value, is it the only solution?) it leads to high root mean squire error. 

Any help on this is appreciated. please.   

--
Ankit Desai

_______________________________________________
Wekalist mailing list
Send posts to: [hidden email]
List info and subscription status: https://list.waikato.ac.nz/mailman/listinfo/wekalist
List etiquette: http://www.cs.waikato.ac.nz/~ml/weka/mailinglist_etiquette.html
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Nominal Valued Attribute Problem

Mark Hall
There is not much that can be done about attribute values that do not appear in the training data I'm afraid. Setting those to missing value will allow the test instance to be processed. For algorithms that don't employ a missing value handling strategy, Weka uses the ReplaceMissingValues filter to substitute the mean/mode of the attribute in question for the missing value.

Cheers,
Mark.

On 11/01/17, 9:47 PM, "Desai Ankit" <[hidden email] on behalf of [hidden email]> wrote:

    Dear Weka People,
    I have a model trained on 5 attributes. Out of them 2 numeric and 3 nominal.
   
    Attrib 1. numeric
    Attrib 2. numeric
    Attrib 3. nominal {true, false}
    Attrib 4. nominal {val1, val2, val3}
    Attrib 5. nominal {a,b,c,d}
   
    Problem is, during training the algorithm (SMOReg) had seen only above range of nominal values, but in prediction, it might encounter out of the list value.
   
    eg. for Attrib 4 the prediction might encounter val 4. or for attrib 5 the prediction might encounter e.
   
    Currently it is not able to predict value for the scenario stated.
   
    How to handle such case? (simply setting it to missing value, is it the only solution?) it leads to high root mean squire error.
   
    Any help on this is appreciated. please.  
   
    --
    Ankit Desai
   
   
   
   
   
    _______________________________________________
    Wekalist mailing list
    Send posts to: [hidden email]
    List info and subscription status: https://list.waikato.ac.nz/mailman/listinfo/wekalist
    List etiquette: http://www.cs.waikato.ac.nz/~ml/weka/mailinglist_etiquette.html
   


_______________________________________________
Wekalist mailing list
Send posts to: [hidden email]
List info and subscription status: https://list.waikato.ac.nz/mailman/listinfo/wekalist
List etiquette: http://www.cs.waikato.ac.nz/~ml/weka/mailinglist_etiquette.html
Loading...