Naive Bayes text classifier that runs on top of leveldb. Based on the bayes module.
npm install level-naive-bayes
var bayes = require('level-naive-bayes')
var nb = bayes(db) // where db is a levelup instance
nb.train('positive', 'amazing, awesome movie!! Yeah!! Oh boy.', function() {
nb.train('positive', 'this is incredibly, amazing, perfect, great!', function() {
nb.train('negative', 'terrible, shitty thing. Damn. Sucks!!', function() {
nb.classify('awesome, cool, amazing!! Yay.', function(err, category) {
console.log('category is '+category)
})
})
})
})
Creates a new instance. db
should be a levelup.
Options include:
{
tokenize: function(str) {
return str.split(' ') // pass in custom tokenizer
}
}
Train the classifier with the given text for a category. If the text is already tokenized pass in an array of tokens instead of text
Classify the given text into a category. If the text is already tokenized pass in an array of tokens instead of text
MIT