У меня есть проблема классификации, когда у меня есть значения пикселей изображения 8x8 и число, которое представляет изображение, и моя задача состоит в том, чтобы предсказать число (атрибут «Number») на основе значений пикселей, используя RandomForestClassifier. Значения числовых значений могут быть 0-9.
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import roc_auc_score
forest_model = RandomForestClassifier(n_estimators=100, random_state=42)
forest_model.fit(train_df[input_var], train_df[target])
test_df['forest_pred'] = forest_model.predict_proba(test_df[input_var])[:,1]
roc_auc_score(test_df['Number'], test_df['forest_pred'], average = 'macro', multi_class="ovr")
Здесь выдается ошибка AxisError.
Traceback (most recent call last):
File "dap_hazi_4.py", line 44, in
roc_auc_score(test_df['Number'], test_df['forest_pred'], average = 'macro', multi_class="ovo")
File "/home/balint/.local/lib/python3.6/site-packages/sklearn/metrics/_ranking.py", line 383, in roc_auc_score
multi_class, average, sample_weight)
File "/home/balint/.local/lib/python3.6/site-packages/sklearn/metrics/_ranking.py", line 440, in _multiclass_roc_auc_score
if not np.allclose(1, y_score.sum(axis=1)):
File "/home/balint/.local/lib/python3.6/site-packages/numpy/core/_methods.py", line 38, in _sum
return umr_sum(a, axis, dtype, out, keepdims, initial, where)
AxisError: axis 1 is out of bounds for array of dimension 1