Keras中的MaxPool和MaxPooling层之间有什么区别?

Keras中的MaxPool和MaxPooling层之间有什么区别?,keras,tensorflow,machine-learning,deep-learning,tf.keras,Keras,Tensorflow,Machine Learning,Deep Learning,Tf.keras,我刚开始使用,注意到最大池有两个名称非常相似的层:MaxPool和MaxPooling。我很惊讶,我在谷歌上找不到这两者之间的区别;所以我想知道这两者之间有什么区别。它们是一样的。你可以自己测试 import numpy as np import tensorflow as tf from tensorflow.keras.layers import * # create dummy data X = np.random.uniform(0,1, (32,5,3)).astype(np.flo

我刚开始使用,注意到最大池有两个名称非常相似的层:
MaxPool
MaxPooling
。我很惊讶,我在谷歌上找不到这两者之间的区别;所以我想知道这两者之间有什么区别。它们是一样的。你可以自己测试

import numpy as np
import tensorflow as tf
from tensorflow.keras.layers import *

# create dummy data
X = np.random.uniform(0,1, (32,5,3)).astype(np.float32)

pool1 = MaxPool1D()(X)
pool2 = MaxPooling1D()(X)

tf.reduce_all(pool1 == pool2) # True

我使用了1D最大池,但对于所有池操作(2D、3D、avg、全局池)都是一样的。

它们基本上是一样的(即彼此的别名)。对于将来可能想知道如何确定这一点的读者:转到图层的文档页面(您可以使用该列表),然后单击“查看别名”。然后,它会伴随一个蓝色加号(+)

例如,如果您转到
MaxPool2D
并执行此操作,您将在该层的别名列表中找到
MaxPool2D
,如下所示: