Skip to main content

Sentence Topic Prediction using Topic Modeling

Project description

sptm: Sentence Topic Prediction using Topic Modeling

sptm logo


Quick rundown

sptm is a high-level API, written in Python and capable of training Topic Models using Gensim and MALLET. It was developed as a summer internship project under the guidance of @Anupam Mediratta. The package was wriiten with a focus on enabling fast experimentation. Being able to go from idea to result with the least possible delay is key to doing good research.

Use sptm if you need a library that:

  • Allows for easy and fast topic model training
  • Draw Inter-topic Distance Maps
  • Construct Conditional Probability Matrix for topics
  • Predict topic of sentences

Read the documentation at [sptm_source]/docs/_build/html/index.html.

sptm is compatible (tested) with: Python 3.7.

Some good stuff about sptm

  • User friendliness. The source code is very simple to follow

  • Modularity. You can use your own models, training algorithms etc. as long as it is supported by gensim

Getting started: 30 seconds to sptm

In the test folder of the repository, you will find a single script with almost all classes and functions used.


  • Important

sptm makes use of MALLET whose installtion steps can be found here.

This is required only if you want to train the topic model using gensim's LDAMallet wrapper that is the default training algorithm used in sptm.

Then, you can install sptm itself. There are two ways to install sptm:

  • Install sptm from PyPI (recommended):
sudo pip3 install sptm

If you are using a virtualenv, you may want to avoid using sudo:

pip3 install sptm
  • Alternatively: install sptm from the GitHub source:

First, clone sptm using git:

git clone

Then, cd to the sptm folder and run the install command:

cd sptm
sudo python3 install
  • NOTE: You will need to specifically download spacy's en_core_web_sm model.

This step needs to be done irrespective the method of installation.

You can do that by running:

python3 -m spacy download en_core_web_sm


You can post bug reports and feature requests in GitHub issues. Make sure to read the guidelines first.

Why name it sptm?

sptm stands for - Sentence topic Prediction using Topic Modeling

Why is this readme oddly familiar?

This README is a heavily edited version of keras's

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sptm-1.1.1.tar.gz (13.5 kB view hashes)

Uploaded source

Built Distribution

sptm-1.1.1-py3-none-any.whl (14.8 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page