I see there are ways to combine word vectors to form documents by taking averages or weighted averages. However, as a result of averaging there is a loss of information. Are there ways to retain the word embeddings of a document as is and use it as an input to a classification algorithm?
There are many options. Here are a couple of suggestions:
Learn a weighted average of the vectors based on the classifier task. "Task-Optimized Word Embeddings for Text Classification Representations" by Grupta et al. goes into detail.
Input each word embedding separately into the classifier.
Train a new embedding model that embeds the entire document (e.g., doc2vec).