У меня есть набор из целочисленных данных размером 40 миллионов x 22 для задачи классификации. Большинство функций представляют собой категориальные данные, которые используют разные целочисленные значения для представления различных категорий. Например, в столбце «Цвет»: 0 означает синий, 1 означает красный и т. Д. Я предварительно обработал данные с помощью LabelEncoder.Преобразование категориальных данных в Scikit-Learn
- Имеет ли смысл вместить эти данные в любую классификационную модель в SK-learn? Я попытался поместить данные в модель Random Forest, но получил очень плохую точность. Я также попробовал One Hot Encoding, чтобы преобразовать данные в фиктивные переменные, но мой компьютер может использовать только разреженную матрицу после использования One Hot Encoding, проблема в том, что Random Forest может использовать только плотную матрицу, которая будет превышать память моего компьютера.
- Какова правильная стратегия борьбы с категориальными данными в SK-learn?
Я бы сократил размер ваших данных для обучения и выяснил, какие функции наиболее полезны, прежде чем пытаться обработать 40 миллионов строк данных. RandomForest имеет атрибут 'feature_importances_', который расскажет вам, что он считает наиболее полезными функциями: http://scikit-learn.org/stable/modules/ensemble.html#feature-importance-evaluation – EdChum
Спасибо за помощь! Я не знал, что у Склеарна есть это. –