【问题标题】:What's the difference between primitive and composite function in CNTK?CNTK 中的原始函数和复合函数有什么区别?
【发布时间】:2018-02-09 12:39:23
【问题描述】:

据我所知,as_block 函数用于将复合函数转换为原始函数。但是两者有什么区别呢?我需要在什么情况下使用此功能?感谢您的帮助!

【问题讨论】:

    标签: deep-learning cntk


    【解决方案1】:

    复合函数与原始函数的参数不同。原始函数的参数是用作直接输入的变量,而复合函数则追溯到图的开头。

    例如,如果您有如下代码: a = b * c s = a + d 如果你检查 s.arguments,你会发现 b、c 和 d。这是因为原始函数Plus 是用 as_composite 包装的。但是您可以检查 s.owner.arguments,它会显示 a 和 d,它们是 Plus 的直接输入。

    【讨论】:

    • 感谢您的明确答复!但是我还是不知道as_block中的block_arguments_map参数是什么意思。你能举个例子吗?
    • 您可以将块函数视为 C++ 中的模板。 as_block 创建模板并实例化它,因此它需要从调用实例的输入到模板输入的映射。
    猜你喜欢
    • 2015-03-15
    • 2019-06-26
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 2019-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多