Expressing a matrix product of a matrix and a hadamard product as a hadamard product of matrix products

55 Views Asked by At

I have a matrix $\mathbf{X}\in\mathbb{C}^{N\times K}$ which undergoes a transform (specifically the ZCA whitening transform) represented by $\mathbf{W}\in\mathbb{C}^{N\times N}$ to form $\mathbf{Y} = \mathbf{W}\mathbf{X}$. Now the issue is that most of my algorithm is in the whitened coordinate i.e. I am working with $\mathbf{Y}$. However, there is one specific part of the algorithm where I need to calculate $\mathbf{Z}=\mathbf{X}\circ\mathbf{\Phi}$ i.e. a Hadamard product. Would be there be a way for me to get to $\mathbf{Q} = \mathbf{W}\mathbf{Z}$ directly from $\mathbf{Y}$ without going back to $\mathbf{X}$?

I have \begin{align} q_{ij} &= \sum_{k}w_{ik}z_{kj}\\ &=\sum_{k}w_{ik}(x_{kj}\phi_{kj})\\ &=\sum_{k}w_{ik}x_{kj}\phi_{kj}\\ \end{align} and \begin{align} y_{ij} &= \sum_{k}w_{ik}x_{kj} \end{align} but I couldn't quite go anywhere from here due to the summation involved

I have considered this as well \begin{align} \newcommand{vec}[1]{\operatorname{vec}(#1)} \vec{\mathbf{W}\mathbf{Z}} &=(\mathbf{I}_N \otimes \mathbf{W})\vec{\mathbf{Z}}\\ &=(\mathbf{I}_N \otimes \mathbf{W})\vec{\mathbf{X}\circ\mathbf{\Phi}}\\ &=(\mathbf{I}_N \otimes \mathbf{W})(\vec{\mathbf{X}}\circ\vec{\mathbf{\Phi}})\\ \end{align} but there isn't much else I can do to reform $\mathbf{Y}$ from there either.