Sitelet https://github.com/reddavis/Naive-Bayes
Skip to content

Latest commit

 

History

26 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is an extremely simple, straight forward Naive Bayes implementation.

gem sources -a -http://gemcutter.org
sudo gem install naive_bayes
require 'rubygems'
require 'naive_bayes'

a = NaiveBayes.new(:spam, :ham)

a.train(:spam, 'bad', 'word')
a.train(:ham, 'good', 'word')

b = "this is a bad sentence".split(' ')

a.classify(*b)
  #=> [:spam, 0.03125]

You can also tell your classifier to save itself, so its easy for you to pick up where you left off:

require 'rubygems'
require 'naive_bayes'

a = NaiveBayes.new(:spam, :ham)
a.db_filepath = 'path/to/anywhere.nb'

a.train(:spam, 'bad', 'word')
a.train(:ham, 'good', 'word')

a.save

Some time goes past and we want to classify a new document we just received…

require 'rubygems'
require 'naive_bayes'

a = NaiveBayes.load('path/to/file') 

b = "this is a bad sentence".split(' ')

# It's as if we were never apart
a.classify(*b)
  #=> [:spam, 0.03125]

Copyright © 2009 Red Davis. See LICENSE for details.

About

Simple Naive Bayes classifier

Resources

Stars

49 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages