Por favor, dame una breve lista con viñetas de los componentes/arquitecturas clave de una red neuronal convolucional.
Una red neuronal convolucional consta de una capa de entrada, capas ocultas y una capa de salida. En cualquier red neuronal feed-forward, las capas intermedias se denominan ocultas porque sus entradas y salidas están enmascaradas por la función de activación y la convolución final. En una red neuronal convolucional, las capas ocultas incluyen capas que realizan convoluciones. Normalmente, esto incluye una capa que realiza un producto punto del núcleo de convolución con la matriz de entrada de la capa. Este producto suele ser el producto interno de Frobenius, y su función de activación suele ser ReLU. A medida que el núcleo de convolución se desliza por la matriz de entrada de la capa, la operación de convolución genera un mapa de características, que a su vez contribuye a la entrada de la capa siguiente. A ésta le siguen otras capas, como las capas de agrupamiento, las capas totalmente conectadas y las capas de normalización.

Capas convolucionales

Las capas convolucionales convolucionan la entrada y pasan su resultado a la capa siguiente. Esto es similar a la respuesta de una neurona del córtex visual a un estímulo específico. Cada neurona convolucional procesa datos sólo para su campo receptivo. Aunque las redes neuronales de conexión directa pueden utilizarse para aprender características y clasificar datos, esta arquitectura suele ser poco práctica para entradas más grandes (por ejemplo, imágenes de alta resolución), que requerirían un número masivo de neuronas porque cada píxel es una característica de entrada relevante. Una capa totalmente conectada para una imagen de tamaño 100 × 100 tiene 10.000 pesos para cada neurona de la segunda capa. La convolución reduce el número de parámetros libres, lo que permite que la red sea más profunda. Por ejemplo, utilizando una región de mosaico de 5 × 5, cada una con los mismos pesos compartidos, sólo se necesitan 25 neuronas. El uso de pesos regularizados sobre menos parámetros evita los problemas de gradientes evanescentes y gradientes explosivos observados durante la retropropagación en redes neuronales anteriores.

Para acelerar el procesamiento, las capas convolucionales estándar pueden sustituirse por capas convolucionales separables en profundidad, que se basan en una convolución en profundidad seguida de una convolución puntual. La convolución en profundidad es una convolución espacial aplicada independientemente a cada canal del tensor de entrada, mientras que la convolución puntual es una convolución estándar restringida al uso de

Capas de agrupamiento
Las redes convolucionales pueden incluir capas de agrupación locales y/o globales junto con las capas convolucionales tradicionales. Las capas de agrupación reducen las dimensiones de los datos combinando las salidas de los grupos de neuronas de una capa en una sola neurona de la capa siguiente. La agrupación local combina clústeres pequeños; se suelen utilizar tamaños de mosaico como 2 × 2. La agrupación global actúa sobre todas las neuronas del mapa de características. Hay dos tipos comunes de agrupación de uso popular: máxima y media. La agrupación máxima utiliza el valor máximo de cada conglomerado local de neuronas del mapa de características, mientras que la agrupación media toma el valor medio.

Capas totalmente conectadas
Las capas totalmente conectadas conectan cada neurona de una capa con cada neurona de otra capa. Es igual que una red neuronal perceptrón multicapa (MLP) tradicional. La matriz aplanada pasa por una capa totalmente conectada para clasificar las imágenes.

Campo receptivo
En las redes neuronales, cada neurona recibe la entrada de un cierto número de ubicaciones de la capa anterior. En una capa convolucional, cada neurona recibe información sólo de un área restringida de la capa anterior, denominada campo receptivo de la neurona. Normalmente, el área es un cuadrado (por ejemplo, 5 por 5 neuronas). En cambio, en una capa totalmente conectada, el campo receptivo es toda la capa anterior. Así, en cada capa convolucional, cada neurona toma la entrada de un área de entrada mayor que las capas anteriores. Esto se debe a la aplicación de la convolución una y otra vez, que tiene en cuenta el valor de un píxel, así como el de sus píxeles circundantes. Cuando se utilizan capas dilatadas, el número de píxeles del campo receptivo permanece constante, pero el campo se puebla más escasamente a medida que aumentan sus dimensiones al combinar el efecto de varias capas.

Para manipular el tamaño del campo receptivo como se desee, existen algunas alternativas a la capa convolucional estándar. Por ejemplo, la convolución atrófica o dilatada amplía el tamaño del campo receptivo sin aumentar el número de parámetros, intercalando regiones visibles y ciegas. Además, una sola capa convolucional dilatada puede comprender filtros con múltiples relaciones de dilatación, teniendo así un tamaño de campo receptivo variable.

Pesos
Cada neurona de una red neuronal calcula un valor de salida aplicando una función específica a los valores de entrada recibidos del campo receptivo de la capa anterior. La función que se aplica a los valores de entrada viene determinada por un vector de pesos y un sesgo (normalmente números reales). El aprendizaje consiste en ajustar iterativamente estos sesgos y pesos.

Los vectores de pesos y sesgos se denominan filtros y representan características particulares de la entrada (por ejemplo, una forma concreta). Una característica distintiva de las CNN es que muchas neuronas pueden compartir el mismo filtro. Esto reduce la huella de memoria porque se utiliza un único sesgo y un único vector de pesos en todos los campos receptivos que comparten ese filtro, en lugar de que cada campo receptivo tenga su propio sesgo y vector de pesos.
Los componentes/arquitectura clave de una red neuronal convolucional incluyen:

