Patent ID: 8504606

Claim:
A method for performing a learning process in an application for a mobile phone device comprising: creating, by a server, an instance set that includes one or more entries from a database of entries stored in a memory of said server; wherein said entries comprise a plurality of attributes with corresponding attribute values, and the one or more entries included in the instance set include a value for a target field; randomly selecting one or more entries from the instance set by the server, wherein the number of entries chosen is less than number of entries in the instance set; generating, by the server, one or more rules of variable length by randomly selecting attribute values corresponding to one or more field attributes of the randomly selected one or more entries; wherein said rules are constructed using at least one field attribute as a logical antecedent and at least one additional field attribute as a logical consequent; storing the generated rules in a rule set; retrieving the rule set by the mobile phone device; receiving at least one additional entry by the mobile phone device; registering one or more votes to predict an unknown field attribute value for said at least one additional received entry, the registering being performed in a weighted manner based at least in part on a weight and predicted target field values associated with a logical consequent of at least one of the one or more selected rules from said rule set whose logical antecedent has been determined to have been met, the logical meeting of the antecedent having been determined based at least in part on one or more field attributes values of the at least one additional received entry by said mobile phone; determining whether the predicted target field value, for which one or more votes are registered, correctly predicted the field attribute value of the received entry by said mobile phone; and adjusting the associated weight of the rule, incrementing the weight if the predicted target field value for which the one or more votes are registered correctly predicted the field attribute value of the received entry, and decrementing the weight if the predicted target field value for which the one or more votes are registered incorrectly predicted the field attribute value of the received entry by said mobile phone.