class AdaBoost::WeakClassifier

Attributes

alpha[R]
error[RW]
feature_number[R]
split[R]

Public Class Methods

new(feature_number, split, alpha = 0.0, error = 0.0) click to toggle source
# File lib/adaboost/weak_classifier.rb, line 8
def initialize(feature_number, split, alpha = 0.0, error = 0.0)
  @feature_number = feature_number
  @split = split
  @error = error
  @alpha = alpha
end

Public Instance Methods

classify(sample) click to toggle source
# File lib/adaboost/weak_classifier.rb, line 19
def classify(sample)
  sample[@feature_number] > @split ? 1 : -1
end
classify_with_alpha(sample) click to toggle source
# File lib/adaboost/weak_classifier.rb, line 23
def classify_with_alpha(sample)
  return classify(sample) * @alpha
end
compute_alpha() click to toggle source
# File lib/adaboost/weak_classifier.rb, line 15
def compute_alpha
  @alpha = 0.5 * Math.log((1.0 - @error) / @error)
end
increase_error(amount) click to toggle source
# File lib/adaboost/weak_classifier.rb, line 27
def increase_error(amount)
  @error += amount
end