Capas convolucionales: Estas capas convolucionan la matriz de entrada y reducen el número de parámetros libres y permiten que la red sea más profunda.

Capas de agrupamiento: Estas capas reducen las dimensiones de los datos combinando las salidas de los grupos de neuronas de una capa en una sola neurona de la capa siguiente.

Capas totalmente conectadas: Estas capas conectan cada neurona de una capa con cada neurona de otra capa.

Campo receptivo: Cada neurona recibe la entrada de un área restringida de la capa anterior llamada campo receptivo de la neurona. En una capa convolucional, cada neurona recibe la entrada de un área receptiva mayor que las capas anteriores.

Pesos: Los vectores de pesos y sesgo son utilizados por la función neuronal para calcular un valor de salida a partir del valor de entrada.
Please give me a short bulleted list of the key components/architectures in a convolutional neural network.
A convolutional neural network consists of an input layer, hidden layers and an output layer. In any feed-forward neural network, any middle layers are called hidden because their inputs and outputs are masked by the activation function and final convolution. In a convolutional neural network, the hidden layers include layers that perform convolutions. Typically this includes a layer that performs a dot product of the convolution kernel with the layer's input matrix. This product is usually the Frobenius inner product, and its activation function is commonly ReLU. As the convolution kernel slides along the input matrix for the layer, the convolution operation generates a feature map, which in turn contributes to the input of the next layer. This is followed by other layers such as pooling layers, fully connected layers, and normalization layers.

Convolutional layers

Convolutional layers convolve the input and pass its result to the next layer. This is similar to the response of a neuron in the visual cortex to a specific stimulus. Each convolutional neuron processes data only for its receptive field. Although fully connected feedforward neural networks can be used to learn features and classify data, this architecture is generally impractical for larger inputs (e.g., high-resolution images), which would require massive numbers of neurons because each pixel is a relevant input feature. A fully connected layer for an image of size 100 × 100 has 10,000 weights for each neuron in the second layer. Convolution reduces the number of free parameters, allowing the network to be deeper. For example, using a 5 × 5 tiling region, each with the same shared weights, requires only 25 neurons. Using regularized weights over fewer parameters avoids the vanishing gradients and exploding gradients problems seen during backpropagation in earlier neural networks.

To speed processing, standard convolutional layers can be replaced by depthwise separable convolutional layers, which are based on a depthwise convolution followed by a pointwise convolution. The depthwise convolution is a spatial convolution applied independently over each channel of the input tensor, while the pointwise convolution is a standard convolution restricted to the use of 

Pooling layers
Convolutional networks may include local and/or global pooling layers along with traditional convolutional layers. Pooling layers reduce the dimensions of data by combining the outputs of neuron clusters at one layer into a single neuron in the next layer. Local pooling combines small clusters, tiling sizes such as 2 × 2 are commonly used. Global pooling acts on all the neurons of the feature map. There are two common types of pooling in popular use: max and average. Max pooling uses the maximum value of each local cluster of neurons in the feature map, while average pooling takes the average value.

Fully connected layers
Fully connected layers connect every neuron in one layer to every neuron in another layer. It is the same as a traditional multilayer perceptron neural network (MLP). The flattened matrix goes through a fully connected layer to classify the images.

Receptive field
In neural networks, each neuron receives input from some number of locations in the previous layer. In a convolutional layer, each neuron receives input from only a restricted area of the previous layer called the neuron's receptive field. Typically the area is a square (e.g. 5 by 5 neurons). Whereas, in a fully connected layer, the receptive field is the entire previous layer. Thus, in each convolutional layer, each neuron takes input from a larger area in the input than previous layers. This is due to applying the convolution over and over, which takes into account the value of a pixel, as well as its surrounding pixels. When using dilated layers, the number of pixels in the receptive field remains constant, but the field is more sparsely populated as its dimensions grow when combining the effect of several layers.

To manipulate the receptive field size as desired, there are some alternatives to the standard convolutional layer. For example, atrous or dilated convolution expands the receptive field size without increasing the number of parameters by interleaving visible and blind regions. Moreover, a single dilated convolutional layer can comprise filters with multiple dilation ratios, thus having a variable receptive field size.

Weights
Each neuron in a neural network computes an output value by applying a specific function to the input values received from the receptive field in the previous layer. The function that is applied to the input values is determined by a vector of weights and a bias (typically real numbers). Learning consists of iteratively adjusting these biases and weights.

The vectors of weights and biases are called filters and represent particular features of the input (e.g., a particular shape). A distinguishing feature of CNNs is that many neurons can share the same filter. This reduces the memory footprint because a single bias and a single vector of weights are used across all receptive fields that share that filter, as opposed to each receptive field having its own bias and vector weighting.
The key components/architecture of a convolutional neural network include:

Convolutional layers: These layers convolve the input matrix and reduce the number of free parameters and allows the network to be deeper.

Pooling layers: These layers reduce the dimensions of data by combining the outputs of neuron clusters at one layer into a single neuron in the next layer.

Fully connected layers: These layers connect every neuron in one layer to every neuron in another layer. 

Receptive field: Each neuron receives input from a restricted area of the previous layer called the neuron's receptive field. In a convolutional layer, each neuron takes input from a larger area in the input than previous layers.

Weights: The vectors of weights and bias are used by the neural's function to compute an output value from input value.