def _expectation(p, kern, feat, none2, none3, nghp=None):
    r"""
    Compute the expectation:
    <\Sum_i Ki_{X, Z}>_p(X)
        - \Sum_i Ki_{.,.} :: Sum kernel

    :return: NxM
    """
    return functools.reduce(tf.add, [
        expectation(p, (k, feat), nghp=nghp) for k in kern.kernels])
def _expectation ( p , kern , feat , none2 , none3 , nghp = None ) : return functools . reduce ( tf . add , [ expectation ( p , ( k , feat ) , nghp = nghp ) for k in kern . kernels ] )
r"""
    Compute the expectation:
    <\Sum_i Ki_{X, Z}>_p(X)
        - \Sum_i Ki_{.,.} :: Sum kernel

    :return: NxM