A self learning system and a method for categorizing input data have been disclosed. The system includes a generator that generates an initial training set comprising a plurality of words linked to scores/ratings which are based on the sentiments conveyed by the words. The words and corresponding ratings and sentiments are inter-linked and stored in a repository. A rule based classifier segregates the input data into individual words, and compares the words with the entries in the repository, and subsequently determines a first score corresponding to the input data. The input data is also provided to a machine-learning based classifier that generates a plurality of features corresponding to the input data and subsequently generates a second score corresponding to the input data. The first score and the second score are further aggregated by an ensemble classifier which further generates a classification score which enables the data to be classified into a plurality of predetermined categories.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A computer implemented self-learning system for categorizing input data, said system comprising: a generator configured to generate an initial training set comprising a plurality of words, wherein each of said words are linked to a corresponding sentiment, said generator still further configured to store each of said words and corresponding sentiment, in the form of database entries; a rule based classifier cooperating with said generator, said rule based classifier configured to receive the input data and extract a plurality of words therefrom, said rule based classifier still further configured to compare each of said plurality of words with the database entries and select amongst the plurality of words, the words being semantically similar to the database entries, said rule based classifier still further configured to assign a first score to only those words that exactly match the database entries, said rule based classifier further configured to aggregate the first score assigned to each of said words and generate an aggregated first score, said rule based classifier still further configured to generate a data classification based on at least the words semantically similar to the database entries; a machine-learning based classifier cooperating with said generator, said machine learning based classifier configured to receive and process the input data, said machine learning based classifier further configured to generate a plurality of features corresponding to the input data based on the processing thereof, and generate a second score corresponding to the input data by processing the features thereof; an ensemble classifier configured to combine the aggregated first score and the second score, and generate a classification score; a comparator having access to a predefined threshold value, said comparator configured to compare said first aggregate score with the predefined threshold value and determine whether the first aggregate score is lesser than the predefined threshold value, said comparator still further configured to determine whether the classification score is lesser than the predefined threshold value, only in the event that the first aggregate score is lesser than the predefined threshold value; and a processor cooperating with the comparator, said processor configured to generate a second training set based on only the data classification generated by the rule based classifier only in the event that the first aggregate score is greater than the predefined threshold value, said processor further configured, to generate the second training set based on only the input data processed by the machine-learning, based classifier, in the event that the classification score is greater than the predefined threshold value 2. The system as claimed in claim 1, wherein said rule based classifier further comprises a tokenizer module configured to divide each of the plurality of words into corresponding tokens. 3. The system as claimed in claim 1, wherein said rule based classifier further comprises slang words handling module, said slang words handling module configured to identify the slang words present in the input data to be categorized, said slang words handling module further configured to selectively expand identified slang words thereby rendering the slang words meaningful. 4. The system as claimed in claim 1, wherein said rule based classifier is further configured to assign the first score to each of the words segregated from the input data to be categorized, said rule based classifier further configured to refine the score assigned to each of said words based on the syntactical connectivity between each of said words and a plurality of predetermined negators and intensifiers. 5. The system as claimed claim 1, wherein said machine learning based classifier further comprises a feature extraction module configured to convert the input data into a plurality of n-grams of size selected from the group of sizes consisting of size 1, size 2 and size 3, said feature extraction module further configured to process each of the n-grams as individual features. 6. The system as claimed in claim 5, wherein said feature extraction module is further configured to process the input data, and eliminate repetitive words from the input data, said feature extraction module further configured to process and remove stop words from the input data. 7. The system as claimed in claim 1, wherein the processor is further configured to instruct said machine learning based classifier to selectively adapt the machine learning algorithms stored thereupon, based on the performance of said machine learning algorithms with reference to the second training set. 8. A computer implemented method for categorizing input data, said method comprising the following computer implemented steps: generating, using a generator, an initial training set comprising a plurality of words, wherein each of said words are linked to a corresponding score; storing each of said words and corresponding sentiments, in the form of database entries; extracting a plurality of words from the input data; comparing, using a rule based classifier, each of said plurality of words with the database entries and selecting amongst the plurality of words, the words being semantically similar to the database entries; assigning a first score to only those words that exactly match the database entries, and aggregating the first score assigned to each of said words and generating an aggregated first score; generating a data classification based on at least the words semantically similar to the database entries; receiving and processing the input data using a machine learning based classifier, and generating a plurality of features corresponding to the input data based on the processing thereof; processing the features corresponding to the input data and generating a second score; combining the aggregated first score and the second score using an ensemble classifier, and generating a classification score; comparing said first aggregate score with a predefined threshold value using a comparator and determining whether the first aggregate score is lesser than the predefined threshold value; determining whether the classification score is lesser than the predefined threshold value, only in the event that the first aggregate score is lesser than the predefined threshold value; and generating a second training set based on only the data classification generated by the rule based classifier only in the event that the first aggregate score is greater than the predefined threshold value; and generating the second training set based on only the input data processed by the machine-learning based classifier, in the event that the classification score is greater than the predefined threshold value. 9. The method as claimed in claim 8, wherein the step of extracting a plurality of words from the input data further includes the following steps: dividing, each word of the input data into corresponding tokens; identifying the slang words present in the input data using a slang words handling module, and selectively expanding identified slang words thereby rendering the slang words meaningful; assigning the first score to each of the words segregated from the input data; selectively refining the score assigned to each of said words based on the syntactical connectivity between each of said words and a plurality of negators and intensifiers; and not assigning a score those words of the input data, for which no corresponding semantically similar database entries are present. 10. The method as claimed in claim 8, wherein the step of receiving and processing the input data using a machine learning based classifier further includes the following steps: converting the input data into a plurality of n-grams of size selected from the group of sizes consisting of size 1, size 2 and size 3, and processing, each of the n-grams as individual features; eliminating repetitive words from the input data, and removing stop words from the input data.