quantum machine learning Inteligencia artificial

¿Qué es Quantum Machine Learning (QML)?

31/01/23 6 min. de lectura

Si el Machine Learning (ML) es interesante, Quantum Machine Learning (QML) o Aprendizaje automático cuántico es doblemente interesante 💡. Durante los últimos años hemos visto avances muy significativos en ambos campos, y juntos crean un área de infinitas oportunidades. ¿Te atreves a explorarlas? 🤔

En este post veremos algunos conceptos básicos de Quantum Computing y Quantum Machine Learning y nos pondremos manos a la obra sobre un ejemplo con código.

¿Qué es el Machine Learning? 👇👇

Recordemos brevemente algunos conceptos, la programación clásica se centra en: a partir de datos y ciertas reglas pre-definidas por el programador, tras la ejecución del programa obtenemos los resultados.

Pues bien, en el aprendizaje automático o machine learning pasamos los datos junto con los resultados esperados y el algoritmo busca identificar patrones y relaciones en los mismos (“entrenamiento o training”). En una ejecución posterior (“inferencia o prediction”) sin conocer los resultados, pero utilizando esas reglas / patrones encontrados previamente, es capaz de predecir el resultado.

comparativa entre la programación clásica y el Machine Learning

¿Qué es el Quantum Computing? 👇👇

La tecnología cuántica ha supuesto un cambio de paradigma en el campo de la computación. Apoyándose en las leyes de la mecánica cuántica resuelve de manera más eficaz algunos problemas complejos que no pueden ser resueltos por los ordenadores tradicionales.

La principal característica es que los ordenadores cuánticos se basan en quantum bits, qubits. En la computación clásica trabajamos con un único estado cada vez, ya sea 0 o 1. En cambio los qbits pueden estar en varios estados simultáneamente y se puede operar sobre todos ellos a la vez. Te explicamos cómo funcionan los qubits en este video 👇👇:

👉👉 Si quieres conocer más detalles sobre quantum computing, te recomiendo pegar un vistazo al siguiente post en el que se detallan conceptos de la computación cuántica.

Los cuatro tipos de Quantum Machine Learning

Según como se combine quantum y machine learning tenemos cuatro grandes familias, dependiendo del tipo de datos, si son quantum (Q) o clásicos (C) y de dónde se realice el procesamiento, sobre ordenadores cuánticos (Q) o clásicos (C).

Clasificación de los tipos de problemas de QML, en base al tipo de dato y dónde se realiza el procesamiento del mismo (computación clásica y/o cuántica)

CC – Machine Learning clásico que directamente no tiene una base de quantum, si no que toma prestadas ideas de la física cuántica. La aplicación de redes tensoriales inicialmente creados para sistemas cuánticos es un ejemplo.

QC – problemas clásicos del ML usados para aprender a partir de los estados cuánticos. Clasificar estados cuánticos emitidos por un experimento físico sería un problema abordado desde este enfoque.

CQ – usando ordenadores cuánticos para procesar dataset clásicos. En otras palabras, encontrar soluciones más eficaces para problemas típicamente solucionados con ML pero sobre ordenadores cuánticos. Sistemas clásicos como la clasificación de imágenes que se cargan en ordenadores quantum para aprender los parámetros correctos del algoritmo.

QQ – Esta aproximación sería la más “pura”, se utilizan ordenadores cuánticos directamente sobre estados cuánticos. El estado del output de una simulación cuántica se utiliza como input de un algoritmo ML.

Por ejemplo, un algoritmo cuántico de descomposición polar puede ser usado para aprender transformaciones unitarias en ciertos sistemas.

Cuando hablamos de problemas de QML, los expertos se refieren principalmente a problemas CQ y QQ, ya que en estos el “learning” se realiza sobre ordenadores cuánticos.

Vamos a la práctica: Cómo aplicar Quantum Machine Learning 🙌

Uno de los algoritmos más extendidos para resolver problemas de clasificación supervisada es el SVM (Support Vector Machine). El principal reto al que nos enfrentamos es como aplicar estos métodos basados en combinaciones lineales para separar / clasificar los datos del mundo real, dónde las combinaciones lineales no son suficientes.

La representación por medio de funciones kernel ofrece una solución a este problema: (técnica para proyectar datos mediante combinaciones no-lineales en un espacio de mayor dimensión). Sin embargo, existen limitaciones cuando el espacio comienza a ser muy grande y las funciones kernel computacionalmente costosas de calcular.

Vamos a aplicar Quantum computing para calcular una función kernel con un ejemplo sencillo, para representar los datos del problema de clasificación por un estado cuántico, y como cabe esperar obtendremos una solución más óptima.

En la siguiente imagen vemos como el SVM basado en combinaciones lineales no puede clasificar de manera óptima los datos, sin embargo, gracias al cálculo de la función kernel con Quantum Computing conseguimos separarlos de una manera más eficiente.

Comparativa de como separa los datos el SVM con kernel lineal (computación clásica) vs kernel no lineal (computación cuántica)

Os dejamos el detalle del código y como implementarlo en el siguiente ✨ repositorio de GitHub.

El Futuro de la Inteligencia Artificial (IA) usando Quantum Computing 🔮

El futuro de la IA acelerada gracias a los ordenadores cuánticos parece brillante, pudiendo resolver problemas complejos de IA y obtener múltiples soluciones simultáneamente. Dando lugar a que la Inteligencia Artificial realice tareas más complejas y de manera más eficiente.

Dado que solamente un puñado de Big Tech y Universidades más prestigiosas del mundo están desarrollando ordenadores cuánticos, parece que aún estamos un poco lejos de alcanzar ese futuro. O quizás no estemos tan lejos… 🤗

Santander Digital Services es una compañía del Grupo Santander con más de 7.000 empleados y basada en Madrid. Trabajamos para convertir al Santander en un banco digital con sucursales.

Mira las posiciones que tenemos abiertas aquí para unirte a este equipazo y Be Tech! with Santander 🚀

Síguenos en LinkedIn y en Instagram.

Juanjo Prieto Torres

Santander Global T&O

Senior Data Scientist en el equipo de Ciberseguridad Global, Matemático, curioso y apasionado de las soluciones basadas en matemáticas y datos.

Visión: Curiosidad, tecnología + equipo como motor de la innovación. Fascinado por la IA, ML, Quantum Computing, Blockchain…

👉 Mi perfil de LinkedIn

 

Otros posts