StarSpace is a general purpose neural embedding model that can be applied to a number of machine learning tasks including ranking, classification, information retrieval, similarity learning, and recommendations. It's both highly competitive with existing methods while generalizing well to new use cases.
StarSpace learns to represent objects of different types into a common vectorial embedding space in order to compare them against each other. This makes it well suited for a variety of problems, including:
Learning word, sentence or document level embeddings.
Information retrieval - ranking of sets of entities / documents or objects, e.g., ranking web documents.
Text classification, or any other labeling task.
Metric / similarity learning, e.g., learning sentence or document similarity.
Content-based or Collaborative Filtering-based Recommendation, e.g., recommending music or videos.
Embedding graphs, e.g., multi-relational graphs such as Freebase.
Additional details on StarSpace can be found in the research paper.
Install the Boost library and specify the path of the Boost library in makefile in order to run StarSpace.
$ wget https://dl.bintray.com/boostorg/release/1.63.0/source/boost_1_63_0.zip $ unzip boost_1_63_0.zip $ sudo mv boost_1_63_0 /usr/local/bin
Optional: To run unit tests in src directory, Google Test is required, and its path needs to be specified in 'TEST_INCLUDES' in the makefile.
git clone https://github.com/facebookresearch/Starspace.git cd Starspace make
Review documentation to familiarize yourself with the StarSpace file format, example use cases, parameters, and functions.
Prepare datasets, train, and evaluate models with StarSpace.