【问题标题】:How do I create a Dense layer of numpy.float64 with CNTK?如何使用 CNTK 创建 numpy.float64 的密集层?
【发布时间】:2017-09-17 12:56:57
【问题描述】:

我是 cntk 和 python 的新手。多年来,我使用各种库在 c# 中完成了机器学习。

为了帮助我学习 cntk 和 python,我用 UCI 葡萄酒数据集做了一个简单的分类项目。现在我只做一个隐藏层,我计划在一个隐藏层工作后添加更多隐藏层。

我在创建 dtype 为 numpy.float64 的隐藏密集层时遇到问题。我知道 float32 更快。由于未来的项目需要,我希望将下划线数据设为 float64。

我在互联网上搜索了帮助,但无济于事。我尝试的最后一件事是使用 dtype=numpy.float64 创建输入并将输入传递给 Dense,但这也不起作用。过去我曾在函数内部尝试过“with cntk.layers.default_options(dtype=numpy.float64)”,但它不接受带或不带名称的 numpy.float64。我还尝试对从 Dense 返回的内容调用 update_signature(numpy.float64) ,我得到了同样的错误。我会告诉你我尝试过的其他事情,但老实说我现在不记得了。

这是我最新的代码:

inputsCount = 11
classesCount = 2
inputs = cntk.input_variable(shape=(inputsCount), dtype=numpy.float64)
model = cntk.layers.Dense(classesCount, activation=None)(inputs)

这是我得到的错误:

ValueError: Primitive op 'Times' 传递了操作数 'Parameter('W', [], [? x 2]), Placeholder('Placeholder135', [#], [11])' 与不同 数据类型“Float”和“Double”。

【问题讨论】:

    标签: python-3.x cntk


    【解决方案1】:

    你可以试试这个吗?

    inputsCount = 11
    classesCount = 2
    with cntk.default_options(dtype=numpy.float64):
        inputs = cntk.input_variable(shape=(inputsCount))
        model = cntk.layers.Dense(classesCount, activation=None)(inputs)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多