1. A method for extracting at least one attribute and at least one value for a product based on at least one natural language document comprising unlabeled data, the method comprising: labeling, by a computer, at least a portion of the unlabeled data as the at least one attribute for the product via at least one classification algorithm operating upon the at least one natural language document; labeling at least another portion of the unlabeled data as the at least one value for the product via the at least one classification algorithm operating upon the at least one natural language document; for at least two attributes of the at least one attribute, calculating correlation values between each of the at least two attributes; for at least two values of the at least one value, calculating correlation values between each of the at least two values; merging attributes of the at least two attributes having correlation values above a correlation threshold; merging values of the at least two values having correlation values above the correlation threshold; and storing the at least one attribute and the at least one value.