Beispiel #1
0
def test_update_alpha():
    ips = init_ips(M, K, alpha, docs)
    
    new_alpha = update_alpha(M, ips, alpha)

    # gradient should be close to zeros after convergence
    assert_array_almost_equal(gradient_g(M, new_alpha, ips),
                              np.zeros(new_alpha.shape))
Beispiel #2
0
def test_gradiant_g():
    ips = init_ips(M, K, alpha, docs)
    g = gradient_g(M, alpha, ips)

    for i in xrange(K):
        expected = (M * (psi(alpha.sum()) - psi(alpha[i])) +
                    np.sum([(psi(ips[d, i]) -
                             psi(ips[d, :].sum()))
                            for d in xrange(M)]))
        actual = g[i]
        assert_array_almost_equal(expected, actual)