如何选择正确的数据进行预测?

User111113User111113 成员职位:24Maven
你好,

我有大约2年的历史数据,我可以用来预测反应。

例如,如果我必须预测2020年1月的回复率,我怎么能说多少数据才足够接近实际回复率呢?

------我应该看看我的数据在2018年1月、2019年1月和2019年最后4个月的表现

-----或者它应该持续到2019年的几个月和2019年1月

-----或者可能使用我所有的东西,但我不舒服,因为有很多异常值

当我比较过去几个月的实际数据和预测数据时,他们似乎一点都不接近,因为这是手工(在一张纸上)做的。

如何选择正确的数据?

谢谢你!

Jasmine_

最佳答案

答案

  • PaulMSimpsonPaulMSimpson 成员职位:8因素二世
    因为这个数据有日期/时间标记,所以您以正确的方式看待它。我建议您首先使用(比如说)前18个月的现有数据进行训练,然后在最近6个月的现有数据上测试您的模型。然后,将该模型的准确性与使用前22个月的现有数据进行训练的准确率进行比较,然后对最后2个月的现有数据进行测试。无论哪种方法的准确性更高,我都会预测2020年1月的情况。也就是说,要么用2020年1月之前的18个月来做预测,要么用2020年1月之前的22个月来做预测。18个月“可能”更准确的原因是,事物在变化,过程在变化,某些东西可能会影响数据。简单地用不同的训练数据时间长度进行实验。
    sgenzer CraigBostonUSA User111113 Jasmine_
  • User111113User111113 成员职位:24Maven
    @SChillman

    感谢您的回复。我会尝试两种方法,在这种情况下,哪种方法更好地测试准确性?

    为了验证,我使用交叉或分裂,但在这种情况下,我会使用交叉或任何其他建议,欢迎。


  • User111113User111113 成员职位:24Maven
    我用前18个月的数据运行了我的模型,并预测了未来4个月而不是6个月,只是为了看看它是否有效。

    我做了一个性能测试,将我预测的4个月(7月至10月)的响应率的原始数据放在一起,我已经有了实际/原始数据,所以我将其作为输入,看看结果集与原始的偏差有多大,我得到的均方误差为0.016

    这还不错,你觉得呢?
    Jasmine_
  • PaulMSimpsonPaulMSimpson 成员职位:8因素二世
    为了回应你今天早些时候的帖子,我不建议使用交叉验证,因为我们正在使用早期的数据来训练模型,然后使用后期的数据来测试它。只需将其分成18个月最老/6个月最新或20个月/4个月,甚至22个月/2个月,然后以这种方式构建和测试模型。同时,看看准确性,真阳性率和真负率。有时,F1分数是用来比较模型的最佳指标。这取决于1和0的平均分布。然后,在不同的时间点尝试它。
    Jasmine_ varunm1 sgenzer
  • User111113User111113 成员职位:24Maven
    我不能分割我的数据,我有2个单独的列一个月和一个年.....没有日期栏,所以我看不出来。

    另一种方法是在RM中加载数据之前添加状态列,这是我所做的,并将其划分为旧/新,但仍然分割运算符只采用标准值之类的比率和其他默认列…如何使用状态列从我的数据分割。

    此外,我使RR列空白的状态是新的,因为这将是我的测试数据。

    请帮忙,谢谢。
    Jasmine_
  • User111113User111113 成员职位:24Maven
    我使用了基于状态列的过滤器和拆分数据,你认为这是一个正确的方法吗?我不能在分割验证上做它,请参阅下面所附的图片。


    Jasmine_
登录注册置评。