Использование разреженной матрицы в нейронных сетях - PullRequest
0 голосов
/ 30 апреля 2020

Я начал делать проект под названием Talking Data User Demographics. В этом проекте мне нужно найти пол и возрастную группу человека, чьи данные мне предоставлены. В предоставленном мне наборе данных я мог найти только модель телефона и марку телефона для почти 70% данных, а у оставшихся 30% есть события, метки событий, местоположение, многие другие функции, включая модель и бренд. Итак, я подумал о создании модели отдельно для устройств с событиями и устройств без evnts. В качестве части поиска правильной модели я использовал различные алгоритмы. Когда я попробовал нейронные сети, у меня было меньше потерь в журнале для устройств без событий, поэтому я подумал о том, чтобы попробовать то же самое для устройств с событиями, но он выдает ошибку «разреженные матрицы не поддерживаются». Но если это так, это нормально работает, когда у меня есть модель для устройств без событий. Ниже я приложил фрагмент кода в качестве доказательства того, что я сказал. Пожалуйста, помогите мне понять это. Буду признателен за любые предложения.

В прилагаемом файле содержится код, который отлично выполняет код, даже когда используются разреженные матрицы. в model.fit (). 1-е изображение

Теперь в прикрепленном ниже файле выдает ошибку при передаче разреженной матрицы в model.fit () второе изображение

Пожалуйста, наберите весь код для лучшей справки. фрагмент кода

3

1 Ответ

0 голосов
/ 01 мая 2020

Просто предложение: не используйте разреженную матрицу в нейронной сети как таковую, так как это даст плохие результаты. Просто преобразуйте свою разреженную матрицу с помощью PCA перед запуском NN. Например, у вас PCA в scikit-learn с опцией отбеливания, которая может быть полезна также для градиентного спуска

В вашем примере вы хотите сравнить две модели с двумя разными наборами данных. Две разные модели и два разных набора данных могут давать совершенно разные результаты. Нет смысла их сравнивать.

...