1. A computer program product comprising a computer readable storage medium having stored thereon: program instructions programmed to receive a set of natural language text; program instructions programmed to generate a set of first metadata for the set of natural language text, where the first metadata is generated using supervised learning method(s); program instructions programmed to generate a set of second metadata for the set of natural language text, where the second metadata is generated using unsupervised learning method(s); program instructions programmed to train an artificial neural network adapted to generate vector representations for natural language text, where the training is based, at least in part, on the received natural language text, the generated set of first metadata, and the generated set of second metadata; program instructions programmed to generate a set of at least two vector representations for the set of natural language text using the trained artificial neural network, where each vector representation of the set of at least two vector representations pertains to a respective subset of natural language text from the set of natural language text; program instructions programmed to generate a vector representation pertaining to the set of natural language text by adding each of the vector representations in the generated set of at least two vector representations; and program instructions programmed to store the generated vector representation pertaining to the set of natural language text for use by a natural language processing system.