def _initialize(self):
if self._mean is None or self._cov is None:<EOL><INDENT>return<EOL><DEDENT>Q = self._cov["<STR_LIT>"][<NUM_LIT:0>][<NUM_LIT:0>]<EOL>S = self._cov["<STR_LIT>"][<NUM_LIT:1>]<EOL>if S.size > <NUM_LIT:0>:<EOL><INDENT>self.tau[:] = <NUM_LIT:1> / npsum((Q * sqrt(S)) ** <NUM_LIT:2>, axis=<NUM_LIT:1>)<EOL><DEDENT>else:<EOL><INDENT>self.tau[:] = <NUM_LIT:0.0><EOL><DEDENT>self.eta[:] = self._mean<EOL>self.eta[:] *= self.tau<EOL>
r"""Initialize the mean and covariance of the posterior.

        Given that :math:`\tilde{\mathrm T}` is a matrix of zeros right before
        the first EP iteration, we have

        .. math::

            \boldsymbol\mu = \mathrm K^{-1} \mathbf m ~\text{ and }~
            \Sigma = \mathrm K

        as the initial posterior mean and covariance.