Methods that I know of
- Bag of words + weighting: tf-idf, bm25
- Topic models: LSA, LDA
- Word/sentence/document embedding
Are there other commonly used methods to represent a document by a vector?
Aside from unsupervised methods like doc2vec, there are couple of supervised methods:
All of them aims to create vector representations for documents, so dot product of vectors would represent semantically similar of documents.
In the topic models category there is also NMF (Non-negative matrix factorization)