Exemplo n.º 1
0
def meanfield_example(true_model, X, Z_true, mask):
    # Fit a test model
    model = FactorAnalysis(
        D_obs, D_latent,
        # W=true_model.W, sigmasq=true_model.sigmasq
        )
    inf_data = model.add_data(X, mask=mask)
    model.set_empirical_mean()

    lps = []
    angles = []
    N_iters = 100
    for _ in progprint_xrange(N_iters):
        model.meanfield_coordinate_descent_step()
        lps.append(model.expected_log_likelihood())
        E_W, _, _, _ = model.regression.mf_expectations
        angles.append(principal_angle(true_model.W, E_W))

    plot_results(lps, angles, Z_true, inf_data.Z)
Exemplo n.º 2
0
def meanfield_example(true_model, true_data):
    X, mask = true_data.X, true_data.mask

    # Fit a test model
    model = FactorAnalysis(
        D_obs, D_latent,
        # W=true_model.W, sigmasq=true_model.sigmasq
        )
    inf_data = model.add_data(X, mask=mask)

    lps = []
    angles = []
    N_iters = 100
    for _ in progprint_xrange(N_iters):
        model.meanfield_coordinate_descent_step()
        lps.append(model.expected_log_likelihood())
        E_W, _, _, _ = model.regression.mf_expectations
        angles.append(principal_angle(true_model.W, E_W))

    plot_results(lps, angles, true_data.Z, inf_data.Z)