A computação quântica é um conceito que explora efeitos da Mecânica Quântica, como a superposição e o emaranhamento, para o uso em operações computacionais. Enquanto a computação clássica usa bits, que representam 0 ou 1, a computação quântica usa os qubits podem existir em uma combinação de ambos os estados simultaneamente. Isso permite armazenar e processar muito mais informações.
Ao mesmo tempo que a computação quântica vem crescendo, outra área que teve um avanço nos últimos anos é a inteligência artificial (IA). A IA é um campo da ciência da computação dedicado a criar sistemas capazes de realizar tarefas como aprendizado, resolução de problemas, reconhecimento de padrões e tomada de decisões. O aprendizado de máquina ou machine learning (ML) é um subcampo da IA que foca em técnicas que permitem que os computadores aprendam a partir de dados.
O quantum machine learning (QML) é um campo que combina essas duas áreas que estão em constante crescimento. A ideia é usar os princípios da computação quântica com algoritmos de aprendizado de máquina. Dessa forma, é possível aproveitar o poder computacional dos computadores quânticos para acelerar e melhorar o desempenho de tarefas de aprendizado de máquina.
A principal diferença entre a computação quântica e a computação clássica está na unidade de armazenamento. Na computação clássica, os bits representam estados 0 ou 1 enquanto a computação quântica emprega qubits. Um qubit pode existir em uma superposição de estados, significando que ele pode ser 0, 1 ou uma combinação probabilística de ambos simultaneamente.
Outra característica que ajuda a acelerar o processamento é o entrelaçamento quântico. Esse fenômeno acontece quando dois ou mais qubits tem seus estados quânticos interligados. Isso faz com que o estado de um qubit influencia instantaneamente o estado do outro, independentemente da distância entre eles. Dessa forma, é possível testar e processar de forma muito mais rápida.
A computação quântica emprega algoritmos projetados para explorar as propriedades quânticas dos qubits. Um algoritmo quântico é uma sequência de operações lógicas quânticas, conhecidas como gates quânticos, aplicadas a um conjunto de qubits. Esses gates são análogos às operações lógicas da computação clássica. A diferença é que operam sobre os estados de superposição e emaranhamento dos qubits.
Os circuitos quânticos são a representação visual algoritmos. Eles são diagramas que mostram os qubits como linhas horizontais e os gates quânticos aplicados a essas linhas indicando as operações. A ordem e a combinação desses gates determinam o algoritmo quântico específico implementado, e o resultado da computação é obtido através da medição final do estado dos qubits.
QML é a junção entre os princípios da computação quântica e os algoritmos de aprendizado de máquina. O objetivo é desenvolver algoritmos quânticos que consigam acelerar e encontrar novos padrões em tarefas de aprendizado. A descoberta de padrões mais complexos que não são possíveis na computação clássica por causa da limitação é uma das possíveis vantagens em juntar as duas áreas.
Um exemplo são os quantum kernels, que utilizam circuitos quânticos para transformar dados clássicos em espaços de Hilbert de maior dimensão. Eles podem encontrar relações entre os dados de forma mais rápida. Outro exemplo é as quantum neural networks (QNNs), que exploram a criação de modelos de redes neurais com qubits como unidades de informação e gates quânticos como as operações não lineares.
A base do ML é o uso de grande quantidade de dados então o principal ponto de um algoritmo de QML é mapear dados clássicos em estados quânticos. Geralmente, isso é feito utilizando técnicas como codificação de amplitude ou ângulo. Esses estados quânticos são então processados por circuitos quânticos que atuam como modelos quânticos de ML.
O treinamento desses modelos ocorre de forma híbrida clássico-quântica: o computador quântico executa o circuito para obter resultados de medição e o computador clássico calcula o erro. O computador clássico então otimiza os parâmetros do circuito quântico, de forma iterativa, com o objetivo de minimizar o erro. E esse processo é iterativo até encontrar os melhores parâmetros para o modelo.