【问题标题】:Different scenario based queries on Imputing and Machine Learning基于不同场景的插补和机器学习查询
【发布时间】:2019-03-17 06:42:28
【问题描述】:

我是数据科学的新手,正在学习估算和模型训练。以下是我在训练数据集时遇到的几个问题。请提供这些问题的答案。

  1. 假设我有一个包含 1000 个观测值的数据集。现在我一次性在完整的数据集上训练模型。我这样做的另一种方式,我将我的数据集分为 80% 和 20%,并首先以 80% 的数据训练我的模型,然后在 20% 的数据上训练我的模型。它是相同的还是不同的?基本上,如果我用新数据训练我已经训练过的模型,这意味着什么?

插补相关

  1. 另一个问题与插补有关。想象一下,我有一些船上乘客的数据集,其中只有头等舱乘客有舱。有一列包含客舱编号(分类),但很少有观察有这些客舱编号。现在我知道这个列很重要,所以我不能删除它,因为它有很多缺失值,所以大多数算法都不起作用。如何处理此类列的插补?

  2. 在估算验证数据时,我们是使用用于估算训练数据的相同值进行估算,还是再次根据验证数据本身计算估算值?

  3. 如何以字符串的形式估算数据,如票号(如 A-123)。该列很重要,因为第一个字母说明了乘客的类别。因此,我们不能放弃它。

【问题讨论】:

  • 你不会估算客舱号码,因为有人要么有客舱号码,要么没有客舱号码,如果一个人没有客舱(号码),那么你应该用一个类别来标记它,例如。每个没有小屋的人都会获得 -1 的小屋编号。至于你的第一个问题,我不明白,你到底在做什么,为什么?

标签: machine-learning data-science training-data imputation test-data


【解决方案1】:

假设我有一个包含 1000 个观测值的数据集。现在我训练模型 一口气在完整的数据集上。我做的另一种方式,我把我的 80% 和 20% 的数据集,并首先以 80% 训练我的模型,然后再训练 20% 的数据。是一样的还是不一样的?

很难说:好不好。通常,如果您的数据(拆分)来自同一分布 - 您可以执行额外的训练。但是,并非所有模型类型都适合它。我建议您在额外训练之前和之后运行某种交叉验证,包括 80/20 拆分和错误测量检查。

基本上,如果我训练我的 在新数据上训练模型,这是什么意思?

如果您从同一分布中获取数据集:您将执行额外的学习,理论上应该对您的模型产生积极影响。

假设我有一些船上乘客的数据集,其中只为头等舱乘客提供舱室。有一列包含客舱编号(分类),但很少有观察有这些客舱编号。现在我知道这个列很重要,所以我不能删除它,因为它有很多缺失值,所以大多数算法都不起作用。如何处理此类列的插补?

您需要清楚地了解您想通过插补来做什么。如果只有第一类有值,您如何对第二类或第三类进行插补?你需要找到什么?甲板?车厢号?您要查找新值还是根据现有值进行估算?

在估算验证数据时,我们是使用用于估算训练数据的相同值进行估算,还是再次根据验证数据本身计算估算值?

通常,您对您拥有的整个数据(没有目标列)运行插补算法。

如何以字符串形式估算数据,例如票号(例如 A-123)。该列很重要,因为第一个字母说明了乘客的类别。因此,我们不能放弃它。

如果您的案例数量有限,您只需将值作为字符串进行估算。如果没有,进行特征工程:尝试预测字母、数字、数字的第一位、len(number)等。

【讨论】:

    猜你喜欢
    • 2018-08-22
    • 2018-02-07
    • 2017-04-26
    • 2018-11-16
    • 2017-09-04
    • 2017-09-27
    • 1970-01-01
    • 1970-01-01
    • 2019-06-22
    相关资源
    最近更新 更多