在TensorFlow中,tf.layers和tf.contrib.layers共享了许多功能(标准的2D卷积层、批处理规范化层等)。这两者之间的区别只是因为contrib.layers包仍然是实验性的,layers包被认为是稳定的吗?还是一个被另一个取代了?其他的不同?为什么这两个是分开的?
发布于 2017-06-28 14:51:13
你已经回答了自己的问题。tf.contrib命名空间的正式文档描述如下:
包含易失性或实验代码的控制模块。
因此,tf.contrib被保留用于实验特性。允许该命名空间中的API在不同版本之间快速变化,而其他版本通常不能没有新的主版本。特别是,tf.contrib.layers中的函数与在tf.layers中发现的函数不完全相同,尽管其中一些函数可能以不同的名称被复制。
至于你是否应该使用它们,这取决于你是否愿意处理突然发生的变化。不依赖tf.contrib的代码可能更容易迁移到TensorFlow的未来版本。
https://stackoverflow.com/questions/44805675
复制相似问题