# Understanding regularization step in Meta-cell pre processing

I'm reading through this paper: Baran, Y., Bercovich, A., Sebe-Pedros, A., Lubling, Y., Giladi, A., Chomsky, E., ... & Tanay, A. (2019). MetaCell: analysis of single-cell RNA-seq data using K-nn graph partitions. Genome biology, 20(1), 1-19.

Maybe I am not familiar with this notation but I don't understand the regularization procedure as follows:

1. What is happening in these max functions? What does the 0 indicate? They have some terms $$x$$ and then in the max function they write $$max( x, 0)$$.
2. I assume $$K$$ is some regularization parameter, like a cost. Is $$s_{ij} * s_{ji}$$ the rank product? I.e. the geometric mean?

• We may suppose that $$S$$ is a matrix with dimensions indexed as $$(i, j)$$. So $$s_{ij}$$ is the cell of $$S$$ indexed to the $$i$$th row and $$j$$th column, and $$s_{ji}$$ is the cell vice versa. Therefore, symmetrizing $$S$$ is a matter of ensuring that $$s_{ij} == s_{ji}$$, which you can achieve by multiplying the (ranked?) entries. Symmetric matrices are nice for doing certain kinds of math, and yield a handy representation of undirected graphs, which the authors appear to be using for kNN.
• $$max(x, 0)$$ is just saying that you want either $$x$$ if $$x$$ is non-negative, or $$0$$ if it is negative. Thus, you make the whole matrix non-negative, which makes some handy matrix math possible. You can see how this works computationally by inspecting e.g. the Python max() function.