【问题标题】:How may I define my own labels in tensorflow.js我如何在 tensorflow.js 中定义自己的标签
【发布时间】:2020-03-26 09:54:59
【问题描述】:

我有一个三维数据,比如任何传感器的x,y,z。我正在创建 tensorof 这些值,例如 tf.tensor3d([[[x1], [y1], [z1]], [[x2], [y2], [z3]], ....... so on]) 。但我只有两个标签,它们不是像[standing , sitting] 这样的数值。我想将单个label 分配给x,y,z 的三个值的组合。如何使用我自己的标签在tensorflow.js 中训练我的model

【问题讨论】:

    标签: tensorflow.js


    【解决方案1】:

    首先是创建标签的索引。

    ES2019

    const labelArray = ["standing", "sitting"]
    const mapIndexLabel = Object.fromEntries(Object.entries({...labelArray}).map(([a, b]) => [b, +a])) // {standing: 0, sitting: 1}
    

    标签张量应该是 onehot 编码。这是一个如何创建它的示例。

    |features   | labels   |
    |-----------|----------|
    | feature0  | standing |
    | feature1  | sitting  |
    | feature1  | sitting  |
    

    标签数组索引应该是[0, 1, 1](索引取自上面的对象)。标签张量是索引的onehot编码

    labelsTensor = tf.onehot([0, 1, 1], numberOfUniqueLabels) // numberOfUniqueLabels = 2 in this case
    

    那么经过model.fit(featuresTensor, labelsTensor)可以训练模型

    【讨论】:

    • 我需要更多解释...我应该创建这样的表格来定义特征和标签吗?
    • 该表只是为了向您解释如何创建 onehot 编码。在您正在创建的问题中,x,y,z 组合作为 3d 张量的特征。如果您需要更多信息,请考虑通过接受答案来关闭此线程并询问一个新的添加您还想知道的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    相关资源
    最近更新 更多