【问题标题】:CNTK basic operation with c# following python example gives error使用 c# 的 CNTK 基本操作以下 python 示例给出错误
【发布时间】:2019-02-21 19:48:20
【问题描述】:

此刻我正在努力不绝望只是试图转换它(来自https://cntk.ai/pythondocs/gettingstarted.html#overview-and-first-run

cntk.minus([1, 2, 3], [4, 5, 6]).eval()

给出“array([-3., -3., -3.], dtype=float32)

    public static void Test1()
    {
        var device = DeviceDescriptor.GPUDevice(0);

        var v1 = CNTKLib.InputVariable(new int[] { 1 }, DataType.Float, "e1");
        var v2 = CNTKLib.InputVariable(new int[] { 1 }, DataType.Float, "e2");

        var o1 = CNTKLib.InputVariable(new int[] { 1 }, DataType.Float, "o1");
        var o2 = CNTKLib.InputVariable(new int[] { 1 }, DataType.Float, "o2");


        var features1 = new float[] { 1, 2, 3 };
        var features2 = new float[] { 4, 5, 6 };

        var vv1 = Value.CreateBatch<float>(new int[] { 1 }, features1, device);
        var vv2 = Value.CreateBatch<float>(new int[] { 1 }, features2, device);


        var d1 = new Dictionary<Variable, Value>()
        {
            { v1, vv1 },
            { v2, vv2 },
        };

        var d2 = new Dictionary<Variable, Value>();

        d2.Add(o1, null);

        var fun = CNTK.CNTKLib.Minus(v1, v2);
        fun.Evaluate(d1, d2, device);
    }

给出下一个错误:

"1 个必需参数 'Input('o1', [1], [, #])' 的值,即请求的输出 'Input('o1', [1 ], [, #])' 依赖,未提供"

我无法理解 c# 的文档为何如此空洞,以及如何在 python 中如此简单。

下一个例子也是如此

import numpy as np
x = cntk.input_variable(2)
y = cntk.input_variable(2)
x0 = np.asarray([[2., 1.]], dtype=np.float32)
y0 = np.asarray([[4., 6.]], dtype=np.float32)
cntk.squared_error(x, y).eval({x:x0, y:y0})
->array([ 29.], dtype=float32)

numpy 数组只是完美地解析为字典。我试图在 C# 中做同样的事情(几乎不遵循 https://github.com/Microsoft/CNTK/blob/master/Examples/TrainingCSharp/Common/LogisticRegression.cs 中的示例)但同样的错误。

有人能帮我弄清楚我错过了什么吗?也可能指向一些文档,其中包含在 c# 中使用 api 的基本示例。

谢谢!!

【问题讨论】:

    标签: c# function evaluation cntk


    【解决方案1】:

    您可能想看看this github repo。它可能有你需要的一切。

    【讨论】:

    • 嗨雪花,非常感谢您的回答。我去看看:)
    猜你喜欢
    • 2021-03-28
    • 1970-01-01
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 2021-03-17
    • 1970-01-01
    相关资源
    最近更新 更多