May 03, 2024 | 7 min read

1. Introducción#

Este notebook recoge los conceptos básicos para adentrarse en el mundo del QML (Quantum Machine Learning). En primer lugar, se contextualizan los campos en los que se apoya y se explica en qué se basa el QML. Posteriormente, se recogen diferentes conceptos y definiciones que facilitarán la comprensión de los distintos cuadernos teórico-prácticos disponibles.

Para los ejemplos pr√°cticos se han utilizado los siguientes frameworks:

  • Qibo: es un software de c√≥digo abierto para trabajar con ordenadores cu√°nticos a nivel de circuitos, pulsos y algoritmos que cuenta con varias API de aplicaciones espec√≠ficas. Su objetivo es construir una pila de software (software stack) que facilite el uso de ordenadores cu√°nticos permitiendo dise√Īar f√°cilmente experimentos y aplicaciones y ejecutarlos en ordenadores cu√°nticos reales y/o simuladores cl√°sicos [31].

1.1. Machine Learning#

El Aprendizaje Automático (en inglés Machine Learning, ML) es uno de los campos más destacados de la Inteligencia Artificial en la actualidad. Se refiere al proceso de construcción de algoritmos que pueden aprender de las observaciones existentes (o conjuntos de datos o datasets) y aprovechar ese aprendizaje para predecir nuevas observaciones o determinar el resultado de nuevas entradas. [21]

Existen cuatro tipos de aprendizaje automático que se clasifican en función de la disponibilidad de las salidas de los ejemplos, es decir, dependerá de si se conoce el valor esperado para cada instancia del problema o no. La Fig. 1 recoge de forma esquemática dicha clasificación.

El primer tipo corresponde al aprendizaje supervisado. En este caso se conoce la salida de todas las instancias del problema, es decir, el conjunto de datos con el que se trabaja tiene registrados los valores a predecir de todos los ejemplos disponibles. Por lo tanto, se le podrá mostrar al algoritmo toda la información necesaria para elaborar su solución. [21]

En el aprendizaje no supervisado sin embargo, los valores de la variable salida son desconocidos, por lo que se utilizan otro tipo de algoritmos para descubrir la estructura de los datos. Se intentan agrupar dichos ejemplos en distintos grupos con caracter√≠sticas en com√ļn. [21]

El aprendizaje semi supervisado es una mezcla de los dos anteriores, en este caso se conoce la salida √ļnicamente para algunos de los ejemplos, en la mayor√≠a de ellos no se disponen de estos valores. Este tipo de aprendizaje est√° presente en los casos en los que el coste de conocer el valor para la variable salida es muy grande pero el obtener los datos sin esta informaci√≥n conlleva un coste muy bajo. [21]

Por √ļltimo, el aprendizaje por refuerzo se trata de un tipo distinto a los comentados anteriormente. Son algoritmos que aprenden por si mismos mediante recompensas. No se dispone del valor de salida por lo que no se encuentra dentro del aprendizaje supervisado, pero tampoco se trata de intentar obtener grupos con caracter√≠sticas comunes por lo que tampoco forma parte del no supervisado. [21]

Tambi√©n es interesante conocer que, dentro del aprendizaje supervisado, los problemas se pueden catalogar como problemas de regresi√≥n o clasificaci√≥n. En los problemas de regresi√≥n, el resultado a predecir ser√° un valor num√©rico y en los problemas de clasificaci√≥n se pretende predecir una clase, entendiendo por ‚Äúclase‚ÄĚ a una de las categor√≠as arbitrarias seg√ļn nuestro problema. La Fig. 1 muestra las categor√≠as de los m√©todos de ML.

../../_images/ML.jpg

Fig. 1 La categorías de los métodos de ML#

1.2. Quantum Machine Learning#

La tecnología cuántica ha supuesto un cambio de paradigma en el campo de la computación. Surge el aprendizaje automático cuántico (en inglés, Quantum Machine Learning, QML), un campo en evolución. El aprendizaje automático cuántico viene dado por la combinación de técnicas y algoritmos cuánticos con estrategias habituales en aprendizaje automático como se visualizar en la Fig. 2:

../../_images/mlvsqml.jpg

Fig. 2 ML vs QML#

Se puede combinar la computación cuántica con el aprendizaje automático de diversas maneras, obteniendo cuatro áreas de trabajo. Estas corresponden a las que se muestran en la Fig. 3:

../../_images/datatype.jpg

Fig. 3 √Āreas de trabajo QML#

CC: Se refiere a procesar datos clásicos con ordenadores clásicos, haciendo uso de algoritmos inspirados en computación cuántica. En otras palabras, hace referencia al machine learning clásico que directamente no tiene una base de quantum, si no que toma prestadas ideas de la física cuántica. [19]

CQ: En este caso, se procesan datos clásicos utilizando algoritmos de quantum machine learning. Será con la tipología que trabajaremos a partir de ahora. En este área se pretende encontrar soluciones más eficaces para problemas típicamente solucionados con ML pero sobre ordenadores cuánticos. [19]

QC: Se trata de un área de investigación, utilizan algoritmos clásicos para tratar datos cuánticos. [19]

