【发布时间】:2018-11-22 11:47:44
【问题描述】:
我刚刚开始了我的 Pyspark 之旅,构建了一个逻辑回归模型来预测用户设备类型(平板电脑、手机、电视、平板电脑和台式机)。
我有 4 个特点:
- total_minutes
- vendor_version(iOS、Web、Android 等)
- day_of_week
- time_of_day
准确度
该算法正在运行,我的准确率很高~ 83%,当我进行最终检查以查看我的预测目标标签 (device_type) 时,我可以看到我缺少一个类 (pad)。
原型
起初,我使用少量数据进行原型设计,并认为它可能需要更多数据。所以我抓取了更多数据(100 万行)并运行了 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
最好的,
杉
【问题讨论】:
-
缺少一个类是什么意思?你能edit你的问题并显示一些代码+输出来显示你缺少一个类吗?此外,概述(简要)您如何将 LR 设置为多标签预测器。
标签: python apache-spark pyspark apache-spark-mllib logistic-regression