¿Ayudará la computación cuántica a la Ciencia de Datos?
Por: Laura Mancera
Esta década del 20-30 ha traído una serie de nuevas capacidades digitales, con ello la oportunidad de aprender o mejorar nuestras habilidades en el almacenamiento y procesamiento de grandes volúmenes de datos, que con la selección adecuada de algoritmos y técnicas de inteligencia artificial, nos permiten resolver muchos problemas y obtener resultados en tiempos que antes parecían inalcanzables. Sin embargo, a medida que vamos comprendiendo y mejorando nuestras capacidades técnicas, nos enfrentamos a nuevas limitantes físicas y lógicas, las cuales condicionan los resultados y el procesamiento de datos a super altas velocidades en un menor tiempo. Es ahí cuando vamos entendiendo que con el modelo tradicional de computación (1 ó 0), donde típicamente el (0-> false/off) y el (1->true/on), y su representación clásica de estados (0000, 0001, 0010, etc.) en 2^n estados distintos para las operaciones matemáticas, resulta casi imposible o intratable resolver muchos de los grandes problemas a los cuales ya nos enfrentamos.
En esta búsqueda de optimizar modelos de aprendizaje automático o encontrar nuevas soluciones y más rápidas a diversos problemas, comienza a penetrar con más fuerza el uso de conceptos como la computación cuántica, ¿pero qué problemas tenemos, que quisiéramos resolver o mejorar a gran escala?.
Unos pocos podrían ser, diseñar nuevos medicamentos con alta precisión y no por aproximación probando principios activos del químico y viendo si funcionan o no en las personas, o crear inteligencias artificiales todavía más potentes con aprendizaje cuántico que supere lo actual asociado al reconocimiento de imágenes o textos con aprendizaje profundo, o encontrar un material superconductor a temperatura ambiente de forma estable, sin necesidad de enfriarlo y a un costo competitivo, encontrarlo lograría industrializar el fenómeno cuántico de la superconductividad que provoca que algunos materiales conduzcan electricidad sin resistencia a temperaturas cercanas al cero absoluto, o lograr cables que transporten la electricidad sin gastar energía, o supresores de corriente que eviten los cortocircuitos asociados a los picos de corriente, o tener redes de datos inteligentes de muy alto rendimiento, o una transmisión de energía sin pérdidas, o trenes de levitación magnética estable.
Otros dentro del campo de la ciencia de los materiales o sistemas biológicos complejos, quisieren explotar al máximo la ecuación de Schrödinger para un sistema de tamaño exponencialmente grande en el número de partículas donde se pueda predecir su comportamiento; resolver la ecuación de Schrödinger requiere el conocimiento de la función de onda de muchos cuerpos en el espacio de Hilbert, por lo tanto, su solución para un número razonablemente grande de partículas es típicamente imposible con la computación tradicional de bits (1,0), incluso para la tecnología moderna de computación en paralelo con n procesadores en un período de tiempo razonable. Se tendrían que esperar entre 50 o 100 años teóricos para obtener algún resultado.
Por otra parte, si nos enfocamos en nuestro mundo de datos con el super almacenamiento en espacios más pequeños y un procesamiento de super grandes volúmenes con aprendizaje automático más rápido, encontramos que queremos diseñar aplicaciones y dispositivos que vean, escuchen y comprendan, tanto a humanos como a otros sistemas en un tiempo de respuesta razonable y lógico con la interacción hombre-maquina, acercándonos más a una respuesta más humana. Si bien, el aprendizaje automático nos permite «escalar» con la computación elástica en Cloud esos tiempos de respuesta para nuestros usuarios o clientes, hay problemas que no son suficientes con todas las computadoras existentes para resolverlos. Son las técnicas de la física newtoniana que actualmente utilizamos las que se quedan cortas y se limitan a aproximaciones.
Por ejemplo, el aprendizaje profundo, un enfoque muy popular para el Procesamiento de Lenguaje Natural y el tratamiento de imágenes, emplea aproximaciones porque las soluciones exactas son intratables en una computadora clásica. Por tanto, los modelos de aprendizaje automático podrían mejorarse, y es ahí donde una computadora cuántica rompería esas limitaciones gracias al escalamiento exponencial que nos ofrecería esta tecnología. Claro está que eso no significa que esta tecnología será tan comercial como ir a un Media Mark o un Best Buy a comprar una nueva Computadora Q (cuántica) hiperveloz, y no bastará con tener una plataforma de servidores quánticos a consumo de pago por uso en las grandes empresas Cloud de tecnología como Google, IBM, Microsoft, AWS. Sino que se requiere adquirir nuevas habilidades técnicas para construir y desarrollar nuevos algoritmos que exploten esa nueva forma de pensar y razonar asociado a las leyes del mundo cuántico, electrones, fotones, la superposición de estados y el entrelazamiento, lo que entraña cambiar el pensamiento tradicional del Bit (1,0) por el Bit cuántico (Qubit en inglés) donde puede ser 1 y 0 al mismo tiempo, es decir un sistema con dos estados propios representando un concepto abstracto que no podrás palpar o asociar a un sistema físico clásico.
Ante todo esto, ¿qué es la computación cuántica o computadores cuánticos?
Para responderlo podemos iniciar reflexionando, por un lado sobre la frase que el científico Albert Einstein expuso “no podemos solucionar nuestros problemas con las mismas líneas de pensamiento que usamos cuando los creamos» , y por otro, sobre el estudio realizado por este mismo científico acerca de la ley del efecto fotoeléctrico. Estudio en el que planteó: ¿es la luz una onda o una partícula? con lo cual se creó la dualidad onda-partícula en la física, es decir que la luz no era una onda o una partícula: era ambas cosas. En la física, las ondas y las partículas tienen un tratamiento diferente donde cada una obedece a sus propias reglas matemáticas. La partícula es todo aquello que se puede cuantificar y que en teoría es posible tocar o palpar, mientras la onda tiene la capacidad de atravesar de un lugar a otro y no la puedes tocar. Todo esto, y las ideas previas de Max Planck donde planteó que había un problema en aceptar únicamente a la luz como onda, dejando el planteamiento que la luz viajaba en «paquetes» de una gran «cuantía» de energía, lo que dió origen a la mecánica cuántica, una rama que estudia la naturaleza a escala atómica y subatómica, o lo que entendemos como el universo de lo ultrapequeño, donde sus leyes físicas son muy diferentes a aquellas que gobiernan el mundo clásico que está a nuestro alrededor. De acuerdo a lo anterior, podemos decir que un computador cuántico son dispositivos que usan las leyes físicas del mundo ultrapequeño para realizar cálculos de formas más veloces, operaciones novedosas en Qubit y mejoradas a escalas exponenciales inimaginables , o eso por lo menos es lo que la comunidad científica y académica espera que podamos tener y utilizar industrialmente a principios del 2030.
Si el bit cuántico o Qubit representa la unidad mínima de la información cuántica, donde Q = a * Cero + b * Uno (siendo Q=Cero o q=Uno), con a y b como flotantes imaginarios, esto nos abre un sin límite de operaciones sobre todas las combinaciones posibles de entradas. Con ello, encontraremos un escalamiento exponencial tan potente que desde 1 quantum de 1Mhz hasta 1 Ghz podríamos realizar operaciones matemáticas inalcanzables a velocidades inimaginables, obteniendo resultados en par de días o horas que hoy podrían tardar 5 o 10 años. En esa relación, almacenar datos en 1 qubit, 5 qubits, 30 qubits representarían alrededor de 16 Gb, 40 qubits -> 16 Tb, 50 qubits -> 16 Pb, 250 qubits sería algo inimaginable en términos de computadores y bits tradicionales.
Por supuesto, esto viene con una gran expectativa, porque a la fecha aún no tenemos estos dispositivos físicos de computación cuántica a esa escala de trabajo y a disposición de la industria. Entonces, ¿dónde estamos hoy? En lo que se llama el régimen cuántico de la escala intermedia de ruido, o para otros entramos en la segunda revolución cuántica, que está lejos del final global donde queremos estar, pero es un comienzo prometedor para las exploraciones tempranas.
Por último, quisiera terminar con estos interrogantes relacionados a la ciencia de datos:
¿Se podrá acelerar el entrenamiento ¿Se generarán mejores modelos? ¿Cómo responderá un nuevo modelo habilitado por la computación cuántica?
Quedan años para dar respuesta sólida a estos interrogantes, pero no estamos lejos. Las proyecciones de grandes empresas que están en la lucha por gobernar este territorio como, IBM, Google, Microsoft, AWS, o empresas Chinas que están en la carrera por liderar en este territorio, dan luces que las computadoras cuánticas nos brindarán la capacidad real de emplear soluciones precisas y mucho más rápidas que el tiempo que se requiere hoy en día para realizar un entrenamiento clásico usando aproximaciones.
Claro está, esto implica que tenemos que desarrollar nuevas habilidades para aprender a construir un algoritmo cuántico y un nuevo lenguaje de desarrollo que lo soporte, dentro de esta competencia ya encontramos plataformas que podemos explorar para comprender mejor el concepto y realizar simulaciones, tales como, Azure Quantum Compute, Amazon Braket, IBM Cloud Quantum, GCP Quantumai, Google TensorFlow Quantum, los cuales cuentan con varios kit de desarrollo de software open source y multiplataforma.
(Fuente de la imagen de cabecera: https://www.flickr.com/photos/arkhangellohim/8553864053/in/photostream/)