What is a quantum convolutional neural network?
Convolutional neural networks have the limitation that they learn inefficiently if the dimension of the data or the model is very large. Thus, Seunghyeok Oh et al. showed how to use quantum computing and CNN to develop a more efficient and performant technique that can be applied to solve complex machine learning tasks. This technique that integrates both CNN and quantum computing is called a quantum convolutional neural network (QCNN). In this article, we will have a deep understanding of QCNN with its paradigm and applications. Here are the key points that will be covered in this article.
- CNN standard
- What is quantum computing?
- The QuantumCNN Paradigm (QCNN)
- QCNN applications
Let’s start the discussion by reviewing how CNN approaches tasks.
Among many classification models, the Convolutional Neural Network (CNN) has demonstrated exceptional performance in computer vision. Photographs and other images that reflect the real world have a strong correlation between surrounding pixels.
The fully connected layer, which is a fundamental model of deep learning, has performed well in machine learning, but there is no way to maintain the correlation. CNN, on the other hand, can directly store correlation information, allowing more accurate performance evaluation.
CNN works primarily by stacking the layers of convolution and pooling together. The convolutional layer uses linear combinations between surrounding pixels to find new hidden data. The pooling layer reduces the feature map, reducing the required learning resources and preventing overfitting.
The result of the classification is achieved by using the fully connected layer after the data size has been sufficiently reduced by repeatedly applying these layers. For best results, the loss between the acquired label and the actual label can be used to train the model using a gradient descent method or other optimizers.
Numerous studies have been published that combine the quantum computing system and the CNN model are able to solve real world problems that are difficult with machine learning using the quantum convolutional neural network (QCNN).
There is a method for effectively solving quantum physics problems by applying the CNN structure to a quantum system, as well as a method for improving performance by adding a quantum system to the problems previously solved by CNN.
Before moving on to QCNN, we must first understand what quantum computing and computing is.
What is quantum computing?
Quantum computing is gaining ground as a new way to solve problems that traditional computing techniques cannot solve. Quantum computers have a different computing environment than traditional computers.
Quantum computers, in particular, can use superposition and entanglement, which are not seen in traditional computing environments, to achieve high performance through qubit parallelism. Here the qubit is referred to as a quantum bit, which is basically a unit of quantum information.
Quantum computing is seen as a new solution to algorithmic problems that are difficult to solve because of these advantages. Various studies using quantum computing models are also being carried out in the field of machine learning. Moreover, since the optimization of quantum devices using the gradient descent method has been studied, it is possible to quickly learn quantum machine learning using hyperparameters.
The QuantumCNN paradigm
QCNN, or Quantum Convolutional Neural Network, extends key features and structures of existing CNN to quantum systems. When a quantum physics problem defined in N-body Hilbert space is transferred to a classical computing environment, the size of the data increases exponentially in proportion to the size of the system, making it unsuitable for efficient solutions. Since data in a quantum environment can be expressed using qubits, the problem can be avoided by applying a CNN structure to a quantum computer.
Let us now see the architecture of the QCNN model.
As the above architecture shows, the QCNN model applies the convolutional layer and the pooling layer which are the key characteristics of CNN, to quantum systems.
- The hidden state is discovered by applying multiple qubit gates between adjacent qubits in the convolution circuit.
- The pooling circuit reduces the size of the quantum system by observing the fraction of qubit or by applying CNOT gates to only two qubit gates.
- Recreate the convolution and grouping circuits from steps 1 and 2.
- If the size of the system is small enough, the classification result is predicted by a fully connected circuit.
Multiscale Entanglement Renormalization Ansatz (MERA) is commonly used to satisfy this structure. MERA is a model for efficiently simulating multibody quantum systems. MERA now adds qubits to the quantum system, increasing its size exponentially for each depth.
This MERA is used in reverse by QCNN. The inverted MERA, which is suitable as a model of QCNN, reduces the size of the quantum system exponentially from the data provided.
One of CNN’s most popular applications is in the area of image classification. In terms of superposition and parallel computing, quantum computers offer significant advantages. Quantum Convolutional Neural Network improves CNN performance by incorporating quantum environments. In this section, we will see how the QCNN can help with the classification of images.
The quantum convolution layer is a layer in a quantum system that behaves like a convolution layer. To obtain feature maps composed of new data, the quantum convolution layer applies a filter to the input feature map. Unlike the convolutional layer, the quantum convolutional layer uses a quantum computing environment for filtering.
Quantum computers offer superposition and parallel computing, which are not available in classical computing and can reduce learning and evaluation time. Existing quantum computers, on the other hand, are still limited to small quantum systems.
Small quantum computers can build the quantum convolution layer because it does not apply the entire image map to a quantum system at once, but rather processes it as much as the filter size at a time.
The quantum convolution layer can be constructed as shown in the diagram below. Here is an explanation of how the concept works:
- During the encoding process, the pixel data corresponding to the filter size is stored in qubits.
- Filters of learnable quantum circuits can detect the hidden state from the input state.
- The decoding process obtains new classical data by measurement.
- To complete the new trait map, repeat steps 1 through 3 one more time.
The encoding of the first step is a process that converts classical information into quantum information. The simplest method is to apply a rotation gate to the qubits that match the pixel data. Of course, different encoding methods exist, and the encoding method chosen can affect the number of qubits required as well as the efficiency of learning. The third decoding process is based on the measurement of one or more quantum states. Classical data is determined by measuring quantum states.
A combination of several gates can be used to create the random quantum circuit in the second step. By adding variable gates, the circuit can also perform optimization using the gradient descent method. This circuit can be designed in a variety of ways, each of which has an impact on learning performance.
Through this article, we have seen how QCNN uses a CNN model and quantum computing environment to enable a variety of approaches in the field. Fully parameterized quantum convolutional neural networks open promising results for quantum machine learning and data science applications. Outside of this discussion, if you want to look into a practical implementation of the QCNN, I recommend that you look at the TensorFlow implementation and the research team as mentioned in the introduction.