Я только начал свою поездку в Pyspark, создав модель логистической регрессии, которая предсказывает тип устройства пользователя (планшет, телефон, телевизор, планшет и компьютер).
У меня есть 4 функции:
- total_minutes
- vendor_version (iOs, Web, Android и т. Д.)
- day_of_week
- time_of_day
Точность
Алгоритм работает, и у меня хорошая точность ~ 83%, и когда я делаю окончательную проверку, чтобы увидеть прогнозируемый целевой ярлык (device_type), я вижу, что мне не хватает одного класса (pad).
Прототип
Сначала я создаю прототип с небольшими данными, и подумал, что, возможно, потребуется больше данных.Поэтому я собрал больше данных (1 миллион строк) и запустил модель Log Reg.
Когда дело доходит до проверки метки целевого класса прогноза, мне все еще не хватает одного класса (pad).Кто-нибудь сталкивался с такой же проблемой?
Гипотеза
Сначала моя гипотеза состоит в том, что метка класса 'pad' такая маленькая (3312 строк в полных данныхне разделять на обучать и тестировать, а только 150 000 строк данных и выше для других меток целевого класса), которые Log Reg даже не удосужился предсказать.
Вопрос
Может ли это быть так?Или есть другая вещь, которую я должен проверить?
Мой коллега выполнил тот же алгоритм, но в Scala, но в своей предсказанной таблице есть все метки целевого класса.Поэтому я не уверен, в чем здесь проблема.
Дайте мне знать, если вам нужна дополнительная информация.
Вот пример того, как выглядят данные:
device_id vendor_version total_minutes dow hour device_type
1 TV 100 5 22 tv
2 Web 20 6 10 desktop
3 iOs 4 3 9 phone
4 Android 12030 7 15 pad
5 Chromecast 2300 2 12 tablet
6 Playstation 587 1 3 tv
Бест,
Суги