Exemplo n.º 1
0
         feats=feat_col)
#%%
fig = plot_spectra(
    eva_col,
    figdir=figdir,
    titstr="DCGAN",
)
#%%
corr_mat_log, corr_mat_lin = compute_hess_corr(eva_col,
                                               evc_col,
                                               figdir=figdir,
                                               use_cuda=False)
# without cuda 2:12 mins, with cuda 6:55
#%%
fig1, fig2 = plot_consistentcy_mat(corr_mat_log,
                                   corr_mat_lin,
                                   figdir=figdir,
                                   titstr="DCGAN")
fig11, fig22 = plot_consistency_hist(corr_mat_log,
                                     corr_mat_lin,
                                     figdir=figdir,
                                     titstr="DCGAN")
#%%
fig3 = plot_consistency_example(
    eva_col,
    evc_col,
    figdir=figdir,
    nsamp=5,
    titstr="DCGAN",
)
Exemplo n.º 2
0
    eigval_col=eva_ctrl,
)
# compute and plot the correlation between hessian at different points
corr_mat_log_ctrl, corr_mat_lin_ctrl = compute_hess_corr(eva_ctrl,
                                                         evc_ctrl,
                                                         figdir=figdir,
                                                         use_cuda=True,
                                                         savelabel=modelnm)
fig1, fig2 = plot_consistentcy_mat(corr_mat_log_ctrl,
                                   corr_mat_lin_ctrl,
                                   figdir=figdir,
                                   titstr="%s" % modelnm,
                                   savelabel=modelnm)
fig11, fig22 = plot_consistency_hist(corr_mat_log_ctrl,
                                     corr_mat_lin_ctrl,
                                     figdir=figdir,
                                     titstr="%s" % modelnm,
                                     savelabel=modelnm)
fig3 = plot_consistency_example(eva_ctrl,
                                evc_ctrl,
                                figdir=figdir,
                                nsamp=5,
                                titstr="%s" % modelnm,
                                savelabel=modelnm)
#%%
with np.load(join(figdir, "spectra_col_%s.npz" % modelnm)) as data:
    eva_ctrl = data["eigval_col"]
with np.load(join(realfigdir, "spectra_col_face256_BP.npz")) as data:
    eva_real = data["eigval_col"]
fig0 = plot_spectra(eva_real,
                    savename="StyleGAN_shuffle_spectrum_cmp",
Exemplo n.º 3
0
#%
figdir = r"E:\OneDrive - Washington University in St. Louis\Hessian_summary\StyleGAN2_wspace"
os.makedirs(figdir, exist_ok=True)
# Load the Hessian NPZ
eva_col, evc_col, feat_col, meta = scan_hess_npz(savedir, "Hess_BP_(\d*).npz", featkey="feat")
# compute the Mean Hessian and save
H_avg, eva_avg, evc_avg = average_H(eva_col, evc_col, )
np.savez(join(figdir, "H_avg_%s.npz"%modelnm), H_avg=H_avg, eva_avg=eva_avg, evc_avg=evc_avg, feats=feat_col)
# compute and plot spectra
fig0 = plot_spectra(eigval_col=eva_col, savename="%s_spectrum"%modelnm, figdir=figdir)
np.savez(join(figdir, "spectra_col_%s.npz"%modelnm), eigval_col=eva_col, )
# compute and plot the correlation between hessian at different points
corr_mat_log, corr_mat_lin = compute_hess_corr(eva_col, evc_col, figdir=figdir, use_cuda=False, savelabel=modelnm)
corr_mat_vec = compute_vector_hess_corr(eva_col, evc_col, figdir=figdir, use_cuda=False, savelabel=modelnm)
fig1, fig2 = plot_consistentcy_mat(corr_mat_log, corr_mat_lin, figdir=figdir, titstr="%s"%modelnm, savelabel=modelnm)
fig11, fig22 = plot_consistency_hist(corr_mat_log, corr_mat_lin, figdir=figdir, titstr="%s"%modelnm,
                                    savelabel=modelnm)
fig3 = plot_consistency_example(eva_col, evc_col, figdir=figdir, nsamp=5, titstr="%s"%modelnm, savelabel=modelnm)
fig3 = plot_consistency_example(eva_col, evc_col, figdir=figdir, nsamp=3, titstr="%s"%modelnm, savelabel=modelnm)

#%% "stylegan2-cat-config-f"
modelname = "stylegan2-cat-config-f"
modelnm = "stylegan2-cat-config-f"+"_wspace"
modelsnm = "Cat256"
SGAN = loadStyleGAN2(modelname+".pt", size=256, channel_multiplier=2)
G = StyleGAN2_wrapper(SGAN)
G.use_wspace(True)
savedir = join(rootdir, modelname+"_wspace")
os.makedirs(savedir, exist_ok=True)
#%%
img = G.visualize(G.StyleGAN.get_latent(torch.randn(5, 512).cuda()))
ToPILImage()(make_grid(img).cpu()).show()
Exemplo n.º 4
0
    eigval_col=eva_ctrl,
)
# compute and plot the correlation between hessian at different points
corr_mat_log_ctrl, corr_mat_lin_ctrl = compute_hess_corr(eva_ctrl,
                                                         evc_ctrl,
                                                         figdir=figdir,
                                                         use_cuda=True,
                                                         savelabel=label)
fig1, fig2 = plot_consistentcy_mat(corr_mat_log_ctrl,
                                   corr_mat_lin_ctrl,
                                   figdir=figdir,
                                   titstr="%s" % label,
                                   savelabel=label)
