Sha256: 113fa0117ba87b377913b5b4c1079483890932c7d2f41ebfc3f9715e81abc398
Contents?: true
Size: 1.01 KB
Versions: 1
Compression:
Stored size: 1.01 KB
Contents
# frozen_string_literal: true module SVMKit module Base # Module for all classifiers in SVMKit. module Classifier # An abstract method for fitting a model. def fit raise NotImplementedError, "#{__method__} has to be implemented in #{self.class}." end # An abstract method for predicting labels. def predict raise NotImplementedError, "#{__method__} has to be implemented in #{self.class}." end # Claculate the mean accuracy of the given testing data. # # @param x [Numo::DFloat] (shape: [n_samples, n_features]) Testing data. # @param y [Numo::Int32] (shape: [n_samples]) True labels for testing data. # @return [Float] Mean accuracy def score(x, y) SVMKit::Validation.check_sample_array(x) SVMKit::Validation.check_label_array(y) SVMKit::Validation.check_sample_label_size(x, y) evaluator = SVMKit::EvaluationMeasure::Accuracy.new evaluator.score(y, predict(x)) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
svmkit-0.2.9 | lib/svmkit/base/classifier.rb |