(feat_a_pre, feat_bp, pmab, layer, l)
return feat_ap_pre
Reconstruct F_AP^[L-1] from F_A^[L-1], F_BP^[L] and  \phi_[a->b]^L, CNN_[L-1]^[L]
Reconstruct F_AP^[L-1] from F_A^[L-1], F_BP^[L] and  \phi_[a->b]^L, CNN_[L-1]^[L]
Reconstruct F_AP^ [ L - 1 ] from F_A^ [ L - 1 ] F_BP^ [ L ] and \ phi_ [ a - > b ] ^L CNN_ [ L - 1 ] ^ [ L ]
def reconstruction(feat_a_pre, feat_bp, pmab, layer, l):
    """
    Reconstruct F_AP^[L-1] from F_A^[L-1], F_BP^[L] and  \phi_[a->b]^L, CNN_[L-1]^[L]
    """
    re_feat_bp_pre = deconvolve(feat_bp, pmab, layer, tuple(feat_a_pre.size()))
    w_a_pre = weight_from_feat(feat_a_pre) * ALPHA[l-1]
    feat_ap_pre = weighted_blend(feat_a_pre, w_a_pre, re_feat_bp_pre)
    return feat_ap_pre
def reconstruction ( feat_a_pre , feat_bp , pmab , layer , l ) : re_feat_bp_pre = deconvolve ( feat_bp , pmab , layer , tuple ( feat_a_pre . size ( ) ) ) w_a_pre = weight_from_feat ( feat_a_pre ) * ALPHA [ l - 1 ] feat_ap_pre = weighted_blend ( feat_a_pre , w_a_pre , re_feat_bp_pre ) return feat_ap_pre