Ошибка памяти при подгонке склеарн.KNN в Python - PullRequest
0 голосов
/ 02 ноября 2018

Я устанавливаю модель кНН в Ubuntu, Python и sklearn с 32 ГБ оперативной памяти DDR4.

Я хочу загрузить модель без подгонки модели, поэтому я решил сбросить установленную модель после подгонки.

Входные данные представляют собой большой набор данных, 1M + строки, 1052 столбца. (Большинство столбцов являются фиктивными категориальными переменными в [0,1].)

После установки KNN я получил Memory Error при попытке выбросить модель с маринадом.

from sklearn.neighbors import KNeighborsClassifier
knn = KNeighborsClassifier(n_neighbors = 14)
knn = knn.fit(x,y)

import pickle
pickle.dump(knn, open('KNN.sav', 'wb'))

Из другого поста, решение всегда использовать более высокие спецификации и оперативную память для ее решения. Я думаю, что это не очень хорошее решение в долгосрочной перспективе.

Обновленные вопросы: Любой возможный способ ограничить модель поезда использовать 26/32 ГБ и оставить 6 ГБ для Dumping? или любой другой способ сохранить установленную модель и т. д.

1 Ответ

0 голосов
/ 02 ноября 2018

Возникает вопрос - вам действительно нужен такой огромный набор данных для обучения? Идея состоит в том, что модель, возможно, не нуждается в полном наборе данных. Хороший пример кода от sklearn. Или используйте какой-нибудь облачный экземпляр для работы с таким огромным набором данных.

...