def _forward_prop_deterministic_thru_cav(self, n, x, alpha):
"""Summary
Args:
n (TYPE): Description
x (TYPE): Description
alpha (TYPE): Description
Returns:
TYPE: Description
"""
muhat, Suhat, SuinvMuhat, Suinvhat = self.compute_cavity(n, alpha)
Kuuinv = self.Kuuinv
Ahat = np.einsum('ab,ndb->nda', Kuuinv, muhat)
Bhat = np.einsum(
'ab,ndbc->ndac',
Kuuinv, np.einsum('ndab,bc->ndac', Suhat, Kuuinv)) - Kuuinv
kff = np.exp(2 * self.sf)
kfu = compute_kernel(2 * self.ls, 2 * self.sf, x, self.zu)
mout = np.einsum('nm,ndm->nd', kfu, Ahat)
Bkfukuf = np.einsum('ndab,na,nb->nd', Bhat, kfu, kfu)
vout = kff + Bkfukuf
extra_res = [muhat, Suhat, SuinvMuhat, Suinvhat, kfu, Ahat, Bhat]
return mout, vout, extra_res
评论列表
文章目录