lib/svmkit/linear_model/logistic_regression.rb in svmkit-0.2.8 vs lib/svmkit/linear_model/logistic_regression.rb in svmkit-0.2.9
- old
+ new
@@ -52,11 +52,12 @@
max_iter: 100, batch_size: 50, normalize: true, random_seed: nil)
SVMKit::Validation.check_params_float(reg_param: reg_param, bias_scale: bias_scale)
SVMKit::Validation.check_params_integer(max_iter: max_iter, batch_size: batch_size)
SVMKit::Validation.check_params_boolean(fit_bias: fit_bias, normalize: normalize)
SVMKit::Validation.check_params_type_or_nil(Integer, random_seed: random_seed)
-
+ SVMKit::Validation.check_params_positive(reg_param: reg_param, bias_scale: bias_scale, max_iter: max_iter,
+ batch_size: batch_size)
@params = {}
@params[:reg_param] = reg_param
@params[:fit_bias] = fit_bias
@params[:bias_scale] = bias_scale
@params[:max_iter] = max_iter
@@ -76,9 +77,10 @@
# @param y [Numo::Int32] (shape: [n_samples]) The labels to be used for fitting the model.
# @return [LogisticRegression] The learned classifier itself.
def fit(x, y)
SVMKit::Validation.check_sample_array(x)
SVMKit::Validation.check_label_array(y)
+ SVMKit::Validation.check_sample_label_size(x, y)
@classes = Numo::Int32[*y.to_a.uniq.sort]
n_classes = @classes.size
_n_samples, n_features = x.shape