1. A method of cleaning an electronic document, the method comprising: identifying at least one sentence in the electronic document; numerically representing features of the sentence to obtain a numeric feature representation associated with the sentence; inputting the numeric feature representation into a machine learning classifier, the machine learning classifier being configured to determine, based on each numeric feature representation, whether the sentence associated with that numeric feature representation is a bad sentence; and removing sentences determined to be bad sentences from the electronic document to create a cleaned document, wherein numerically representing features of the sentence to obtain a numeric feature representation associated with the sentence comprises: creating a part of speech feature vector representation by performing part of speech tagging on each word in the sentence and determining a unique number associated with each part-of-speech corresponding to each word in the sentence, each position in the part of speech feature vector representation indicating a frequency of occurrence of a part of speech tag; creating a rule vector feature representation by determining whether the sentence satisfies a plurality of predetermined rules, each position in the rule vector feature representation indicating whether the sentence satisfies a particular one of the plurality of predetermined rules; and obtaining the numeric feature representation by concatenating the part of speech feature vector representation and the rule vector feature representation.