首页 > 编程知识 正文

gif图为静态图,gif为静态图什么意思

时间:2023-05-06 05:58:24 阅读:154110 作者:1135

动态图动态图意味着计算图的构建和计算同时发生(define by run)该机制可以实时获得中间结果的值,便于调试,同时也便于将大脑中的想法转化为代码计划,便于编程实现Pytorch由于使用了动态的图形机制,使用起来更方便,样式更pythonic,受到科学家的欢迎。

静态图表

静态图则意味着计算图的构建和实际计算是分开(define and run)的静态图中,由于事先理解并定义了整个运算流,所以在之后再次执行时不需要再构筑计算图(可以理解为编译),所以比动态图速度更快,爸爸但是,这意味着在期望的程序和编译器实际执行之间存在更多的替代方案,代码中的错误很难发现,也就无法像动态图那样随时获得中间计算结果。 Tensorflow缺省使用静态图像机制,这也是其名称的由来,在定义整个计算流(flow )后计算数据(tensor )。

比较动态图和静态图之间的差异

一个代码分别基于pytorch和tensorflow的实现

pytorch

importtorchfirst _ counter=torch.tensor ([0] ) second _ counter=torch.tensor ([ 10 ] ) while ) first _ counters _ cor

importtensorflowastffirst_counter *=TF.constant (0) second_counter=TF.constant ) 10 ) defcond ) first _ counter args ) : return first _ countersecond_counterdefbody (first _ counter,second _ counter ) :first_counter=) 1 ) return first_counter,second_counter c1,C2=TF.while _ lile second _ counter (withtf.session ) ) as sess 333333

Tensorflow使用内置的辅助函数tfwhile loop,而不是直接使用Python的while循环语句,因为在静态图表模式下每次运算的计算图表都是相同的。 而且,会像TF.session(.run )那样胡来。

另一方面,Pytorch是动态图表的模型,每次运算时都会构筑新的计算图表,实现编程不需要额外的学习成本

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。