Skip to main content

TWSS: A Naive Bayes classifier that can identify double entendres.

Project description

This is an implementation of a simple double entendre classifier in Python.

This currently uses a Naive Bayes classifier (the NLTK implementation) as a Python package. This was inspired by the bvandenvos Ruby TWSS project and uses the same data corpus.

This was built on the eve of Barcamp Mumbai 8 and presented during a session there.

Suggestions welcome. Do file bugs. Fork away. Send us pull requests.

Setup Instructions

$ virtualenv --no-site-packages --distribute venv
$ source venv/bin/activate
$ pip install -r requirements.txt

This creates a virtual environment for this project and install all the packages necessary for the project to work.


Once this is installed, you can take it out for a spin:

>>> from twss import TWSS
>>> twss = TWSS()
>>> twss("That was hard")
>>> twss("Hello world")

The first call can take a while- the module needs to train the classifier against the pre-installed training dataset.

Getting dirty

You can supply your own training data using positive and negative corpus files:

>>> twss = TWSS(positive_corpus_file=open('foo.txt'), negative_corpus_file=open('bar.txt'))

or directly, as a list of tuples:

>>> training_data = [
... ("Sentence 1", True),
... ("Sentence 2", False),
... ]
>>> twss = TWSS(training_data)


  • Making this pip-installable.
  • Writing a sample web app.
  • Writing a sample Twitter client.

Project details

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
twss-0.1.8.tar.gz (169.9 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page