卷积网络由输入层、输出层以及一个或多个隐藏层构成。与常规神经网络不同,卷积网络各层的神经元均按三维(宽度、高度和深度维度)方式排列。因此,CNN 可使用三维方式将输入体转变为输出体。隐藏层是由卷积层、池化层、归一化层和全连接层组成的组合层。CNN 使用多个卷积层过滤输入体,以便构建更高层级的抽象概念。
CNN 使用池化层获取有限的平移和旋转不变性,以此提升对特殊摆放的物体的检测能力。此外,池化还降低了内存消耗,因而能够腾出空间使用更多的卷积层。归一化层用于对局部输入区域归一化,具体方法是将分层的所有输入归一化为均值 0 和方差 1。此外,还可使用其他正则化方法,比如批量归一化或 dropout,前者是对激活神经元的整批数据归一化,而后者是在训练过程中随机忽略选择的神经元。全连接层的神经元在功能上与卷积层相似(计算点积),但不同的是它们与上一层的所有激活神经元相连。
最新 CNN 使用的是 inception 模块,该模块使用 1×1 卷积核进一步降低内存消耗,同时提高计算效率(由此提高训练效率)。这也使 CNN 适于用在大量的机器学习应用程序中。