GHSSHG commited on
Commit
92be5d5
·
verified ·
1 Parent(s): b287987

Upload NanoRecon inference assets

Browse files
Files changed (4) hide show
  1. .gitattributes +1 -33
  2. README.md +61 -0
  3. config.json +91 -0
  4. flax_model.msgpack +3 -0
.gitattributes CHANGED
@@ -1,35 +1,3 @@
1
- *.7z filter=lfs diff=lfs merge=lfs -text
2
- *.arrow filter=lfs diff=lfs merge=lfs -text
3
- *.bin filter=lfs diff=lfs merge=lfs -text
4
- *.bz2 filter=lfs diff=lfs merge=lfs -text
5
- *.ckpt filter=lfs diff=lfs merge=lfs -text
6
- *.ftz filter=lfs diff=lfs merge=lfs -text
7
- *.gz filter=lfs diff=lfs merge=lfs -text
8
- *.h5 filter=lfs diff=lfs merge=lfs -text
9
- *.joblib filter=lfs diff=lfs merge=lfs -text
10
- *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
- *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
- *.model filter=lfs diff=lfs merge=lfs -text
13
  *.msgpack filter=lfs diff=lfs merge=lfs -text
14
- *.npy filter=lfs diff=lfs merge=lfs -text
15
- *.npz filter=lfs diff=lfs merge=lfs -text
16
- *.onnx filter=lfs diff=lfs merge=lfs -text
17
- *.ot filter=lfs diff=lfs merge=lfs -text
18
- *.parquet filter=lfs diff=lfs merge=lfs -text
19
- *.pb filter=lfs diff=lfs merge=lfs -text
20
- *.pickle filter=lfs diff=lfs merge=lfs -text
21
- *.pkl filter=lfs diff=lfs merge=lfs -text
22
- *.pt filter=lfs diff=lfs merge=lfs -text
23
- *.pth filter=lfs diff=lfs merge=lfs -text
24
- *.rar filter=lfs diff=lfs merge=lfs -text
25
  *.safetensors filter=lfs diff=lfs merge=lfs -text
26
- saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
- *.tar.* filter=lfs diff=lfs merge=lfs -text
28
- *.tar filter=lfs diff=lfs merge=lfs -text
29
- *.tflite filter=lfs diff=lfs merge=lfs -text
30
- *.tgz filter=lfs diff=lfs merge=lfs -text
31
- *.wasm filter=lfs diff=lfs merge=lfs -text
32
- *.xz filter=lfs diff=lfs merge=lfs -text
33
- *.zip filter=lfs diff=lfs merge=lfs -text
34
- *.zst filter=lfs diff=lfs merge=lfs -text
35
- *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  *.msgpack filter=lfs diff=lfs merge=lfs -text
2
+ *.bin filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
3
  *.safetensors filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
