Skip to content

Commit a6e0e55

Browse files
committed
add hessian data loading code
1 parent ef5ca30 commit a6e0e55

File tree

2 files changed

+210
-8
lines changed

2 files changed

+210
-8
lines changed

core/image_inversion.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
# from GAN_utils import StyleGAN2_wrapper, loadStyleGAN2
2323
from pytorch_pretrained_biggan import truncated_noise_sample, one_hot_from_int
2424
from lpips import LPIPS
25-
from load_hessian_data import load_Haverage
26-
from torch_utils import show_imgrid, save_imgrid, ToPILImage, make_grid
25+
from .load_hessian_data import load_Haverage
26+
from .torch_utils import show_imgrid, save_imgrid, ToPILImage, make_grid
2727
def MSE(im1, im2, mask=None):
2828
"""Distance function between images. consider loss weighted by mask if available
2929
Inputs:
@@ -567,16 +567,15 @@ def load_BigGAN_basis():
567567
basisdict = {"all": evc_all, "sep": evc_sep, "none": evc_none}
568568
return basisdict # evc_all, evc_sep, evc_none
569569

570-
#%%
571570
if __name__ is "__main__":
572-
from GAN_utils import loadBigGAN, BigGAN_wrapper
571+
from .GAN_utils import loadBigGAN, BigGAN_wrapper
573572
BGAN = loadBigGAN()
574573
G = BigGAN_wrapper(BGAN)
575574
ImDist = LPIPS(net="squeeze", ).cuda()
576575
ImDist.requires_grad_(False)
577576
basisdict = load_BigGAN_basis()
578577
imroot = r"src"
579-
imgnm =
578+
imgnm = r"monkey.jpg"
580579
saveroot = r"results"
581580
srcimg = plt.imread(join(imroot, imgnm))
582581
srcimg_rsz = crop_rsz(srcimg, crop_param="center", )
@@ -586,9 +585,9 @@ def load_BigGAN_basis():
586585
cmasteps=80, gradsteps=0, finalgrad=400, batch_size=30, basis="all", basisvec=basisdict["all"],
587586
CMApostAdam=False, savedir=saveroot, imgnm=imgnm+"_cma_pen", classvec_init=monkey_vec,
588587
L2penalty=(0.09, 0), classpenalty=0.4)
589-
# imgs_final, codes_final, scores_final, L1score_final, Record = BasinCMA_BigGAN(srctsr_rsz, G, ImDist,
590-
# cmasteps=10, gradsteps=10, finalgrad=500, batch_size=4, basis="all", basisvec=basisdict["all"],
591-
# CMApostAdam=False, savedir=saveroot, imgnm=imgnm)
588+
# imgs_final, codes_final, scores_final, L1score_final, Record = BasinCMA_BigGAN(srctsr_rsz, G, ImDist,
589+
# cmasteps=10, gradsteps=10, finalgrad=500, batch_size=4, basis="all", basisvec=basisdict["all"],
590+
# CMApostAdam=False, savedir=saveroot, imgnm=imgnm)
592591
#%%
593592
from GAN_utils import loadStyleGAN2, StyleGAN2_wrapper
594593
imroot = r"src"

core/load_hessian_data.py

Lines changed: 203 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,203 @@
1+
"""Utils to load the computed Hessian information. Data management."""
2+
import torch
3+
import numpy as np
4+
import os, os.path, sys
5+
from os.path import join
6+
if sys.platform == "linux":
7+
summarydir = r"/scratch/binxu/Hessian_summary"
8+
else:
9+
summarydir = r"E:\OneDrive - Washington University in St. Louis\Hessian_summary"
10+
11+
def load_Hcorrmat(GAN, spec=None, nandiag=True):
12+
matchstr = GAN
13+
if matchstr not in corrmat_npz_dict:
14+
print(list(corrmat_npz_dict), " Choose from these.")
15+
Hccpath = join(summarydir, corrmat_npz_dict[matchstr])
16+
with np.load(Hccpath) as data:
17+
print(list(data))
18+
corr_mat_log, corr_mat_lin, = data['corr_mat_log'], data['corr_mat_lin']
19+
corr_mat_log_nodiag, corr_mat_lin_nodiag = corr_mat_log.copy(), corr_mat_lin.copy()
20+
np.fill_diagonal(corr_mat_log_nodiag, np.nan)
21+
np.fill_diagonal(corr_mat_lin_nodiag, np.nan)
22+
cclogmean, cclogstd = np.nanmean(corr_mat_log), np.nanstd(corr_mat_log)
23+
cclinmean, cclinstd = np.nanmean(corr_mat_lin), np.nanstd(corr_mat_lin)
24+
print("log scale corr %.3f(%.3f), lin scale corr %.3f(%.3f)" % (cclogmean, cclogstd, cclinmean, cclinstd))
25+
if nandiag:
26+
return corr_mat_log_nodiag, corr_mat_lin_nodiag
27+
else:
28+
return corr_mat_log, corr_mat_lin
29+
30+
def load_Haverage(GAN, spec=None, descend=None, abssort=True):
31+
if os.path.exists(GAN):
32+
with np.load(GAN) as data:
33+
H, eva, evc = data["H_avg"], data["eva_avg"], data["evc_avg"]
34+
else:
35+
# if spec is None:
36+
matchstr = GAN
37+
if matchstr not in Havg_npz_dict:
38+
print(list(Havg_npz_dict), " Choose from these.")
39+
Hpath = join(summarydir, Havg_npz_dict[matchstr])
40+
with np.load(Hpath) as data:
41+
print(list(data))
42+
if GAN == "BigGAN":
43+
if spec == "class":
44+
H, eva, evc = data["H_clas_avg"], data["eigvals_clas_avg"], data["eigvects_clas_avg"]
45+
elif spec == "noise":
46+
H, eva, evc = data["H_nois_avg"], data["eigvals_nois_avg"], data["eigvects_nois_avg"]
47+
else:
48+
H, eva, evc = data["H_avg"], data["eigvals_avg"], data["eigvects_avg"]
49+
elif GAN == "fc6GAN":
50+
H, eva, evc = data['H_avg'], data['eigv_avg'], data['eigvect_avg']
51+
else:
52+
H, eva, evc = data["H_avg"], data["eva_avg"], data["evc_avg"]
53+
if descend is None: # if not descent then ascend by default.
54+
return H, eva, evc
55+
if abssort:
56+
eva = np.abs(eva)
57+
if descend:
58+
sort_idx = np.argsort(-eva)
59+
else:
60+
sort_idx = np.argsort(eva)
61+
eva = eva[sort_idx].copy()
62+
evc = evc[:, sort_idx].copy()
63+
return H, eva, evc
64+
65+
Havg_npz_dict = {"fc6GAN": "fc6GAN/Evolution_Avg_Hess.npz",
66+
"DCGAN": "DCGAN/H_avg_DCGAN.npz",
67+
"BigGAN": "BigGAN/H_avg_1000cls.npz",
68+
"BigGAN_noise": "BigGAN/H_avg_1000cls.npz",
69+
"BigGAN_class": "BigGAN/H_avg_1000cls.npz",
70+
"BigBiGAN": "BigBiGAN/H_avg_BigBiGAN.npz",
71+
"PGGAN": "PGGAN/H_avg_PGGAN.npz",
72+
"StyleGAN-Face*": "StyleGAN/H_avg_StyleGAN.npz",
73+
"StyleGAN2-Face512*": "StyleGAN2/H_avg_ffhq-512-avg-tpurun1.npz",
74+
"StyleGAN2-Face256*": "StyleGAN2/H_avg_ffhq-256-config-e-003810.npz",
75+
"StyleGAN2-Cat256*": "StyleGAN2/H_avg_stylegan2-cat-config-f.npz",
76+
"StyleGAN2-Face1024*": "StyleGAN2_Fix/stylegan2-face1024-noise/H_avg_StyleGAN2-Face1024_Z.npz",
77+
"StyleGAN-Face_Z": "StyleGAN_Fix/StyleGAN_Face256_fix/H_avg_StyleGAN_Face256_fix.npz",
78+
"StyleGAN2-Face512_Z": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix/H_avg_ffhq-512-avg-tpurun1_fix.npz",
79+
"StyleGAN2-Face256_Z": "StyleGAN2_Fix/ffhq-256-config-e-003810_fix/H_avg_ffhq-256-config-e-003810_fix.npz",
80+
"StyleGAN2-Cat256_Z": "StyleGAN2_Fix/stylegan2-cat-config-f_fix/H_avg_stylegan2-cat-config-f_fix.npz",
81+
"StyleGAN2-Face1024_Z": "StyleGAN2_Fix/stylegan2-ffhq-config-f_fix/H_avg_StyleGAN_FFHQ1024.npz",
82+
"StyleGAN-Face_W": "StyleGAN_Fix/StyleGAN_Face256_W_fix/H_avg_StyleGAN_Face256_W_fix.npz",
83+
"StyleGAN2-Face512_W": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix/H_avg_ffhq-512-avg-tpurun1_W_fix.npz",
84+
"StyleGAN2-Face256_W": "StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix/H_avg_ffhq-256-config-e-003810_W_fix.npz",
85+
"StyleGAN2-Cat256_W": "StyleGAN2_Fix/stylegan2-cat-config-f_W_fix/H_avg_stylegan2-cat-config-f_W_fix.npz",
86+
"WaveGAN_piano_MSE": "WaveGAN/H_avg_WaveGAN_piano_MSE.npz",
87+
"WaveGAN_piano_STFT": "WaveGAN/H_avg_WaveGAN_piano_STFT.npz",
88+
}
89+
90+
spectra_npz_dict = {"fc6GAN": "FC6GAN/spectra_col_evol.npz",
91+
"DCGAN": "DCGAN/spectra_col_BP.npz",
92+
"BigGAN": "BigGAN/spectra_col.npz",
93+
"BigGAN_noise": "BigGAN/spectra_col.npz",
94+
"BigGAN_class": "BigGAN/spectra_col.npz",
95+
"BigBiGAN": "BigBiGAN/spectra_col.npz",
96+
"PGGAN": "PGGAN/spectra_col_BP.npz",
97+
"StyleGAN-Face*": "StyleGAN/spectra_col_face256_BP.npz",
98+
"StyleGAN2-Face512*": "StyleGAN2/spectra_col_FFHQ512.npz",
99+
"StyleGAN2-Face256*": "StyleGAN2/spectra_col_ffhq-256-config-e-003810_BP.npz",
100+
"StyleGAN2-Cat256*": "StyleGAN2/spectra_col_stylegan2-cat-config-f_BP.npz",
101+
"StyleGAN-Face_Z": "StyleGAN_Fix/StyleGAN_Face256_fix/spectra_col_StyleGAN_Face256_fix.npz",
102+
"StyleGAN2-Face512_Z": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix/spectra_col_ffhq-512-avg-tpurun1_fix.npz",
103+
"StyleGAN2-Face256_Z": "StyleGAN2_Fix/ffhq-256-config-e-003810_fix/spectra_col_ffhq-256-config-e-003810_fix.npz",
104+
"StyleGAN2-Cat256_Z": "StyleGAN2_Fix/stylegan2-cat-config-f_fix/spectra_col_stylegan2-cat-config-f_fix.npz",
105+
"StyleGAN2-Face1024_Z": "StyleGAN2_Fix/stylegan2-ffhq-config-f_fix/spectra_col_StyleGAN_FFHQ1024.npz",
106+
"StyleGAN-Face_W": "StyleGAN_Fix/StyleGAN_Face256_W_fix/spectra_col_StyleGAN_Face256_W_fix.npz",
107+
"StyleGAN2-Face512_W": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix/spectra_col_ffhq-512-avg-tpurun1_W_fix.npz",
108+
"StyleGAN2-Face256_W": "StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix/spectra_col_ffhq-256-config-e-003810_W_fix.npz",
109+
"StyleGAN2-Cat256_W": "StyleGAN2_Fix/stylegan2-cat-config-f_W_fix/spectra_col_stylegan2-cat-config-f_W_fix.npz",
110+
"WaveGAN_piano_MSE": "WaveGAN/spectra_col_WaveGAN_piano_MSE.npz",
111+
"WaveGAN_piano_STFT": "WaveGAN/spectra_col_WaveGAN_piano_STFT.npz",
112+
}
113+
114+
115+
corrmat_npz_dict = {"fc6GAN": "fc6GAN/evol_hess_corr_mat.npz",
116+
"DCGAN": "DCGAN/Hess__corr_mat.npz",
117+
"BigGAN": "BigGAN/Hess_all_consistency_corr_mat.npz",
118+
"BigGAN_noise": "BigGAN/Hess_noise_consistency_corr_mat.npz",
119+
"BigGAN_class": "BigGAN/Hess_class_consistency_corr_mat.npz",
120+
"BigBiGAN": "BigBiGAN/evol_hess_corr_mat.npz",
121+
"PGGAN": "PGGAN/Hess__corr_mat.npz",
122+
"StyleGAN-Face*": "StyleGAN/Hess__corr_mat.npz",
123+
"StyleGAN2-Face512*": "StyleGAN2/Hess_ffhq-512-avg-tpurun1_corr_mat.npz",
124+
"StyleGAN2-Face256*": "StyleGAN2/Hess_ffhq-256-config-e-003810_corr_mat.npz",
125+
"StyleGAN2-Cat256*": "StyleGAN2/Hess_stylegan2-cat-config-f_corr_mat.npz",
126+
"StyleGAN-Face_Z": "StyleGAN_Fix/StyleGAN_Face256_fix/Hess_StyleGAN_Face256_fix_corr_mat.npz",
127+
"StyleGAN2-Face512_Z": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix/Hess_ffhq-512-avg-tpurun1_fix_corr_mat.npz",
128+
"StyleGAN2-Face256_Z": "StyleGAN2_Fix/ffhq-256-config-e-003810_fix/Hess_ffhq-256-config-e-003810_fix_corr_mat.npz",
129+
"StyleGAN2-Cat256_Z": "StyleGAN2_Fix/stylegan2-cat-config-f_fix/Hess_stylegan2-cat-config-f_fix_corr_mat.npz",
130+
"StyleGAN2-Face1024_Z": "StyleGAN2_Fix/stylegan2-ffhq-config-f_fix/Hess_StyleGAN_FFHQ1024_corr_mat.npz",
131+
"StyleGAN-Face_W": "StyleGAN_Fix/StyleGAN_Face256_W_fix/Hess_StyleGAN_Face256_W_fix_corr_mat.npz",
132+
"StyleGAN2-Face512_W": "StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix/Hess_ffhq-512-avg-tpurun1_W_fix_corr_mat.npz",
133+
"StyleGAN2-Face256_W": "StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix/Hess_ffhq-256-config-e-003810_W_fix_corr_mat.npz",
134+
"StyleGAN2-Cat256_W": "StyleGAN2_Fix/stylegan2-cat-config-f_W_fix/Hess_stylegan2-cat-config-f_W_fix_corr_mat.npz",
135+
"WaveGAN_piano_MSE": "WaveGAN/Hess_WaveGAN_piano_MSE_corr_mat.npz",
136+
"WaveGAN_piano_STFT": "WaveGAN/Hess_WaveGAN_piano_STFT_corr_mat.npz",
137+
}
138+
139+
ctrl_corrmat_npz_dict = {"fc6GAN": "HessNetArchit/FC6GAN/Hess_FC6GAN_shuffle_evol_corr_mat.npz",
140+
"DCGAN": "HessNetArchit/DCGAN/Hess_DCGAN_shuffle_corr_mat.npz",
141+
"BigGAN": "HessNetArchit/BigGAN/Hess_BigGAN_shuffle_corr_mat.npz",
142+
# "BigGAN_noise": "HessNetArchit/BigGAN/Hess_noise_consistency_corr_mat.npz",
143+
# "BigGAN_class": "HessNetArchit/BigGAN/Hess_class_consistency_corr_mat.npz",
144+
"BigBiGAN": None, #"HessNetArchit/BigBiGAN/Hess_BigBiGAN_shuffle_corr_mat.npz",
145+
"PGGAN": "HessNetArchit/PGGAN/Hess_PGGAN_shuffle_corr_mat.npz",
146+
"StyleGAN-Face*": "HessNetArchit/StyleGAN/Hess_StyleGAN_shuffle_corr_mat.npz",
147+
"StyleGAN2-Face512*": "HessNetArchit/StyleGAN2/Hess_StyleGAN2_Face512_shuffle_corr_mat.npz",
148+
# "StyleGAN2-Face256*": "StyleGAN2/Hess_ffhq-256-config-e-003810_corr_mat.npz",
149+
# "StyleGAN2-Cat256*": "StyleGAN2/Hess_stylegan2-cat-config-f_corr_mat.npz",
150+
"StyleGAN-Face_Z": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_fix_ctrl/Hess_StyleGAN_Face256_fix_ctrl_corr_mat.npz",
151+
"StyleGAN2-Face512_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix_ctrl/Hess_ffhq-512-avg-tpurun1_fix_ctrl_corr_mat.npz",
152+
"StyleGAN2-Face256_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_fix_ctrl/Hess_ffhq-256-config-e-003810_fix_ctrl_corr_mat.npz",
153+
"StyleGAN2-Cat256_Z": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_fix_ctrl/Hess_stylegan2-cat-config-f_fix_ctrl_corr_mat.npz",
154+
"StyleGAN-Face_W": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_W_fix_ctrl/Hess_StyleGAN_Face256_W_fix_ctrl_corr_mat.npz",
155+
"StyleGAN2-Face512_W": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix_ctrl/Hess_ffhq-512-avg-tpurun1_W_fix_ctrl_corr_mat.npz",
156+
"StyleGAN2-Face256_W": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix_ctrl/Hess_ffhq-256-config-e-003810_W_fix_ctrl_corr_mat.npz",
157+
"StyleGAN2-Cat256_W": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_W_fix_ctrl/Hess_stylegan2-cat-config-f_W_fix_ctrl_corr_mat"
158+
".npz",
159+
}
160+
161+
ctrl_Havg_npz_dict = {"fc6GAN": "HessNetArchit/fc6GAN/H_avg_FC6GAN_shuffle_evol.npz",
162+
"DCGAN": "HessNetArchit/DCGAN/H_avg_DCGAN_shuffle.npz",
163+
"BigGAN": "HessNetArchit/BigGAN/H_avg_BigGAN_shuffle.npz",
164+
# "BigGAN_noise": "BigGAN/H_avg_1000cls.npz",
165+
# "BigGAN_class": "BigGAN/H_avg_1000cls.npz",
166+
"BigBiGAN": "HessNetArchit/BigBiGAN/H_avg_BigBiGAN_shuffle.npz",
167+
"PGGAN": "HessNetArchit/PGGAN/H_avg_PGGAN_shuffle.npz",
168+
"StyleGAN-Face*": "HessNetArchit/StyleGAN/H_avg_StyleGAN_shuffle.npz",
169+
# "HessNetArchit/StyleGAN/H_avg_StyleGAN_wspace_shuffle.npz"
170+
"StyleGAN2-Face512*": "HessNetArchit/StyleGAN2/H_avg_StyleGAN2_Face512_shuffle.npz",
171+
# "StyleGAN2-Face256*": "StyleGAN2/H_avg_ffhq-256-config-e-003810.npz",
172+
# "StyleGAN2-Cat256*": "StyleGAN2/H_avg_stylegan2-cat-config-f.npz",
173+
"StyleGAN-Face_Z": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_fix_ctrl/H_avg_StyleGAN_Face256_fix_ctrl.npz",
174+
"StyleGAN2-Face512_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix_ctrl/H_avg_ffhq-512-avg-tpurun1_fix_ctrl.npz",
175+
"StyleGAN2-Face256_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_fix_ctrl/H_avg_ffhq-256-config-e-003810_fix_ctrl.npz",
176+
"StyleGAN2-Cat256_Z": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_fix_ctrl/H_avg_stylegan2-cat-config-f_fix_ctrl.npz",
177+
"StyleGAN-Face_W": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_W_fix_ctrl/H_avg_StyleGAN_Face256_W_fix_ctrl.npz",
178+
"StyleGAN2-Face512_W": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix_ctrl/H_avg_ffhq-512-avg-tpurun1_W_fix_ctrl.npz",
179+
"StyleGAN2-Face256_W": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix_ctrl/H_avg_ffhq-256-config-e-003810_W_fix_ctrl.npz",
180+
"StyleGAN2-Cat256_W": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_W_fix_ctrl/H_avg_stylegan2-cat-config-f_W_fix_ctrl"
181+
".npz",
182+
}
183+
184+
ctrl_spectra_npz_dict = {"fc6GAN": "HessNetArchit/FC6GAN/spectra_col_FC6GAN_shuffle_evol.npz",
185+
"DCGAN": "HessNetArchit/DCGAN/spectra_col_DCGAN_shuffle.npz",
186+
"BigGAN": "HessNetArchit/BigGAN/spectra_col_BigGAN_shuffle.npz",
187+
# "BigGAN_noise": "HessNetArchit/BigGAN/spectra_col_BigGAN_shuffle.npz",
188+
# "BigGAN_class": "HessNetArchit/BigGAN/spectra_col_BigGAN_shuffle.npz",
189+
"BigBiGAN": "HessNetArchit/BigBiGAN/spectra_col.npz",
190+
"PGGAN": "HessNetArchit/PGGAN/spectra_col_PGGAN_shuffle.npz",
191+
"StyleGAN-Face*": "HessNetArchit/StyleGAN/spectra_col_StyleGAN_shuffle.npz",
192+
"StyleGAN2-Face512*": "HessNetArchit/StyleGAN2/spectra_col_StyleGAN2_Face512_shuffle.npz",
193+
# "StyleGAN2-Face256*": "StyleGAN2/spectra_col_ffhq-256-config-e-003810_BP.npz",
194+
# "StyleGAN2-Cat256*": "StyleGAN2/spectra_col_stylegan2-cat-config-f_BP.npz",
195+
"StyleGAN-Face_Z": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_fix_ctrl/spectra_col_StyleGAN_Face256_fix_ctrl.npz",
196+
"StyleGAN2-Face512_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_fix_ctrl/spectra_col_ffhq-512-avg-tpurun1_fix_ctrl.npz",
197+
"StyleGAN2-Face256_Z": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_fix_ctrl/spectra_col_ffhq-256-config-e-003810_fix_ctrl.npz",
198+
"StyleGAN2-Cat256_Z": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_fix_ctrl/spectra_col_stylegan2-cat-config-f_fix_ctrl.npz",
199+
"StyleGAN-Face_W": "Hessian_summary/StyleGAN_Fix/StyleGAN_Face256_W_fix_ctrl/spectra_col_StyleGAN_Face256_W_fix_ctrl.npz",
200+
"StyleGAN2-Face512_W": "Hessian_summary/StyleGAN2_Fix/ffhq-512-avg-tpurun1_W_fix_ctrl/spectra_col_ffhq-512-avg-tpurun1_W_fix_ctrl.npz",
201+
"StyleGAN2-Face256_W": "Hessian_summary/StyleGAN2_Fix/ffhq-256-config-e-003810_W_fix_ctrl/spectra_col_ffhq-256-config-e-003810_W_fix_ctrl.npz",
202+
"StyleGAN2-Cat256_W": "Hessian_summary/StyleGAN2_Fix/stylegan2-cat-config-f_W_fix_ctrl/spectra_col_stylegan2-cat-config-f_W_fix_ctrl.npz",
203+
}

0 commit comments

Comments
 (0)