class Rlid::ModelDistanceGuesser

Public Class Methods

new(model_class) click to toggle source
# File lib/rlid/language_guesser/model_distance_guesser.rb, line 6
def initialize(model_class)
  @model_class = model_class
  print "Loading models.. "
  @language_models = model_class.language_models
  @name = "Model Distance"
  puts "Done!"
end

Public Instance Methods

guess_language(string) click to toggle source
# File lib/rlid/language_guesser/model_distance_guesser.rb, line 14
def guess_language(string)
  model = @model_class.new(string)
  min_language = min_distance = nil
  @language_models.each do |lang, lang_model|
    dist = lang_model - model
    if min_distance == nil or dist < min_distance
      min_distance = dist
      min_language = lang
    end
  end
  min_language
end