功能列在tensorflow中是如何工作的?

2024-04-20 12:06:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我读到feature columns in tensorflow是用来定义我们的数据的,但是如何以及为什么?特征列是如何工作的?如果我们可以制作一个自定义的估计器而不使用它们,它们为什么会存在?在

如果它们是必要的,为什么像keras这样的库不使用它们呢?在


Tags: columns数据in定义tensorflow特征featurekeras
1条回答
网友
1楼 · 发布于 2024-04-20 12:06:58

广义而言

这可能太笼统了,无法回答。你可能想看一些视频或者多读一些关于机器学习的书,因为这是一个广泛的话题。在

我将试着解释数据的哪些特性。在

数据的“特征”是一个有意义的变量,应该将两个类分开。例如,如果我们选择“体重”这个特征,我们就可以区分大象和松鼠。它们的权重非常不同,我们的机器学习算法可以学习“理解”一个体重较重的动物更可能是大象而不是松鼠。在实际场景中,您通常会有多个特性。在

我不知道为什么你会说Keras不使用特性。它们是许多分类问题的基本方面。有些数据集可能包含带标签的数据或带标签的特性,比如这个:https://keras.io/datasets/#cifar100-small-image-classification

当我们“不使用特性”时,我认为更准确的说法是数据没有标记。在这种情况下,机器学习算法仍然可以在数据中找到关系,但是没有人为的标签应用到数据中。在

如果您Ctrl+F在这个页面上使用单词“features”,您将看到Keras接受它们作为参数的位置:https://keras.io/layers/core/

我不是一个机器学习专家,所以如果有人能纠正我的答案,我也会很感激。在

在Tensorflow中

我对Tensorflow's feature columns实现的理解是,它们允许您将原始数据强制转换到类型化列中,从而使算法能够更好地区分您传递的数据类型。例如,纬度和经度可以作为两个数字列传递,但是正如文档中所说的here,使用交叉列表示纬度X经度可以使模型以更有意义/更有效的方式对数据进行训练。毕竟,“纬度”和“经度”的真正含义是“位置”,至于为什么Keras没有这个功能,我不确定,希望其他人能提供关于这个主题的见解。在

相关问题 更多 >