README.md ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ library_name: jax
4
+ tags:
5
+ - nanopore
6
+ - signal-reconstruction
7
+ - audio-codec
8
+ - flax
9
+ - jax
10
+ pipeline_tag: feature-extraction
11
+ ---
12
+
13
+ # NanoRecon
14
+
15
+ NanoRecon is a Flax/JAX SimVQ-based model for nanopore signal reconstruction. This repository contains inference-ready model weights and the matching architecture config.
16
+
17
+ ## Files
18
+
19
+ - `flax_model.msgpack`: Flax variables for inference only, containing `params` and mutable `vq` codebook variables.
20
+ - `config.json`: model architecture and signal-shape metadata needed to instantiate the model.
21
+
22
+ The uploaded package is limited to inference assets and does not include local machine paths or private dataset references.
23
+
24
+ ## Loading Example
25
+
26
+ ```python
27
+ import json
28
+ from pathlib import Path
29
+
30
+ import jax
31
+ import jax.numpy as jnp
32
+ from flax.core import freeze
33
+ from flax.serialization import from_bytes
34
+
35
+ from codec.models import build_audio_model
36
+
37
+ repo_dir = Path("/path/to/NanoRecon")
38
+ cfg = json.loads((repo_dir / "config.json").read_text())
39
+ model = build_audio_model(cfg["model"])
40
+
41
+ variables = from_bytes(freeze({"params": {}, "vq": {}}), (repo_dir / "flax_model.msgpack").read_bytes())
42
+
43
+ x = jnp.zeros((1, cfg["input_signal"]["segment_samples"]), dtype=jnp.float32)
44
+ rng = jax.random.PRNGKey(0)
45
+ out = model.apply(
46
+ variables,
47
+ x,
48
+ offset=0,
49
+ rng=rng,
50
+ collect_codebook_stats=False,
51
+ )
52
+ reconstructed = out["wave_hat"]
53
+ ```
54
+
55
+ ## Notes
56
+
57
+ This model expects normalized nanopore signal chunks with shape `(batch, samples)`. The exported config records the expected chunk size and sample rate.
58
+
59
+ ## Citation
60
+
61
+ No citation metadata has been provided yet.
config.json ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "SimVQAudioModel"
4
+ ],
5
+ "model_type": "nanorecon-simvq-audio-codec",
6
+ "framework": "flax",
7
+ "library_name": "jax",
8
+ "input_signal": {
9
+ "sample_rate_hz": 5000.0,
10
+ "segment_samples": 8192,
11
+ "segment_seconds": 1.6384,
12
+ "expected_shape": [
13
+ "batch",
14
+ "samples"
15
+ ],
16
+ "dtype": "float32"
17
+ },
18
+ "model": {
19
+ "variant": "foundation_v1",
20
+ "enc_channels": [
21
+ 32,
22
+ 64,
23
+ 128,
24
+ 256,
25
+ 512
26
+ ],
27
+ "enc_down_strides": [
28
+ 2,
29
+ 2,
30
+ 2,
31
+ 2
32
+ ],
33
+ "enc_stage_num_res_blocks": [
34
+ 2,
35
+ 2,
36
+ 3,
37
+ 3
38
+ ],
39
+ "enc_kernel_size": 7,
40
+ "latent_dim": 512,
41
+ "quantizer_dim": 512,
42
+ "codebook_size": 65536,
43
+ "dec_channels": [
44
+ 512
45
+ ],
46
+ "decoder_dim": 768,
47
+ "decoder_intermediate_dim": 2304,
48
+ "decoder_num_layers": 12,
49
+ "decoder_pos_net_enabled": true,
50
+ "decoder_pos_net_dropout": 0.0,
51
+ "decoder_pos_net_attention_heads": 12,
52
+ "decoder_pos_net_attention_backend": "jax_cudnn",
53
+ "istft_n_fft": 512,
54
+ "istft_hop_length": 16,
55
+ "istft_sample_rate": 5000,
56
+ "istft_band_edges_hz": [
57
+ 200,
58
+ 500,
59
+ 1000
60
+ ],
61
+ "istft_band_gain_init": [
62
+ 1.0,
63
+ 0.8,
64
+ 0.45,
65
+ 0.12
66
+ ],
67
+ "istft_dynamic_gate_scale": 0.5,
68
+ "residual_correction": {
69
+ "enabled": true,
70
+ "alpha_init": 0.0,
71
+ "alpha_max": 0.1,
72
+ "hidden_dim": 192
73
+ },
74
+ "latent_bilstm_layers": 2,
75
+ "latent_bilstm_hidden_dim": 256,
76
+ "cnn_compute_dtype": "fp32",
77
+ "param_dtype": "fp32",
78
+ "diveq_sigma2": 0.001,
79
+ "search_chunk_size": 8192,
80
+ "quant_conv_kernel_size": 7,
81
+ "post_quant_conv_kernel_size": 7
82
+ },
83
+ "weights": {
84
+ "format": "flax_msgpack",
85
+ "file": "flax_model.msgpack",
86
+ "variables": [
87
+ "params",
88
+ "vq"
89
+ ]
90
+ }
91
+ }
flax_model.msgpack ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:20fdc3e583253a80ae6801ea0461354ee1248461c2cd1481c500ba578fad605b
3
+ size 419313209