# Freia Hackathon
## Agenda
## Tasks?
* https://github.com/VLL-HD/FrEIA-community
## Agenda for kickoff meeting
* willkommen, etc
* what is each person expecting from the hackathon, why did they join:
* Lynton: started freia with Jakob and Till; likely to leave the VLL at some point, want to make sure that freia is usable
* Nico: use freia for INNs and inverse problems for phase retrieval tasks;
* Jakob: make freia easy enough to use for Bachelor students
* Erik: working with INNs for thesis -> want to solve problem detected during thesis
* Attila/CASUS: matter under extreme conditions, curious to listen in - starting a project on inverting a differential equation (feed in simulation data and to extract component of differential equation)
* Nishant: out-of-distribution detection; potentially improve existing implementation
* Peter Soe.: PhD student at VLL, will to help out
* Till B: master student at VLL that co-started freia during bachelor
* Peter St: understand how FrEIA works under the hood
* Felix: worked on theory on INNs, will to help out where needed
* Yichao: used BayesFlow for GISAXS parameter estimation
* David M / HZB: inverting simulations of beamlines (inputs are images, and output is multi-dim. theta)
* how are we going to handle communication
* slack
* (other possibilities like slack, etc.)
* invite link for mattermost
* https://mattermost.hzdr.de/signup_user_complete/?id=n87gmq1877rzfqnmdr1isyc5or
* how is the FrEIA-communiy repo going to be used?
* Collect .md's for suggestions, further information, special applications, etc.
* more persistent than mattermost, hierarchical structure
* how will code be contributed/merged?
* directly to the FreiA repo
* PRs to FreiA towards end of this week?
* tomorrow at 11:00 AM: short talk outlining the basic structure of FrEIA, concepts, etc.
* open issues for this hackathon: https://github.com/VLL-HD/FrEIA-community/blob/main/README.md#freia-community
* Address all issues and PRs
* clean-up FrEIA.modules
* Unittests, currently low coverage, challenge: which input/output to use?
* Tutorial & documentation
* Misc
* idea: split this up into issue, provide people the chance to sign up or add new items
* JK: agreed
* task for everyone: find hot spots in freia that are the worst for your work
* open floor:
* Nico: difference between affine coupling block and NSF approaches
# what data do you use for work with Freia?
```
#forward (during training)
y
|
v
x ==*==> z
#backward
y
|
v
x <==*== z
# z refers to the base distribution aka latent space
```
* Peter: x is of 12-dim, y is of dim 200 (all 1D float32 values); I have 2-3 M samples for training, gaussian prior on x for the simulations
* Nico: x ~30k dim, no y, z ~ 30k dim; single observation goes into loss
* Erik: x 3 dim, y 2048 dim, ~10k samples for training
* Jakob: x 100 dim with weird correlations, y 4 dim, 1M samples
* David: x 4 dim y ~5k dim, infinite number of samples, gaussian prior
* yichao: x 50 dim parameters, y image feature (not sure about the dim) (Bayesflow)
# competitors?
- bijectors in tf
- nflows -> https://github.com/bayesiains/nflows
- Pyro has flows too
- http://docs.pyro.ai/en/latest/distributions.html#pyro.distributions.transforms.Spline
- http://docs.pyro.ai/en/latest/distributions.html#pyro.distributions.transforms.SplineAutoregressive