При обучении логистической регрессией ошибка декодирования: откуда?

Пытаюсь построить модель классификации цифр датасета mnist. Ловлю ошибку на этапе обучения модели LogisticRegression:

AttributeError: 'str' object has no attribute 'decode'

С чем это может быть связано?

%matplotlib inline
import numpy as np
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
import matplotlib.pyplot as plt


train = np.loadtxt('/kaggle/input/digit-recognizer/train.csv', delimiter=',', skiprows=1)
test = np.loadtxt('/kaggle/input/digit-recognizer/test.csv', delimiter=',', skiprows=1)

train_label = train[:, 0]  # В нулевом столбце представлены конкретные цифры

scaler = StandardScaler()
train_img = scaler.fit_transform(train[:, 1:])
test_img = scaler.fit_transform(test[:, 1:])

from sklearn.decomposition import PCA
pca = PCA(.95)
pca.fit(train_img)
pca.fit(test_img)

logisticRegr = LogisticRegression(solver = 'lbfgs')
logisticRegr.fit(train_img, train_label)

Ответы (1 шт):

Автор решения: sem4ik

Этот баг - прикол lbfgs. Возможно, в новых версиях это уже исправили, но всё-таки попробуйте прописать в терминале

pip install scikit-learn  -U

Это обновит scikit-learn, если существует такая необходимость. Также стоит поменять решатель, если вам это не принципиально. На acc это сильно не скажется, но вот проблему решит.

logisticRegr = LogisticRegression(solver = 'liblinear')
→ Ссылка