gpt4 book ai didi

Kedro 数据建模

转载 作者:行者123 更新时间:2023-12-02 02:09:22 26 4
gpt4 key购买 nike

我们正在努力对数据进行正确建模以便在 Kedro 中使用 - 我们正在使用推荐的 Raw\Int\Prm\Ft\Mst 模型,但正在努力解决一些概念......例如

  • 什么时候数据集是要素而不是主要数据集?区别似乎很模糊......
  • 主数据集可以使用另一个主数据集的数据吗?
  • 从 INT 层构建特征数据集是一种好的做法吗?还是应该始终通过 Primary?

我很欣赏数据建模没有硬性规定,但这些都是重大的建模决策,任何有关 Kedro 建模的指导或最佳实践都会非常有帮助,我可以在 Kedro docs 中找到一张定义各层的表。

如果有人可以提供任何有关 Kedro 数据建模的进一步建议或博客\文档,那就太棒了!

最佳答案

很好的问题。正如您所说,这里没有硬性规定,意见也各不相同,但让我作为一名 QB 数据科学家和 kedro 维护者分享我的观点,他曾多次使用过您提到的分层约定。

首先,我要强调的是,如果 kedro 建议的数据工程约定不适合您的需求,那么绝对没有理由坚持它。 99% 的用户不会更改 data 中的文件夹结构。这并不是因为 kedro 默认结构适合他们,而是因为他们只是不想改变它。您绝对应该添加/删除/重命名图层以适合自己。最重要的是选择一组适合您的项目的图层(甚至是非分层结构),而不是尝试硬塞数据集以适应 kedro 默认建议。

现在,假设您遵循 kedro 的建议结构 - 解决您的问题:

When is a dataset a feature rather than a primary dataset? The distinction seems vague...

对于简单特征,特征数据集可能与主要数据集非常相似。如果您考虑更复杂的功能,例如通过在时间窗口内聚合而形成。主数据集将有一列提供原始数据的清理版本,但无需对其进行任何复杂的计算,只需进行简单的转换。假设原始数据是一周内驶过您家的所有汽车的颜色。当数据处于主要状态时,它将是干净的(例如,将“rde”更正为“红色”,可能将“深红色”和“红色”映射为相同的颜色)。在主要层和特征层之间,我们将对其进行一些不那么简单的计算,例如每天查找最常见的汽车颜色 one-hot 编码。

Is it OK for a primary dataset to consume data from another primary dataset?

在我看来,是的。如果您想将多个主表连接在一起,这可能是必要的。一般来说,如果您正在构建复杂的管道,如果您不允许这样做,将会变得非常困难。例如在要素图层中,我可能希望根据两个输入 feature_1feature_2 形成一个包含 composite_feature = feature_1 * feature_2 的数据集。如果要素层中没有多个子层,则无法做到这一点。

但是,通常值得避免的是消耗来自许多不同层的数据的节点。例如一个节点,它从要素层获取一个数据集,从中间层获取一个数据集。这看起来有点奇怪(为什么后面的数据集没有通过要素层?)。

Is it good practice to build a feature dataset from the INT layer? or should it always pass through Primary?

从中间层构建功能并非闻所未闻,但似乎有点奇怪。主层通常是重要的一层,它构成了所有特征工程的基础。如果您的数据处于可以构建特征的形状,那么这意味着它可能已经是主要层。在这种情况下,也许您不需要中间层。

以上几点可以总结为以下规则(毫无疑问,在需要时应该打破这些规则):

  1. L 层中节点的输入数据集应全部位于同一层,可以是 LL-1
  2. L中节点的输出数据集应全部位于同一层L,可以是LL+1

If anyone can offer any further advice or blogs\docs talking about Kedro Data Modelling that would be awesome!

我也有兴趣看看其他人的想法!需要注意的一件可能有用的事情是 kedro 受到 cookiecutter 数据科学的启发,并且 kedro 层结构是 what's suggested there 的扩展版本。 。也许其他项目已经采用了这个目录结构并以不同的方式对其进行了调整。

关于Kedro 数据建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67925860/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com