From 174c15bb807a578a0e36ae999e4b6a5374e2830e Mon Sep 17 00:00:00 2001 From: Hyunsu Cho Date: Thu, 17 Dec 2020 17:26:37 -0800 Subject: [PATCH] Remove cupy.array_equal --- python-package/xgboost/sklearn.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/python-package/xgboost/sklearn.py b/python-package/xgboost/sklearn.py index e1cde586543a..6f84f7a4a6f0 100644 --- a/python-package/xgboost/sklearn.py +++ b/python-package/xgboost/sklearn.py @@ -852,14 +852,18 @@ def fit(self, X, y, *, sample_weight=None, base_margin=None, self.classes_ = cp.unique(y.values) self.n_classes_ = len(self.classes_) can_use_label_encoder = False - if not cp.array_equal(self.classes_, cp.arange(self.n_classes_)): + expected_classes = cp.arange(self.n_classes_) + if (self.classes_.shape != expected_classes.shape or + not (self.classes_ == expected_classes).all()): raise ValueError(label_encoding_check_error) elif _is_cupy_array(y): import cupy as cp # pylint: disable=E0401 self.classes_ = cp.unique(y) self.n_classes_ = len(self.classes_) can_use_label_encoder = False - if not cp.array_equal(self.classes_, cp.arange(self.n_classes_)): + expected_classes = cp.arange(self.n_classes_) + if (self.classes_.shape != expected_classes.shape or + not (self.classes_ == expected_classes).all()): raise ValueError(label_encoding_check_error) else: self.classes_ = np.unique(y)