Older deep learning frameworks, such as Caffe, did not have operators. Instead, their basic units of computation were called layers. These older frameworks chose the name layer inspired by the layers in neural networks.
However, contemporary frameworks, such as Caffe2, TensorFlow, and PyTorch, prefer to use the term operator for their basic units of computation. There is a subtle difference between operators and layers. A layer in older frameworks, such as Caffe, was composed of both the computation function of that layer and the trained parameters of that layer. In contrast to this, an operator in Caffe2 only holds the computation function. Both the trained parameters and the inputs are external to the operator and need to be fed to it explicitly.