multiplicative update using divergence objective