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.6.tar.gz (169.9 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for twss-0.1.6.tar.gz
Algorithm Hash digest
SHA256 df338a576db6bd94ce05da67695c4497e2ee85dbee637f4fa18fc13190ded3c2
MD5 49f5076a95ddb44b3ac707f111d273b5
BLAKE2b-256 eec6f8a34ca4daa2868062e4ab460ffd951947068d124ed04d4b7c4fdbbea0cd

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