【问题标题】:TensorflowJS TFJS error: The dtype of dictTensorflowJS TFJS 错误:dict 的 dtype
【发布时间】:2020-07-17 01:22:06
【问题描述】:

曾尝试运行https://glitch.com/~tar-understood-exoplanet 并且模型将无法加载,我将无法使用启用网络摄像头。

有人遇到过同样的问题吗?

程序运行时,在控制台中我得到以下信息:

tfjs:2 Uncaught (in promise) Error: The dtype of dict['image_tensor'] provided in model.execute(dict) must be int32, but was float32
    at Object.b [as assert] (tfjs:2)
    at tfjs:2
    at Array.forEach (<anonymous>)
    at t.checkInputShapeAndType (tfjs:2)
    at t.<anonymous> (tfjs:2)
    at tfjs:2
    at Object.next (tfjs:2)
    at tfjs:2
    at new Promise (<anonymous>)
    at Zv (tfjs:2)

我有一台 Macbook Pro,其他一些人在他们的 Windows 上运行该模型时也遇到了一些问题。我们还在不同的浏览器、Safari 和 Chrome 上进行了尝试。

成功!切换到 coco-ssd 2.0.2 后:

我在第62行添加了2.0.2版本如下:

<script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd@2.0.2"></script>

【问题讨论】:

  • 感谢 Claire 的报告 - 我会在周一询问团队中是否有人知道答案!
  • 对于 Chrome,这可能是由于他们在 04/04 推出的 SameSite cookie 策略导致了问题。

标签: machine-learning tensorflow.js glitch-framework


【解决方案1】:

同样的错误,从星期五晚上 (04/03/2020) 开始出现 TFModel 在过去几周运行良好。

【讨论】:

    【解决方案2】:

    这是由使用 tf.zeros 张量的 coco-ssd 的预热运行引起的。在最近的 TFJS 版本中,tf.zeros 的默认 dtype 是“float”。 我已经发布了一个带有修复的新版本。如果您在故障示例 (index.html) 中使用最新版本的 coco-ssd (2.0.2),它应该可以工作,如下所示。

        <!-- Load the coco-ssd model to use to recognize things in images -->
        <script src="https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd@2.0.2"></script>
    

    【讨论】:

    • 请看上面!
    • 模型加载代码在 index.js 文件中被注释掉(第 36-41 行) 错误似乎与 TensorFlow.js 无关
    【解决方案3】:

    我遇到了同样的错误。

    我的场景: 我使用 tensorflow api 作为保存的模型(model.pb 文件)使用迁移学习从 tensorflow model zoo 训练了一个预训练模型,并将其转换为 tfjs 格式(model.json 和共享的 .bin 文件)。

    当我尝试在 javascript(web) 上运行这个 model.json 时,它给出了以下错误:

    Uncaught (in promise) Error: The dtype of dict['input_tensor'] provided in model.execute(dict) must be int32, but was float32
    

    当我在我的 javascript(web) 上尝试其他人的工作转换模型(model.json 和共享 .bin 文件)时,它成功了。

    结论: 我的转换模型有问题。我使用 tensorflowjs_converter 对其进行了转换。我在 (model.pb) 中的原始模型也可以在 python 中正常工作。

    我仍在尝试使用不同的 tensorflowjs_converters 转换我的 model.pb 文件,因为这似乎是转换器版本控制问题。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-07
    • 1970-01-01
    • 1970-01-01
    • 2021-03-30
    • 2023-02-21
    • 1970-01-01
    相关资源
    最近更新 更多