The hype around machine learning, particularly deep learning, has spread over the world. It is not only affecting engineers but also philosophers and government agencies, which try to predict what implications machine learning will have on our society.

When the initial excitement has subsided, I think machine learning will be an important tool that many engineers will find useful, alongside more classical tools such as optimization theory and Fourier analysis. I have spent the last two years thinking about what role deep learning can have in the field of communications. This field is rather different from other areas where deep learning has been successful: We deal with man-made systems that have designed based on rigorous theory to operate close to the fundamental performance limits, for example, the Shannon capacity. Hence, at first sight, there seems to be little room for improvement.

I have nevertheless identified two main applications of supervised deep learning in the physical layer of communication systems: 1) algorithmic approximation and 2) function inversion.

You can read about them in my recent survey paper “Two Applications of Deep Learning in the Physical Layer of Communication Systems” or watch the following video:

In the video, I’m exemplifying the applications through two recent papers where we applied deep learning to improve Massive MIMO systems. Here are links to those papers:

Trinh Van Chien, Emil Björnson, Erik G. Larsson, “Sum Spectral Efficiency Maximization in Massive MIMO Systems: Benefits from Deep Learning,” IEEE International Conference on Communications (ICC), 2019.

Özlem Tugfe Demir, Emil Björnson, “Channel Estimation in Massive MIMO under Hardware Non-Linearities: Bayesian Methods versus Deep Learning,” IEEE Open Journal of the Communications Society, 2020.

Interesting that you got lines separating the decision regions for the NN classifier. I would expect something wilder.

I was also expecting that before I started, but I think there are two reasons why that didn’t happen: 1) The training data is “easily” classified using separating lines, 2) The input to every neuron in a hidden layer is an inner product plus a scalar bias, which can be viewed as the line equation. Hence, we are basically measuring if the input vector is a point above or below a particular line, and in this case, we just had a learn some simple lines to compare against.

Very interesting. Do you think that Deep Learning could be used to decorrelate a massive MIMO channel?

I think that it could, assuming only that the level of correlation is stable. Maybe a parameter such as condition number would be useful for training.

I’m not sure what this means. I don’t think that deep learning can change the channel itself, but it can be used to design algorithms. The question is whether it can do better than existing algorithms.

I meant to decorrelate the received signal before decoding. Thanks for your answer.

Aha, I suppose you are referring to MIMO equalization/decoding/detection. I recommend you to have a look at the recent works on MIMO detection using learning. Here is one example: https://arxiv.org/abs/2002.02750