Quantum computing & machine learning. Data Science Łódź #16 review

Our growing interest in data science and big data led us to attend the Data Science Łódź #16 meetup. While machine learning with the use of quantum computers still technically counts as data processing, it’s on a level mankind has not seen before.

Read on and learn the key concepts in the field of quantum machine learning (QML).

Komputer kwantowy IBM Q
Quantum computer IBM Q. Connie Zhou/IBM (Flickr).

Maciej Adamiak of SoftwareMill and Adam Mickiewicz University in his informative presentation titled “Quantum-assisted machine learning” demonstrated a machine learning algorithm that combines the operating principles of a classical computer with those of a quantum computer. He also showed examples of Python source code written to run on a quantum computer. It ran on IBM cloud services with the help of a number of libraries.

We were surprised by the high substantive level of the meetup. Not only the speaker, but also the members of the audience were very knowledgeable – both in the broad field of data science and the cutting edge subject of quantum machine learning.

As a summary of the talk, we’re going to describe the basic concepts and a couple interesting facts on the current state of the field of quantum computing.

Qubits – units of information in quantum computers

One gigabyte of data stored using binary bits can be represented by as little as 30 qubits (the fundamental units used in a quantum computer). Machines operating on qubits can perform multiple computations at the same time, unlike classical computers. This doesn’t mean their broad use could be affordable anytime soon.

It is anticipated that quantum computers need a few more years to beat classical computers in computing power. The few existing machines can only process about 30 qubits.

Faster algorithms thanks to quantum entanglement

Quantum computers produce results in a shorter amount of time. Let’s assume we have an algorithm of O(n) complexity – for instance, an algorithm that processes every element of an n-element vector. With a quantum computer, a definitive result can be produced after checking just a few elements (with constant O(1) complexity). This is due to the “entanglement” of the elements of the vector in a quantum computer, analogous to the quantum entanglement of two particles.

Randomness in a quantum computer

A quantum computer is capable of producing true randomness, while traditional computers always need some form of seed. With quantum computers, a qubit can be put in a state of superposition in which the probability of it being a value of either 1 or 0 is split equally. This leads to a true (i.e. originating from quantum nature) non-deterministic result.

Difficulties of quantum computations

As of now, using a quantum computer comes with a number of hurdles. For a start, one needs to get familiar with the complicated knowledge of describing algorithms in a quantum computer. Executing computations with the current technology requires extreme carefulness and scrupulousness. For instance, it’s vital that the number of quantum gates is kept at a minimum, otherwise the result may get distorted by noise, up to a point of becoming random.

Availability of quantum computers

There are no commercially available quantum computers and probably won’t appear for quite some time. IBM offers a cloud based solution that allows the use of a quantum computer connected to a classical system. The IBM Q machine is located in a specially constructed facility, because it must operate in complete isolation from external factors. It is contained in a cube-shaped glass box with an edge of 2.7 meters, with the temperature brought down close to absolute zero (-273 C). It must be protected from any fluctuations in temperature, as well as from factors such as loud sounds, vibrations, or radiation. The slightest change of physical conditions affecting the machine can cause the qubits to lose their essential properties.

Python program running on a quantum computer (Jupyter tool)
Python program running on a quantum computer, shown using the Jupyter tool.

Machine learning and data science have become a part of many IT projects. There will be more and more attempts to make use of quantum computers to perform the calculations.

Today’s experiments with building a bridge between the quantum world and traditional computing are well described by this quote from Terry Pratchett, mentioned by Maciej Adamiak:

“In fact, the mere act of opening the box will determine the state of the cat, although in this case there were three determinate states the cat could be in: these being Alive, Dead, and Bloody Furious”

Terry Pratchett