We aim to estimate the posterior distribution \(p(y|X)\)  of object parameters given corresponding GISAXS data \(X\) . As the likelihood of the data-generating process is intractable, we employ simulation-based inference [1]} via NFs. Due to the scarcity of experimental data, we train the model on synthetic GISAXS data generated by state-of-the-art BornAgain [2]} software. Although one can generate arbitrarily many simulated patterns, the distribution of these patterns can alter drastically from the distribution of experimental data. The discrepancy might render the model trained on simulated data inapplicable to real-world data, thus requiring more robust-to-noise data representations such as in-plane GISAXS signals \(\zeta \)  derived from experimental images \(X\) . To generalize our framework to both modalities, we use CVAEs to learn joint probability model \(p_{\theta _2}(X,z,\zeta )\) . Combined, the framework's generative models learn data-generating process whose joint probability distribution is factorized as follows:
\(p_{\theta _1, \theta _2}(y, \zeta , z, X) = \underbrace{p_{\theta _1}(y|\zeta , z)}_\text{NFs} \cdot \underbrace{p_{\theta _2}(X,z|\zeta )}_\text{CVAEs} \cdot p(\zeta )\) 
