Skip to content

Commit aaec4f5

Browse files
committed
Updated readme, and CI
1 parent 4f43502 commit aaec4f5

File tree

2 files changed

+62
-2
lines changed

2 files changed

+62
-2
lines changed

.github/workflows/CI.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ jobs:
2424
matrix:
2525
version:
2626
- '1.11'
27-
- '1.9'
2827
- 'pre'
2928
os:
3029
- ubuntu-latest

README.md

Lines changed: 62 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,12 @@ pl = scatter(X0.state[1,:],X0.state[2,:], msw = 0, ms = 1, color = "blue", alpha
111111
X1true = sampleX1(n_inference_samples)
112112
scatter!(X1true[1,:],X1true[2,:], msw = 0, ms = 1, color = "orange", alpha = 0.5, label = "X1 (true)")
113113
scatter!(samples.state[1,:],samples.state[2,:], msw = 0, ms = 1, color = "green", alpha = 0.5, label = "X1 (generated)")
114+
savefig("readmeexamplecat.svg")
114115
```
115116

117+
![Image](https://github.com/user-attachments/assets/2c057698-bd1f-4dc1-9aaa-833af8a71196)
118+
119+
116120
## Tracking trajectories
117121

118122
```julia
@@ -132,4 +136,61 @@ end
132136
X1true = sampleX1(n_inference_samples)
133137
scatter!(X1true[1,:],X1true[2,:], msw = 0, ms = 1, color = "orange", alpha = 0.5, label = "X1 (true)")
134138
scatter!(samples.state[1,:],samples.state[2,:], msw = 0, ms = 1, color = "green", alpha = 0.5, label = "X1 (generated)")
135-
```
139+
```
140+
![Image](https://github.com/user-attachments/assets/85f3714d-27ba-4683-9c63-2bcb7fcaaf16)
141+
142+
## Variations:
143+
144+
These can be found in [examples](https://github.com/MurrellGroup/Flowfusion.jl/tree/main/examples).
145+
146+
### Flow matching
147+
148+
with `P = Deterministic()`
149+
150+
![Image](https://github.com/user-attachments/assets/e82ac33a-6f28-4731-b39d-8ad9757159f7)
151+
152+
### Flow matching on a manifold
153+
154+
with `P = Deterministic()` and `X0 = ManifoldState(Torus(2), ...)`
155+
156+
![Image](https://github.com/user-attachments/assets/b6a1a27f-f0fc-4bc4-af10-bb8b5e7aa8cf)
157+
158+
### Diffusion on a manifold
159+
160+
with `P = ManifoldProcess(0.2)` and `X0 = ManifoldState(Torus(2), ...)`:
161+
162+
![Image](https://github.com/user-attachments/assets/43a7f061-a95e-44ad-bbb5-631d91633a54)
163+
164+
### Discrete flow matching
165+
166+
with `P = NoisyInterpolatingDiscreteFlow(0.1)` and `X0 = DiscreteState(...)`:
167+
168+
![Image](https://github.com/user-attachments/assets/d9497f36-c87d-4676-915a-5b067d4f486b)
169+
170+
### Partial observation conditioning
171+
172+
with `X0 = MaskedState(state, cmask, lmask)`
173+
174+
![Image](https://github.com/user-attachments/assets/e3e84290-2a57-4d2d-8ebc-ad91800e8fea)
175+
176+
### Discrete distributions via diffusion on the probability simplex
177+
178+
with `P = ManifoldProcess(0.5)` and `X0 = ManifoldState(ProbabilitySimplex(32), ...)`:
179+
180+
<video src="https://github.com/user-attachments/assets/b3692a2f-5d5b-4924-82bb-f5477230b45d" controls></video>
181+
182+
## Literature:
183+
184+
For background reading please see:
185+
186+
- [Denoising Diffusion Probabilistic Models](https://arxiv.org/abs/2006.11239)
187+
- [Flow Matching for Generative Modeling](https://arxiv.org/abs/2210.02747)
188+
- [Denoising Diffusion Bridge Models](https://arxiv.org/abs/2309.16948)
189+
- [Flow matching on general geometries](https://arxiv.org/pdf/2302.03660)
190+
- [Diffusion on Manifolds](https://arxiv.org/abs/2303.09556)
191+
- [Flow Matching (a review/guide)](https://arxiv.org/abs/2412.06264)
192+
- [Discrete Flow Matching](https://arxiv.org/abs/2407.15595)
193+
194+
Except where noted in the code, this package mostly doesn't try and achieve faithful reproductions of approaches described in the literature, and prefers to be inspired by, rather than constrained by, precise mathematical correctness. The main goals are:
195+
- Bringing a variety of different processes under a single unified and flexible framework
196+
- Providing processes that work, practically speaking

0 commit comments

Comments
 (0)