Sha256: 8ed2b82599d42a8f28e122c742eb6670c93d1cb8d37ce8b5f349033f28e3d2b7

Contents?: true

Size: 1.09 KB

Versions: 29

Compression:

Stored size: 1.09 KB

Contents

# frozen_string_literal: true

require 'rumale/validation'
require 'rumale/evaluation_measure/r2_score'

module Rumale
  module Base
    # Module for all regressors in Rumale.
    module Regressor
      include Validation

      # 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

      # Calculate the coefficient of determination for the given testing data.
      #
      # @param x [Numo::DFloat] (shape: [n_samples, n_features]) Testing data.
      # @param y [Numo::DFloat] (shape: [n_samples, n_outputs]) Target values for testing data.
      # @return [Float] Coefficient of determination
      def score(x, y)
        check_sample_array(x)
        check_tvalue_array(y)
        check_sample_tvalue_size(x, y)
        evaluator = Rumale::EvaluationMeasure::R2Score.new
        evaluator.score(y, predict(x))
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
rumale-0.13.8 lib/rumale/base/regressor.rb
rumale-0.13.7 lib/rumale/base/regressor.rb
rumale-0.13.6 lib/rumale/base/regressor.rb
rumale-0.13.5 lib/rumale/base/regressor.rb
rumale-0.13.4 lib/rumale/base/regressor.rb
rumale-0.13.3 lib/rumale/base/regressor.rb
rumale-0.13.2 lib/rumale/base/regressor.rb
rumale-0.13.1 lib/rumale/base/regressor.rb
rumale-0.13.0 lib/rumale/base/regressor.rb
rumale-0.12.9 lib/rumale/base/regressor.rb
rumale-0.12.8 lib/rumale/base/regressor.rb
rumale-0.12.7 lib/rumale/base/regressor.rb
rumale-0.12.6 lib/rumale/base/regressor.rb
rumale-0.12.5 lib/rumale/base/regressor.rb
rumale-0.12.4 lib/rumale/base/regressor.rb
rumale-0.12.3 lib/rumale/base/regressor.rb
rumale-0.12.2 lib/rumale/base/regressor.rb
rumale-0.12.1 lib/rumale/base/regressor.rb
rumale-0.12.0 lib/rumale/base/regressor.rb
rumale-0.11.0 lib/rumale/base/regressor.rb