预测汽车数量

数据挖掘 机器学习 回归 线性回归 机器学习模型
2022-03-01 22:13:23

我正在从交通数据集中预测汽车的数量。

这是我的数据字典:

'Traffic-Major-Roads(kilometres)' 文件包含以下变量(变量名称以粗体显示):

  • 年份 - 显示从 2000 年起每年的交通量。
  • CP(计数点)——将 AADF 连接到道路网络的道路连接的唯一参考。
  • ONS GOR 名称 – CP 所在的前政府办公区。
  • ONS LA Name – CP 所在的地方当局。
  • 道路 - 这是道路名称(例如 M25 或 A3)。
  • RCat – 道路类型的分类(完整列表参见数据定义)。
  • S Ref E – CP 位置的东坐标。
  • S Ref N – CP 位置的东坐标。
  • A-Junction - 链接起始路口的道路名称
  • B-Junction - 链接末端交叉点的道路名称
  • LenNet – 该 CP 的网络道路链路的总长度(以公里为单位)。
  • PC – 踏板循环的交通量(以千公里为单位)。
  • 2WMV – 两轮机动车辆的交通量(以千公里计)。
  • 汽车 - 汽车和出租车的交通量(以千公里为单位)。
  • 公共汽车——公共汽车和长途汽车的交通量(以千公里为单位)
  • LGV – LGV 的交通量(以千公里为单位)。
  • HGVR2 – 两刚性轴 HGV 的交通量(以千公里为单位)。
  • HGVR3 – 三刚性轴 HGV 的交通量(以千公里为单位)。
  • HGVR4 – 四个或更多刚性轴 HGV 的交通量(以千公里为单位)。
  • HGVA3 – 三或四铰接轴 HGV 的交通量(以千公里为单位)。
  • HGVA5——五铰接轴 HGV 的交通量(以千公里为单位)。
  • HGVA6 – 六铰接轴 HGV 的交通量(以千公里为单位)。
  • HGV – 所有 HGV 的交通量(以千公里为单位)。
  • AMV——所有机动车的交通量(以千公里为单位)。

我需要预测变量 AMV。

所以,我有 one-hot 编码的道路,并在我的功能中保留了日期、时间。但是,道路的数量非常大。我的功能太多了。

你能建议我应该如何进行吗?

3个回答

我的功能太多了。

不,你没有:)。

首先,很可能并非所有这些对您想要做出的预测都很重要。

我强烈建议使用CART随机森林对感兴趣的变量进行回归。如果您选择使用包中的RF 算法python 中进行,它实际上需要最少的编码sklearn

它的一大优点是使用和理解起来很简单,此外,它还为您提供了feature_importances_训练后所有输入的学习信息,以便您可以排除最不重要的输入并加快未来的推理/训练。

-编辑-

要了解分类决策树和回归决策树之间的区别,请查看这个有用的链接

回归的决策树实现通常是C4.5C5.0CART算法。使用的sklearnCART,请查看此链接中的第1.10.6节。

如何使用sklearn决策树进行回归的一个很好的例子就是这个

据我了解,您的问题是关于功能选择的。如果是这种情况,您可以尝试套索回归,这是一种缩小预测变量系数的正则化技术,从而有助于特征选择。希望有帮助。

即使我同意功能的数量更少。

我认为您应该遵循以下路线图来完成您的任务:-

  1. 分析数据并找出缺失值的列
  2. 尝试填充缺失值(如果可能),或者您也可以根据其中的空值删除列。
  3. 对于所有数据不是数值形式的列数据,使用one-hot编码方式将数据转化为数值形式。
  4. 现在您的数据已准备好接受训练。同时,您还可以查看是要删除任何功能还是要创建新功能。
  5. 使用任何回归算法(如 XGBoost、SVM、Lasso 回归等)训练您的模型并预测您的值。
  6. 为了验证您的模型性能,您应该检查 RMSE(均方根误差)。