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.

Demo

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

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

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)

Roadmap

  • 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.

Source Distribution

twss-0.1.7.tar.gz (169.9 kB view details)

Uploaded Source

File details

Details for the file twss-0.1.7.tar.gz.

File metadata

  • Download URL: twss-0.1.7.tar.gz
  • Upload date:
  • Size: 169.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for twss-0.1.7.tar.gz
Algorithm Hash digest
SHA256 3bd6b2f7d19c8af9ba7d0577700babe8a97a346642656ab59596e4bfb642906d
MD5 c3b04c3f0ef63ec914441ecfe26978be
BLAKE2b-256 30d1307ab4ebbc538531b2f70a7e17f2e5c4c2e355a17bdd2ee0a097a33f2ce8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page