I have a set of predefined categories(like: cars, girls, etc.) and a set short texts and I need to assign one or several categories to each text. What is the best way to do this? I don't have trainings texts to make supervised learning classification. Is Word2Vec the best choice or there is better approach?
If you don't have labeled data, Word2vec can be one solution.
Perhaps have a look at FastText unsupervised (recently released by Facebook) which is similar but uses character n-grams. Character n-grams helps to take into account the morphology, is more robust to typos and make it possible to compute vectors for unknown words.