@@ -47,38 +47,38 @@ function compare_trained_and_untrained_flow(
47
47
return p
48
48
end
49
49
50
- function check_trained_flow (
51
- flow_trained:: Bijectors.MultivariateTransformed ,
52
- true_dist:: ContinuousMultivariateDistribution ,
53
- n_samples:: Int ;
54
- kwargs... ,
55
- )
56
- samples_trained = rand_batch (flow_trained, n_samples)
57
- samples_true = rand (true_dist, n_samples)
58
-
59
- p = Plots. scatter (
60
- samples_true[1 , :],
61
- samples_true[2 , :];
62
- label= " True Distribution" ,
63
- color= :green ,
64
- markersize= 2 ,
65
- alpha= 0.5 ,
66
- )
67
- Plots. scatter! (
68
- p,
69
- samples_trained[1 , :],
70
- samples_trained[2 , :];
71
- label= " Trained Flow" ,
72
- color= :red ,
73
- markersize= 2 ,
74
- alpha= 0.5 ,
75
- )
76
- Plots. plot! (; kwargs... )
77
-
78
- Plots. title! (p, " Trained HamFlow" )
79
-
80
- return p
81
- end
50
+ # function check_trained_flow(
51
+ # flow_trained::Bijectors.MultivariateTransformed,
52
+ # true_dist::ContinuousMultivariateDistribution,
53
+ # n_samples::Int;
54
+ # kwargs...,
55
+ # )
56
+ # samples_trained = rand_batch(flow_trained, n_samples)
57
+ # samples_true = rand(true_dist, n_samples)
58
+
59
+ # p = Plots.scatter(
60
+ # samples_true[1, :],
61
+ # samples_true[2, :];
62
+ # label="True Distribution",
63
+ # color=:green,
64
+ # markersize=2,
65
+ # alpha=0.5,
66
+ # )
67
+ # Plots.scatter!(
68
+ # p,
69
+ # samples_trained[1, :],
70
+ # samples_trained[2, :];
71
+ # label="Trained Flow",
72
+ # color=:red,
73
+ # markersize=2,
74
+ # alpha=0.5,
75
+ # )
76
+ # Plots.plot!(; kwargs...)
77
+
78
+ # Plots.title!(p, "Trained HamFlow")
79
+
80
+ # return p
81
+ # end
82
82
83
83
function create_flow (Ls, q₀)
84
84
ts = fchain (Ls)
89
89
# training function for InvertibleNetworks
90
90
# #######################
91
91
92
- function pm_next! (pm, stats:: NamedTuple )
93
- return ProgressMeter. next! (pm; showvalues= [tuple (s... ) for s in pairs (stats)])
94
- end
92
+ # function pm_next!(pm, stats::NamedTuple)
93
+ # return ProgressMeter.next!(pm; showvalues=[tuple(s...) for s in pairs(stats)])
94
+ # end
95
95
96
- function train_invertible_networks! (G, loss, data_loader, n_epoch, opt)
97
- max_iters = n_epoch * length (data_loader)
98
- prog = ProgressMeter. Progress (
99
- max_iters; desc= " Training" , barlen= 31 , showspeed= true , enabled= true
100
- )
96
+ # function train_invertible_networks!(G, loss, data_loader, n_epoch, opt)
97
+ # max_iters = n_epoch * length(data_loader)
98
+ # prog = ProgressMeter.Progress(
99
+ # max_iters; desc="Training", barlen=31, showspeed=true, enabled=true
100
+ # )
101
101
102
- nnls = []
102
+ # nnls = []
103
103
104
- # training loop
105
- time_elapsed = @elapsed for (i, xs) in enumerate (IterTools. ncycle (data_loader, n_epoch))
106
- ls = loss (G, xs) # sets gradients of G
104
+ # # training loop
105
+ # time_elapsed = @elapsed for (i, xs) in enumerate(IterTools.ncycle(data_loader, n_epoch))
106
+ # ls = loss(G, xs) #sets gradients of G
107
107
108
- push! (nnls, ls)
108
+ # push!(nnls, ls)
109
109
110
- grad_norm = 0
111
- for p in get_params (G)
112
- grad_norm += sum (abs2, p. grad)
113
- Flux. update! (opt, p. data, p. grad)
114
- end
115
- grad_norm = sqrt (grad_norm)
110
+ # grad_norm = 0
111
+ # for p in get_params(G)
112
+ # grad_norm += sum(abs2, p.grad)
113
+ # Flux.update!(opt, p.data, p.grad)
114
+ # end
115
+ # grad_norm = sqrt(grad_norm)
116
116
117
- stat = (iteration= i, neg_log_llh= ls, gradient_norm= grad_norm)
118
- pm_next! (prog, stat)
119
- end
120
- return nnls
121
- end
117
+ # stat = (iteration=i, neg_log_llh=ls, gradient_norm=grad_norm)
118
+ # pm_next!(prog, stat)
119
+ # end
120
+ # return nnls
121
+ # end
0 commit comments