fig11, fig22 = plot_consistency_hist(corr_mat_log_ctrl,
                                     corr_mat_lin_ctrl,
                                     figdir=figdir,
                                     titstr="%s" % label,
                                     savelabel=label)
fig3 = plot_consistency_example(eva_ctrl,
                                evc_ctrl,
                                figdir=figdir,
                                nsamp=5,
                                titstr="%s" % label,
                                savelabel=label)
fig3 = plot_consistency_example(eva_ctrl,
                                evc_ctrl,
                                figdir=figdir,
                                nsamp=3,
                                titstr="%s" % label,
                                savelabel=label)
Exemplo n.º 5
0
H_avg, eva_avg, evc_avg = average_H(eva_ctrl, evc_ctrl)
np.savez(join(figdir, "H_avg_%s.npz"%modelnm), H_avg=H_avg, eva_avg=eva_avg, evc_avg=evc_avg, feats=feat_ctrl)
# compute and plot spectra
fig0 = plot_spectra(eigval_col=eva_ctrl, savename="%s_spectrum"%modelnm, figdir=figdir)
fig0 = plot_spectra(eigval_col=eva_ctrl, savename="%s_spectrum_med"%modelnm, figdir=figdir, median=True)
np.savez(join(figdir, "spectra_col_%s.npz"%modelnm), eigval_col=eva_ctrl, )
# compute and plot the correlation between hessian at different points
"""Note the spectra of randinitd BigBiGAN doesn't make sense we use randomly initialized one instead"""
#%%
corr_mat_log_ctrl, corr_mat_lin_ctrl = compute_hess_corr(eva_ctrl+1E-7, evc_ctrl, figdir=figdir, use_cuda=True,
                                                         savelabel=modelnm+"shift1E-7")
corr_mat_vec_ctrl = compute_vector_hess_corr(eva_ctrl+1E-7, evc_ctrl, figdir=figdir, use_cuda=True,
                                                         savelabel=modelnm+"shift1E-7")
fig1, fig2 = plot_consistentcy_mat(corr_mat_log_ctrl, corr_mat_lin_ctrl, figdir=figdir, titstr="%s"%modelnm+"shift1E-7",
                                   savelabel=modelnm)
fig11, fig22 = plot_consistency_hist(corr_mat_log_ctrl, corr_mat_lin_ctrl, figdir=figdir, titstr="%s"%modelnm+"shift1E-7",
                                    savelabel=modelnm)
fig3 = plot_consistency_example(eva_ctrl+1E-7, evc_ctrl, figdir=figdir, nsamp=5, titstr="%s"%modelnm+"shift1E-7", savelabel=modelnm)
#%%
with np.load(join(figdir, "spectra_col_%s.npz"%modelnm)) as data:
    eva_ctrl = data["eigval_col"]
with np.load(join(realfigdir, "spectra_col.npz")) as data:
    eva_real = data["eigval_col"]
fig0 = plot_spectra(eva_real, savename="BigBiGAN_randinit_spectrum_cmp", figdir=figdir, abs=True,
            titstr="BigBiGAN cmp", label="real", fig=None)
fig0 = plot_spectra(eva_ctrl, savename="BigBiGAN_randinit_spectrum_cmp", figdir=figdir, abs=True,
            titstr="BigBiGAN cmp", label="randinitd", fig=fig0)
#%%
with np.load(join(realfigdir, "Hess__corr_mat.npz")) as data:
    corr_mat_log, corr_mat_lin = data["corr_mat_log"], data["corr_mat_lin"]
fig11, fig22 = plot_consistency_hist(corr_mat_log, corr_mat_lin, figdir=figdir, titstr="%s"%"real",
                                    savelabel="BigBiGAN_randinit_cmp")
Exemplo n.º 6
0
#%% Comparing Consistency?
modelnm = "ffhq-512-avg-tpurun1"
modelsnm = "Face512"
modelnm = "ffhq-256-config-e-003810"
modelsnm = "Face256"
for modelnm, modelsnm in zip(modelnms, shortnms):
    label = modelnm + "_fix"
    data = np.load(join(summaryroot, label, "Hess_%s_corr_mat.npz" % label))
    corr_mat_log, corr_mat_lin = data['corr_mat_log'], data['corr_mat_lin']
    label = modelnm + "_fix_ctrl"
    data = np.load(join(summaryroot, label, "Hess_%s_corr_mat.npz" % label))
    corr_mat_log_ctrl, corr_mat_lin_ctrl = data['corr_mat_log'], data[
        'corr_mat_lin']
    fig11, fig22 = plot_consistency_hist(
        corr_mat_log,
        corr_mat_lin,
        figdir=summaryroot,
        label="fix",
        savelabel="SG2_%s_shuffle_cmp_Zspace" % modelsnm)
    fig11, fig22 = plot_consistency_hist(
        corr_mat_log_ctrl,
        corr_mat_lin_ctrl,
        figdir=summaryroot,
        label="fix_shuffle",
        savelabel="SG2_%s_shuffle_cmp_Zspace" % modelsnm,
        figs=(fig11, fig22))

    label = modelnm + "_W_fix"
    data = np.load(join(summaryroot, label, "Hess_%s_corr_mat.npz" % label))
    corr_mat_log, corr_mat_lin = data['corr_mat_log'], data['corr_mat_lin']
    label = modelnm + "_W_fix_ctrl"
    data = np.load(join(summaryroot, label, "Hess_%s_corr_mat.npz" % label))