QQ: Se podr√≠a decir que esta ser√≠a la aproximaci√≥n m√°s ‚Äúpura‚ÄĚ, ya que se realiza un procesamiento de los datos cu√°nticos y estos datos cu√°nticos se procesan haciendo uso del aprendizaje autom√°tico cu√°ntico. [19]

1.3. Conceptos#

  • Kernel: El QML puede utilizarse para realizar la evaluaci√≥n del kernel introduciendo estimaciones de un ordenador cu√°ntico en el m√©todo est√°ndar. Aunque el entrenamiento y la inferencia del modelo tendr√°n que hacerse en el SVM (Support-Vector Machine) est√°ndar, el uso de QSVM (Quantum SVM) podr√≠a ayudar a acelerar el proceso. A medida que se ampl√≠a el espacio de caracter√≠sticas, la estimaci√≥n de las funciones kernel en la computaci√≥n cl√°sica resulta costosa desde el punto de vista computacional. Las propiedades cu√°nticas ayudan a crear un espacio de estado cu√°ntico masivo que puede mejorar la evaluaci√≥n de los kernels [13].

  • PCA (Principal Component Analysis): Es una t√©cnica de extracci√≥n de caracter√≠sticas donde se combinan las entradas de una manera espec√≠fica y se pueden eliminar algunas de las variables ‚Äúmenos importantes‚ÄĚ manteniendo la parte m√°s significativa de todas las variables. Como valor a√Īadido, tras aplicar t√©cnicas de PCA se obtienen variables independientes entre s√≠ [3].

  • Funci√≥n de coste: Trata de definir el error entre el valor estimado y el valor real con el fin de optimizar el algoritmo. En otras palabras, la funci√≥n de coste cuantifica el error que se ha cometido al predecir los valores deseados.

  • Optimizaci√≥n: Los problemas de optimizaci√≥n est√°n presentes en muchos campos de estudio e implican encontrar las entradas que dar√°n el mejor resultado posible para un problema dado. Por lo general, encontrar el mejor resultado posible equivale a minimizar la funci√≥n de coste [2]. Los algoritmos de optimizaci√≥n de inspiraci√≥n cu√°ntica aprovechan algunas de las ventajas de la computaci√≥n cu√°ntica en hardware cl√°sico, lo que proporciona m√°s velocidad que en los enfoques tradicionales. Los algoritmos de inspiraci√≥n cu√°ntica son algoritmos cl√°sicos en los que se puede emular de forma cl√°sica el fen√≥meno cu√°ntico esencial que proporcionar√≠a el aumento de velocidad.

  • Gradiente: En matem√°ticas el gradiente es una generalizaci√≥n de la derivada. La derivada se puede definir solo en funciones de una sola variable, en funciones de varias variables este t√©rmino se denomina gradiente. Debido a esto, el gradiente es una funci√≥n de valor vectorial a diferencia de una derivada que toma un valor escalar. Al igual que la derivada, el gradiente representa la pendiente de la recta tangente a la funci√≥n estudiada, concretamente el gradiente apunta a aquellos puntos de la funci√≥n con mayor incremento. En el caso de machine learning, resulta de inter√©s el gradiente de la funci√≥n de coste [26].

  • Medida (Measurement): El paso final en computaci√≥n cu√°ntica es la medida de uno o m√°s qubits, despu√©s de todo se necesita obtener el resultado de lo que se ha estado calculando cu√°nticamente. Pese a que este √ļltimo paso puede parecer una √ļltima capa del circuito, no se tiene en cuenta a la hora de calcular la profundidad. La definici√≥n de la medida es el problema central de la mec√°nica cu√°ntica y esta estrechamente relacionada con las amplitudes del estado con el que se est√° trabajando, ya que el resultado obtenido depende de dichas probabilidades [33].

  • Funci√≥n convexa: Una funci√≥n es convexa en un punto cuando la funci√≥n cae por encima de la tangente en ese punto [6]. En otras palabras, consideramos que una funci√≥n es convexa cuando tiene forma de valle, una funci√≥n de este tipo se visualiza como en la Fig. 4.

../../_images/Convexa_funcion.png

Fig. 4 Visualización función convexa#

  • Funci√≥n c√≥ncava: Una funci√≥n es c√≥ncava en un punto cuando la funci√≥n cae por debajo de la tangente en ese punto [6]. Dicho de otra manera, este tipo de funciones se asemejan a la forma de una monta√Īa, tal y como se muestra en la Fig. 5.

../../_images/Concava_funcion.png

Fig. 5 Visualización función cóncava#


Autores:

Carmen Calvo (SCAYLE), Antoni Alou (PIC), Carlos Hernani (UV), Nahia Iriarte (NASERTIC) y Carlos Luque (IAC)

../../_images/LOGO-SCAILE.png ../../_images/Logo_pic.png ../../_images/Logo_UV.jpg ../../_images/Logo_Nasertic.png ../../_images/Logo_IAC.jpg
https://quantumspain-project.es/wp-content/uploads/2022/11/Logo_QS_EspanaDigital.png
Licencia Creative Commons

License: Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional.

This work has been financially supported by the Ministry for Digital Transformation and of Civil Service of the Spanish Government through the QUANTUM ENIA project call - Quantum Spain project, and by the European Union through the Recovery, Transformation and Resilience Plan - NextGenerationEU within the framework of the Digital Spain 2026 Agenda.