我猜想DNN
在某种意义上是TensorFlow
指“ 深度神经网络 ”。但是我发现这深深地令人困惑,因为“深度”神经网络的概念似乎在其他地方被广泛使用,这意味着通常具有多个卷积和/或关联层(ReLU,池化,丢失等)的网络。
相比之下,很多人会首先遇到这个术语(在tfEstimator Quickstart示例代码中),我们发现:
# Build 3 layer DNN with 10, 20, 10 units respectively. classifier = tf.estimator.DNNClassifier(feature_columns=feature_columns, hidden_units=[10, 20, 10], n_classes=3, model_dir="/tmp/iris_model")
这听起来像是可疑的浅,甚至更像是老式的多层感知器(MLP)网络。但是,没有提到DNN
该近似定义源上的替代术语。那么DNN
在TensorFlow tf.estimator
上下文中实际上是一个MLP
吗?hidden_units
参数的文档表明是这种情况:
hidden_units:可迭代的每层隐藏单元数。所有层均已完全连接。例如 [64,32]表示第一层有64个节点,第二层有32个节点。
MLP已经写满了。这种理解正确吗?DNN
因此,是否使用了不当用语?如果DNNClassifier
可以,则最好弃用MLPClassifier
?还是DNN
代表深层神经网络以外的东西?