拆分规范化数据集逻辑回归



我得到了一个数据集,它已经被拆分为两个文件,一个测试数据文件和一个训练数据文件。两个文件中的数据都已规范化。 我被要求进行二项式逻辑回归并使用一些指标评估模型,并使用 Spark 创建训练摘要。我正在将python与Spark结合使用。

目标是开发一个 Spark 应用程序,该应用程序将首先使用训练数据集生成分类模型,然后使用测试数据集对其进行测试。 最后,我将执行 Spark 应用程序并研究模型性能,同时改变训练期间允许的最大迭代次数。 对于最大迭代次数,我必须使用我选择的五个值来执行应用程序。对于每次执行,我需要记录至少三个 对性能指标进行建模,例如 ROC 曲线下面积、准确性、精度、召回率等

Train: https://pastebin.com/KWsp6jAp
Test: https://pastebin.com/KVYEWZeA

我已经完成了编码,但我很困惑,因为数据集已经拆分。

我的问题是:

我是否:

  1. 需要检查两个文件,训练和测试缺少值或 0 和 用 NaN 替换它们(因为它们已经规范化)?
  2. 两个文件的插补?
  3. 放入两个不同的单个向量(每个文件一个)所有功能?
  4. 标准缩放器来缩放两个向量的特征列?
  5. 检查训练数据是否存在不平衡并进行处理?
  6. 如何找出我应该运行哪五个迭代次数?

我在这里遵循了本指南:https://github.com/dhirajprai/SparkML/blob/master/SparkML/logisticregression.ipynb (此处使用的数据集似乎具有不同的值/未规范化)

这更像是一个常识性问题。

http://www.semspirit.com/artificial-intelligence/machine-learning/preparing-the-data/preparing-the-data-in-python/splitting-the-dataset-into-training-and-test-sets/看这个例子。我刚刚用谷歌搜索并找到了这个,尽管我从机器学习课程中知道我会说的相同。此外,您自己的参考也暗示了这一点。

您可以从以下 2 个来源中看到一般方法:

  • 他们执行您引用的所有操作。
  • 然后他们分手了。

为什么你的数据是作为训练和测试预先交付的,我不清楚,因为它不是那么常见。

您提到的所有方面都已经完成 - 因为您声明数据已规范化。

规范化是一种缩放技术,其中值被移动和重新缩放,以便它们最终的范围介于 0 和 1 之间。它也被称为最小-最大缩放。因此,您无需对 0(某物)值执行任何操作。在某些情况下,关于这方面的一些辩论。

因此,仅需要步骤 3 和 6。

最新更新