class TextClassifier
Attributes
categories[R]
Public Class Methods
new(args)
click to toggle source
# File lib/NaiveText/TextClassifier.rb, line 3 def initialize(args) @categories = args[:categories] @calculator = args[:calculator] || ProbabilityCalculator.new(categories: @categories) end
Public Instance Methods
classify(text)
click to toggle source
# File lib/NaiveText/TextClassifier.rb, line 8 def classify(text) get_category_for(text) end
probabilities(text)
click to toggle source
# File lib/NaiveText/TextClassifier.rb, line 12 def probabilities(text) @calculator.get_probabilities_for(text) end
Private Instance Methods
get_category_for(text)
click to toggle source
# File lib/NaiveText/TextClassifier.rb, line 18 def get_category_for(text) probabilities = @calculator.get_probabilities_for(text) @categories.each do |category| probabilities.multiply(category: category, factor: category.weight) end probabilities.category_with_max end