wavedl 1.5.7__py3-none-any.whl → 1.6.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. wavedl/__init__.py +1 -1
  2. wavedl/hpo.py +451 -451
  3. wavedl/models/__init__.py +80 -4
  4. wavedl/models/_pretrained_utils.py +366 -0
  5. wavedl/models/base.py +48 -0
  6. wavedl/models/caformer.py +270 -0
  7. wavedl/models/cnn.py +2 -27
  8. wavedl/models/convnext.py +113 -51
  9. wavedl/models/convnext_v2.py +488 -0
  10. wavedl/models/densenet.py +10 -23
  11. wavedl/models/efficientnet.py +6 -6
  12. wavedl/models/efficientnetv2.py +315 -315
  13. wavedl/models/efficientvit.py +398 -0
  14. wavedl/models/fastvit.py +252 -0
  15. wavedl/models/mamba.py +555 -0
  16. wavedl/models/maxvit.py +254 -0
  17. wavedl/models/mobilenetv3.py +295 -295
  18. wavedl/models/regnet.py +406 -406
  19. wavedl/models/resnet.py +19 -61
  20. wavedl/models/resnet3d.py +258 -258
  21. wavedl/models/swin.py +443 -443
  22. wavedl/models/tcn.py +393 -409
  23. wavedl/models/unet.py +2 -6
  24. wavedl/models/unireplknet.py +491 -0
  25. wavedl/models/vit.py +9 -9
  26. wavedl/train.py +1430 -1425
  27. wavedl/utils/config.py +367 -367
  28. wavedl/utils/cross_validation.py +530 -530
  29. wavedl/utils/data.py +39 -6
  30. wavedl/utils/losses.py +216 -216
  31. wavedl/utils/optimizers.py +216 -216
  32. wavedl/utils/schedulers.py +251 -251
  33. {wavedl-1.5.7.dist-info → wavedl-1.6.1.dist-info}/METADATA +150 -82
  34. wavedl-1.6.1.dist-info/RECORD +46 -0
  35. wavedl-1.5.7.dist-info/RECORD +0 -38
  36. {wavedl-1.5.7.dist-info → wavedl-1.6.1.dist-info}/LICENSE +0 -0
  37. {wavedl-1.5.7.dist-info → wavedl-1.6.1.dist-info}/WHEEL +0 -0
  38. {wavedl-1.5.7.dist-info → wavedl-1.6.1.dist-info}/entry_points.txt +0 -0
  39. {wavedl-1.5.7.dist-info → wavedl-1.6.1.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: wavedl
3
- Version: 1.5.7
3
+ Version: 1.6.1
4
4
  Summary: A Scalable Deep Learning Framework for Wave-Based Inverse Problems
5
5
  Author: Ductho Le
6
6
  License: MIT
@@ -23,6 +23,7 @@ Description-Content-Type: text/markdown
23
23
  License-File: LICENSE
24
24
  Requires-Dist: torch>=2.0.0
25
25
  Requires-Dist: torchvision>=0.15.0
26
+ Requires-Dist: timm>=0.9.0
26
27
  Requires-Dist: accelerate>=0.20.0
27
28
  Requires-Dist: numpy>=1.24.0
28
29
  Requires-Dist: scipy>=1.10.0
@@ -37,6 +38,7 @@ Requires-Dist: wandb>=0.15.0
37
38
  Requires-Dist: optuna>=3.0.0
38
39
  Requires-Dist: onnx>=1.14.0
39
40
  Requires-Dist: onnxruntime>=1.15.0
41
+ Requires-Dist: onnxscript>=0.1.0
40
42
  Requires-Dist: triton>=2.0.0; sys_platform == "linux"
41
43
  Provides-Extra: dev
42
44
  Requires-Dist: pytest>=7.0.0; extra == "dev"
@@ -117,7 +119,7 @@ Train on datasets larger than RAM:
117
119
 
118
120
  **🧠 Models? We've Got Options**
119
121
 
120
- 38 architectures, ready to go:
122
+ 69 architectures, ready to go:
121
123
  - CNNs, ResNets, ViTs, EfficientNets...
122
124
  - All adapted for regression
123
125
  - [Add your own](#adding-custom-models) in one line
@@ -202,7 +204,7 @@ Deploy models anywhere:
202
204
  #### From PyPI (recommended for all users)
203
205
 
204
206
  ```bash
205
- pip install wavedl
207
+ pip install --upgrade wavedl
206
208
  ```
207
209
 
208
210
  This installs everything you need: training, inference, HPO, ONNX export.
@@ -358,22 +360,10 @@ WaveDL/
358
360
  │ ├── hpo.py # Hyperparameter optimization
359
361
  │ ├── hpc.py # HPC distributed training launcher
360
362
  │ │
361
- │ ├── models/ # Model architectures (38 variants)
363
+ │ ├── models/ # Model Zoo (69 architectures)
362
364
  │ │ ├── registry.py # Model factory (@register_model)
363
365
  │ │ ├── base.py # Abstract base class
364
- │ │ ├── cnn.py # Baseline CNN (1D/2D/3D)
365
- │ │ ├── resnet.py # ResNet-18/34/50 (1D/2D/3D)
366
- │ │ ├── resnet3d.py # ResNet3D-18, MC3-18 (3D only)
367
- │ │ ├── tcn.py # TCN (1D only)
368
- │ │ ├── efficientnet.py # EfficientNet-B0/B1/B2 (2D)
369
- │ │ ├── efficientnetv2.py # EfficientNetV2-S/M/L (2D)
370
- │ │ ├── mobilenetv3.py # MobileNetV3-Small/Large (2D)
371
- │ │ ├── regnet.py # RegNetY variants (2D)
372
- │ │ ├── swin.py # Swin Transformer (2D)
373
- │ │ ├── vit.py # Vision Transformer (1D/2D)
374
- │ │ ├── convnext.py # ConvNeXt (1D/2D/3D)
375
- │ │ ├── densenet.py # DenseNet-121/169 (1D/2D/3D)
376
- │ │ └── unet.py # U-Net Regression
366
+ │ │ └── ... # See "Available Models" section
377
367
  │ │
378
368
  │ └── utils/ # Utilities
379
369
  │ ├── data.py # Memory-mapped data pipeline
@@ -388,7 +378,7 @@ WaveDL/
388
378
  ├── configs/ # YAML config templates
389
379
  ├── examples/ # Ready-to-run examples
390
380
  ├── notebooks/ # Jupyter notebooks
391
- ├── unit_tests/ # Pytest test suite (903 tests)
381
+ ├── unit_tests/ # Pytest test suite
392
382
 
393
383
  ├── pyproject.toml # Package config, dependencies
394
384
  ├── CHANGELOG.md # Version history
@@ -411,71 +401,117 @@ WaveDL/
411
401
  > ```
412
402
 
413
403
  <details>
414
- <summary><b>Available Models</b> — 38 architectures</summary>
404
+ <summary><b>Available Models</b> — 69 architectures</summary>
415
405
 
416
- | Model | Params | Dim |
417
- |-------|--------|-----|
406
+ | Model | Backbone Params | Dim |
407
+ |-------|-----------------|-----|
408
+ | **── Classic CNNs ──** |||
418
409
  | **CNN** — Convolutional Neural Network |||
419
- | `cnn` | 1.7M | 1D/2D/3D |
410
+ | `cnn` | 1.6M | 1D/2D/3D |
420
411
  | **ResNet** — Residual Network |||
421
- | `resnet18` | 11.4M | 1D/2D/3D |
422
- | `resnet34` | 21.5M | 1D/2D/3D |
423
- | `resnet50` | 24.6M | 1D/2D/3D |
424
- | `resnet18_pretrained` ⭐ | 11.4M | 2D |
425
- | `resnet50_pretrained` ⭐ | 24.6M | 2D |
426
- | **ResNet3D** — 3D Residual Network |||
427
- | `resnet3d_18` | 33.6M | 3D |
428
- | `mc3_18` — Mixed Convolution 3D | 11.9M | 3D |
429
- | **TCN** Temporal Convolutional Network |||
430
- | `tcn_small` | 1.0M | 1D |
431
- | `tcn` | 7.0M | 1D |
432
- | `tcn_large` | 10.2M | 1D |
412
+ | `resnet18` | 11.2M | 1D/2D/3D |
413
+ | `resnet34` | 21.3M | 1D/2D/3D |
414
+ | `resnet50` | 23.5M | 1D/2D/3D |
415
+ | `resnet18_pretrained` ⭐ | 11.2M | 2D |
416
+ | `resnet50_pretrained` ⭐ | 23.5M | 2D |
417
+ | **DenseNet** — Densely Connected Network |||
418
+ | `densenet121` | 7.0M | 1D/2D/3D |
419
+ | `densenet169` | 12.5M | 1D/2D/3D |
420
+ | `densenet121_pretrained` | 7.0M | 2D |
421
+ | **── Efficient/Mobile CNNs ──** |||
422
+ | **MobileNetV3** Mobile Neural Network V3 |||
423
+ | `mobilenet_v3_small` | 0.9M | 2D |
424
+ | `mobilenet_v3_large` ⭐ | 3.0M | 2D |
433
425
  | **EfficientNet** — Efficient Neural Network |||
434
- | `efficientnet_b0` ⭐ | 4.7M | 2D |
435
- | `efficientnet_b1` ⭐ | 7.2M | 2D |
436
- | `efficientnet_b2` ⭐ | 8.4M | 2D |
426
+ | `efficientnet_b0` ⭐ | 4.0M | 2D |
427
+ | `efficientnet_b1` ⭐ | 6.5M | 2D |
428
+ | `efficientnet_b2` ⭐ | 7.7M | 2D |
437
429
  | **EfficientNetV2** — Efficient Neural Network V2 |||
438
- | `efficientnet_v2_s` ⭐ | 21.0M | 2D |
439
- | `efficientnet_v2_m` ⭐ | 53.6M | 2D |
440
- | `efficientnet_v2_l` ⭐ | 118.0M | 2D |
441
- | **MobileNetV3** — Mobile Neural Network V3 |||
442
- | `mobilenet_v3_small` ⭐ | 1.1M | 2D |
443
- | `mobilenet_v3_large` ⭐ | 3.2M | 2D |
430
+ | `efficientnet_v2_s` ⭐ | 20.2M | 2D |
431
+ | `efficientnet_v2_m` ⭐ | 52.9M | 2D |
432
+ | `efficientnet_v2_l` ⭐ | 117.2M | 2D |
444
433
  | **RegNet** — Regularized Network |||
445
- | `regnet_y_400mf` ⭐ | 4.0M | 2D |
446
- | `regnet_y_800mf` ⭐ | 5.8M | 2D |
447
- | `regnet_y_1_6gf` ⭐ | 10.5M | 2D |
448
- | `regnet_y_3_2gf` ⭐ | 18.3M | 2D |
449
- | `regnet_y_8gf` ⭐ | 37.9M | 2D |
450
- | **Swin** Shifted Window Transformer |||
451
- | `swin_t` ⭐ | 28.0M | 2D |
452
- | `swin_s` ⭐ | 49.4M | 2D |
453
- | `swin_b` ⭐ | 87.4M | 2D |
434
+ | `regnet_y_400mf` ⭐ | 3.9M | 2D |
435
+ | `regnet_y_800mf` ⭐ | 5.7M | 2D |
436
+ | `regnet_y_1_6gf` ⭐ | 10.3M | 2D |
437
+ | `regnet_y_3_2gf` ⭐ | 17.9M | 2D |
438
+ | `regnet_y_8gf` ⭐ | 37.4M | 2D |
439
+ | **── Modern CNNs ──** |||
454
440
  | **ConvNeXt** — Convolutional Next |||
455
- | `convnext_tiny` | 28.2M | 1D/2D/3D |
456
- | `convnext_small` | 49.8M | 1D/2D/3D |
457
- | `convnext_base` | 88.1M | 1D/2D/3D |
458
- | `convnext_tiny_pretrained` ⭐ | 28.2M | 2D |
459
- | **DenseNet** — Densely Connected Network |||
460
- | `densenet121` | 7.5M | 1D/2D/3D |
461
- | `densenet169` | 13.3M | 1D/2D/3D |
462
- | `densenet121_pretrained` | 7.5M | 2D |
441
+ | `convnext_tiny` | 27.8M | 1D/2D/3D |
442
+ | `convnext_small` | 49.5M | 1D/2D/3D |
443
+ | `convnext_base` | 87.6M | 1D/2D/3D |
444
+ | `convnext_tiny_pretrained` ⭐ | 27.8M | 2D |
445
+ | **ConvNeXt V2** — ConvNeXt with GRN |||
446
+ | `convnext_v2_tiny` | 27.9M | 1D/2D/3D |
447
+ | `convnext_v2_small` | 49.6M | 1D/2D/3D |
448
+ | `convnext_v2_base` | 87.7M | 1D/2D/3D |
449
+ | `convnext_v2_tiny_pretrained` ⭐ | 27.9M | 2D |
450
+ | **UniRepLKNet** — Large-Kernel ConvNet |||
451
+ | `unireplknet_tiny` | 30.8M | 1D/2D/3D |
452
+ | `unireplknet_small` | 56.0M | 1D/2D/3D |
453
+ | `unireplknet_base` | 97.6M | 1D/2D/3D |
454
+ | **── Vision Transformers ──** |||
463
455
  | **ViT** — Vision Transformer |||
464
- | `vit_tiny` | 5.5M | 1D/2D |
465
- | `vit_small` | 21.6M | 1D/2D |
466
- | `vit_base` | 85.6M | 1D/2D |
456
+ | `vit_tiny` | 5.4M | 1D/2D |
457
+ | `vit_small` | 21.4M | 1D/2D |
458
+ | `vit_base` | 85.3M | 1D/2D |
459
+ | **Swin** — Shifted Window Transformer |||
460
+ | `swin_t` ⭐ | 27.5M | 2D |
461
+ | `swin_s` ⭐ | 48.8M | 2D |
462
+ | `swin_b` ⭐ | 86.7M | 2D |
463
+ | **MaxViT** — Multi-Axis ViT |||
464
+ | `maxvit_tiny` ⭐ | 30.1M | 2D |
465
+ | `maxvit_small` ⭐ | 67.6M | 2D |
466
+ | `maxvit_base` ⭐ | 119.1M | 2D |
467
+ | **── Hybrid CNN-Transformer ──** |||
468
+ | **FastViT** — Fast Hybrid CNN-ViT |||
469
+ | `fastvit_t8` ⭐ | 4.0M | 2D |
470
+ | `fastvit_t12` ⭐ | 6.8M | 2D |
471
+ | `fastvit_s12` ⭐ | 8.8M | 2D |
472
+ | `fastvit_sa12` ⭐ | 10.9M | 2D |
473
+ | **CAFormer** — MetaFormer with Attention |||
474
+ | `caformer_s18` ⭐ | 26.3M | 2D |
475
+ | `caformer_s36` ⭐ | 39.2M | 2D |
476
+ | `caformer_m36` ⭐ | 56.9M | 2D |
477
+ | `poolformer_s12` ⭐ | 11.9M | 2D |
478
+ | **EfficientViT** — Memory-Efficient ViT |||
479
+ | `efficientvit_m0` ⭐ | 2.2M | 2D |
480
+ | `efficientvit_m1` ⭐ | 2.6M | 2D |
481
+ | `efficientvit_m2` ⭐ | 3.8M | 2D |
482
+ | `efficientvit_b0` ⭐ | 2.1M | 2D |
483
+ | `efficientvit_b1` ⭐ | 7.5M | 2D |
484
+ | `efficientvit_b2` ⭐ | 21.8M | 2D |
485
+ | `efficientvit_b3` ⭐ | 46.1M | 2D |
486
+ | `efficientvit_l1` ⭐ | 49.5M | 2D |
487
+ | `efficientvit_l2` ⭐ | 60.5M | 2D |
488
+ | **── State Space Models ──** |||
489
+ | **Mamba** — State Space Model |||
490
+ | `mamba_1d` | 3.4M | 1D |
491
+ | **Vision Mamba (ViM)** — 2D Mamba |||
492
+ | `vim_tiny` | 6.6M | 2D |
493
+ | `vim_small` | 51.1M | 2D |
494
+ | `vim_base` | 201.4M | 2D |
495
+ | **── Specialized Architectures ──** |||
496
+ | **TCN** — Temporal Convolutional Network |||
497
+ | `tcn_small` | 0.9M | 1D |
498
+ | `tcn` | 6.9M | 1D |
499
+ | `tcn_large` | 10.0M | 1D |
500
+ | **ResNet3D** — 3D Residual Network |||
501
+ | `resnet3d_18` | 33.2M | 3D |
502
+ | `mc3_18` — Mixed Convolution 3D | 11.5M | 3D |
467
503
  | **U-Net** — U-shaped Network |||
468
- | `unet_regression` | 31.1M | 1D/2D/3D |
504
+ | `unet_regression` | 31.0M | 1D/2D/3D |
505
+
469
506
 
470
507
  ⭐ = **Pretrained on ImageNet** (recommended for smaller datasets). Weights are downloaded automatically on first use.
471
508
  - **Cache location**: `~/.cache/torch/hub/checkpoints/` (or `./.torch_cache/` on HPC if home is not writable)
472
- - **Size**: ~20–350 MB per model depending on architecture
473
509
  - **Train from scratch**: Use `--no_pretrained` to disable pretrained weights
474
510
 
475
511
  **💡 HPC Users**: If compute nodes block internet, pre-download weights on the login node:
476
512
 
477
513
  ```bash
478
- # Run once on login node (with internet) — downloads ALL pretrained weights (~1.5 GB total)
514
+ # Run once on login node (with internet) — downloads ALL pretrained weights
479
515
  python -c "
480
516
  import os
481
517
  os.environ['TORCH_HOME'] = '.torch_cache' # Match WaveDL's HPC cache location
@@ -483,24 +519,56 @@ os.environ['TORCH_HOME'] = '.torch_cache' # Match WaveDL's HPC cache location
483
519
  from torchvision import models as m
484
520
  from torchvision.models import video as v
485
521
 
486
- # Model name -> Weights class mapping
487
- weights = {
488
- 'resnet18': m.ResNet18_Weights, 'resnet50': m.ResNet50_Weights,
489
- 'efficientnet_b0': m.EfficientNet_B0_Weights, 'efficientnet_b1': m.EfficientNet_B1_Weights,
490
- 'efficientnet_b2': m.EfficientNet_B2_Weights, 'efficientnet_v2_s': m.EfficientNet_V2_S_Weights,
491
- 'efficientnet_v2_m': m.EfficientNet_V2_M_Weights, 'efficientnet_v2_l': m.EfficientNet_V2_L_Weights,
492
- 'mobilenet_v3_small': m.MobileNet_V3_Small_Weights, 'mobilenet_v3_large': m.MobileNet_V3_Large_Weights,
493
- 'regnet_y_400mf': m.RegNet_Y_400MF_Weights, 'regnet_y_800mf': m.RegNet_Y_800MF_Weights,
494
- 'regnet_y_1_6gf': m.RegNet_Y_1_6GF_Weights, 'regnet_y_3_2gf': m.RegNet_Y_3_2GF_Weights,
495
- 'regnet_y_8gf': m.RegNet_Y_8GF_Weights, 'swin_t': m.Swin_T_Weights, 'swin_s': m.Swin_S_Weights,
496
- 'swin_b': m.Swin_B_Weights, 'convnext_tiny': m.ConvNeXt_Tiny_Weights, 'densenet121': m.DenseNet121_Weights,
497
- }
498
- for name, w in weights.items():
499
- getattr(m, name)(weights=w.DEFAULT); print(f'✓ {name}')
522
+ # === TorchVision Models (use IMAGENET1K_V1 to match WaveDL) ===
523
+ models = [
524
+ ('resnet18', m.ResNet18_Weights.IMAGENET1K_V1),
525
+ ('resnet50', m.ResNet50_Weights.IMAGENET1K_V1),
526
+ ('efficientnet_b0', m.EfficientNet_B0_Weights.IMAGENET1K_V1),
527
+ ('efficientnet_b1', m.EfficientNet_B1_Weights.IMAGENET1K_V1),
528
+ ('efficientnet_b2', m.EfficientNet_B2_Weights.IMAGENET1K_V1),
529
+ ('efficientnet_v2_s', m.EfficientNet_V2_S_Weights.IMAGENET1K_V1),
530
+ ('efficientnet_v2_m', m.EfficientNet_V2_M_Weights.IMAGENET1K_V1),
531
+ ('efficientnet_v2_l', m.EfficientNet_V2_L_Weights.IMAGENET1K_V1),
532
+ ('mobilenet_v3_small', m.MobileNet_V3_Small_Weights.IMAGENET1K_V1),
533
+ ('mobilenet_v3_large', m.MobileNet_V3_Large_Weights.IMAGENET1K_V1),
534
+ ('regnet_y_400mf', m.RegNet_Y_400MF_Weights.IMAGENET1K_V1),
535
+ ('regnet_y_800mf', m.RegNet_Y_800MF_Weights.IMAGENET1K_V1),
536
+ ('regnet_y_1_6gf', m.RegNet_Y_1_6GF_Weights.IMAGENET1K_V1),
537
+ ('regnet_y_3_2gf', m.RegNet_Y_3_2GF_Weights.IMAGENET1K_V1),
538
+ ('regnet_y_8gf', m.RegNet_Y_8GF_Weights.IMAGENET1K_V1),
539
+ ('swin_t', m.Swin_T_Weights.IMAGENET1K_V1),
540
+ ('swin_s', m.Swin_S_Weights.IMAGENET1K_V1),
541
+ ('swin_b', m.Swin_B_Weights.IMAGENET1K_V1),
542
+ ('convnext_tiny', m.ConvNeXt_Tiny_Weights.IMAGENET1K_V1),
543
+ ('densenet121', m.DenseNet121_Weights.IMAGENET1K_V1),
544
+ ]
545
+ for name, w in models:
546
+ getattr(m, name)(weights=w); print(f'✓ {name}')
500
547
 
501
548
  # 3D video models
502
- v.r3d_18(weights=v.R3D_18_Weights.DEFAULT); print('✓ r3d_18')
503
- v.mc3_18(weights=v.MC3_18_Weights.DEFAULT); print('✓ mc3_18')
549
+ v.r3d_18(weights=v.R3D_18_Weights.KINETICS400_V1); print('✓ r3d_18')
550
+ v.mc3_18(weights=v.MC3_18_Weights.KINETICS400_V1); print('✓ mc3_18')
551
+
552
+ # === Timm Models (MaxViT, FastViT, CAFormer, ConvNeXt V2) ===
553
+ import timm
554
+
555
+ timm_models = [
556
+ # MaxViT (no suffix - timm resolves to default)
557
+ 'maxvit_tiny_tf_224', 'maxvit_small_tf_224', 'maxvit_base_tf_224',
558
+ # FastViT (no suffix)
559
+ 'fastvit_t8', 'fastvit_t12', 'fastvit_s12', 'fastvit_sa12',
560
+ # CAFormer/PoolFormer (no suffix)
561
+ 'caformer_s18', 'caformer_s36', 'caformer_m36', 'poolformer_s12',
562
+ # ConvNeXt V2 (no suffix)
563
+ 'convnextv2_tiny',
564
+ # EfficientViT (no suffix)
565
+ 'efficientvit_m0', 'efficientvit_m1', 'efficientvit_m2',
566
+ 'efficientvit_b0', 'efficientvit_b1', 'efficientvit_b2', 'efficientvit_b3',
567
+ 'efficientvit_l1', 'efficientvit_l2',
568
+ ]
569
+ for name in timm_models:
570
+ timm.create_model(name, pretrained=True); print(f'✓ {name}')
571
+
504
572
  print('\\n✓ All pretrained weights cached!')
505
573
  "
506
574
  ```
@@ -0,0 +1,46 @@
1
+ wavedl/__init__.py,sha256=tz3qpBFZ4wTNv32Nz7aKGmHCXrTFTxAEJQeJO8La38Q,1177
2
+ wavedl/hpc.py,sha256=6rV38nozzMt0-jKZbVJNwvQZXK0wUsIZmr9lgWN_XUw,9212
3
+ wavedl/hpo.py,sha256=6eHYV9Nzbp2YbTY52NRnW7pwzlI_DNWskN-zBR-wj24,14654
4
+ wavedl/test.py,sha256=1UUy9phCqrr3h_lN6mGJ7Sj73skDg4KyLk2Yuq9DiKU,38797
5
+ wavedl/train.py,sha256=PzJGARHounr6R8WUOrUwwd2hRcLsGkxes08jYKkBRIo,58003
6
+ wavedl/models/__init__.py,sha256=8OiT2seq1qBiUzKaSkmh_VOLJlLTT9Cn-mjhMHKGFpI,5203
7
+ wavedl/models/_pretrained_utils.py,sha256=VPdU1DwJB93ZBf_GFIgb8-6BbAt18Phs4yorwlhLw70,12404
8
+ wavedl/models/_template.py,sha256=J_D8taSPmV8lBaucN_vU-WiG98iFr7CJrZVNNX_Tdts,4600
9
+ wavedl/models/base.py,sha256=bDoHYFli-aR8amcFYXbF98QYaKSCEwZWpvOhN21ODro,9075
10
+ wavedl/models/caformer.py,sha256=ufPM-HzQ-qUZcXgnOulurY6jBUlMUzokC01whtPeVMg,7922
11
+ wavedl/models/cnn.py,sha256=1-sNBDZHc5DySbduf5tkV1Ha25R6irksjVqfOiFbI3M,7465
12
+ wavedl/models/convnext.py,sha256=fdXieXUuHyULjicw9Nno2SK2Tm5bDabUtdiGuEpuAF4,15711
13
+ wavedl/models/convnext_v2.py,sha256=1ELKBPWIlUm3uybLX1KN5cgwjBPEUzZDoXL8qUzF9YY,14920
14
+ wavedl/models/densenet.py,sha256=V_caGd0wsG_Q3Q38I4MEgYmU0v4j8mDyvv7Rn3Bk7Ac,12667
15
+ wavedl/models/efficientnet.py,sha256=HWfhqSX57lC5Xug5TrQ3r-uFqkksoIKjmQ5Zr5njkEA,8264
16
+ wavedl/models/efficientnetv2.py,sha256=hVSnVId8T1rjqaKlckLqWFwvo2J-qASX7o9lMbXbP-s,10947
17
+ wavedl/models/efficientvit.py,sha256=KqFoZq9YHBMnTue6aMdPKgBOMczeBPryY_F6ip0hoEI,11630
18
+ wavedl/models/fastvit.py,sha256=S0SF0iC-9ZJrP-9YUTLPhMJMV-W9r2--V3hVAmSSVKI,7083
19
+ wavedl/models/mamba.py,sha256=ENmOQjtoX8btS1tDvOYEG_M3GFn1P2vWsDWcsQPSPJ0,17189
20
+ wavedl/models/maxvit.py,sha256=I6TFGrLRcyMU-nU7u5VhOaXZWWdwmNJwHsMqbJh_g_o,7548
21
+ wavedl/models/mobilenetv3.py,sha256=LZxCg599kGP6-XI_l3PpT8jzh4oTAdWH3Y7GH097o28,10242
22
+ wavedl/models/registry.py,sha256=InYAXX2xbRvsFDFnYUPCptJh0F9lHlFPN77A9kqHRT0,2980
23
+ wavedl/models/regnet.py,sha256=6Yjo2wZzdjK8VpOMagbCrHqmsfRmGkuiURmc-MesYvA,13777
24
+ wavedl/models/resnet.py,sha256=3i4zfE15qF4cd0qbTKX-Wdy2Kd0f4mLcdd316FAcVCo,16720
25
+ wavedl/models/resnet3d.py,sha256=edxLW4P4OBpZ5z9kMnWYV6qJ1GTkiqpwnW3-IqrPyqE,8510
26
+ wavedl/models/swin.py,sha256=39Gwn5hNEw3-tndc8qFFzV-VZ7pJMMKey2oZONAZ8MU,14980
27
+ wavedl/models/tcn.py,sha256=XzojpuMFG4lu_0oQHbQnkLAb7AnW-D7_6KoBlQDPLnQ,12367
28
+ wavedl/models/unet.py,sha256=oi7eBONSe0ALpJKsYda3jRGwu-LuSiFgNdURebnGGt0,7712
29
+ wavedl/models/unireplknet.py,sha256=jCy22m6mkApkLf3EzimMIqXy4xFs5WPUkaoz_KVWpqc,15205
30
+ wavedl/models/vit.py,sha256=5DXshtBdN2jYlH8MxWGTlIxP5lgbmfsdLSNchOvTaYk,14911
31
+ wavedl/utils/__init__.py,sha256=s5R9bRmJ8GNcJrD3OSAOXzwZJIXZbdYrAkZnus11sVQ,3300
32
+ wavedl/utils/config.py,sha256=MXkaVc1_zo8sDro8mjtK1MV65t2z8b1Z6fviwSorNiY,10534
33
+ wavedl/utils/constraints.py,sha256=V9Gyi8-uIMbLUWb2cOaHZD0SliWLxVrHZHFyo4HWK7g,18031
34
+ wavedl/utils/cross_validation.py,sha256=HfInyZ8gUROc_AyihYKzzUE0vnoPt_mFvAI2OPK4P54,17945
35
+ wavedl/utils/data.py,sha256=5ph2Pi8PKvuaSoJaXbFIL9WsX8pTN0A6P8FdmxvXdv4,63469
36
+ wavedl/utils/distributed.py,sha256=7wQ3mRjkp_xjPSxDWMnBf5dSkAGUaTzntxbz0BhC5v0,4145
37
+ wavedl/utils/losses.py,sha256=KWpU5S5noFzp3bLbcH9RNpkFPajy6fyTIh5cNjI-BYA,7038
38
+ wavedl/utils/metrics.py,sha256=YoqiXWOsUB9Y4_alj8CmHcTgnV4MFcH5PH4XlIC13HY,40304
39
+ wavedl/utils/optimizers.py,sha256=ZoETDSOK1fWUT2dx69PyYebeM8Vcqf9zOIKUERWk5HY,6107
40
+ wavedl/utils/schedulers.py,sha256=K6YCiyiMM9rb0cCRXTp89noXeXcAyUEiePr27O5Cozs,7408
41
+ wavedl-1.6.1.dist-info/LICENSE,sha256=cEUCvcvH-9BT9Y-CNGY__PwWONCKu9zsoIqWA-NeHJ4,1066
42
+ wavedl-1.6.1.dist-info/METADATA,sha256=eS4uG6dzEVs25zYmiZZnGeHz8lUHIVKL9TpyCJt7kh8,48232
43
+ wavedl-1.6.1.dist-info/WHEEL,sha256=beeZ86-EfXScwlR_HKu4SllMC9wUEj_8Z_4FJ3egI2w,91
44
+ wavedl-1.6.1.dist-info/entry_points.txt,sha256=f1RNDkXFZwBzrBzTMFocJ6xhfTvTmaEDTi5YyDEUaF8,140
45
+ wavedl-1.6.1.dist-info/top_level.txt,sha256=ccneUt3D5Qzbh3bsBSSrq9bqrhGiogcWKY24ZC4Q6Xw,7
46
+ wavedl-1.6.1.dist-info/RECORD,,
@@ -1,38 +0,0 @@
1
- wavedl/__init__.py,sha256=Sp5fnCumQ3_S2X9LMYJsS9p7vSbjdOiQf15wBIE1RcE,1177
2
- wavedl/hpc.py,sha256=6rV38nozzMt0-jKZbVJNwvQZXK0wUsIZmr9lgWN_XUw,9212
3
- wavedl/hpo.py,sha256=CZF0MZwTGMOrPGDveUXZFbGHwLHj1FcJTCBKVVEtLWg,15105
4
- wavedl/test.py,sha256=1UUy9phCqrr3h_lN6mGJ7Sj73skDg4KyLk2Yuq9DiKU,38797
5
- wavedl/train.py,sha256=JL1ZHsqBRGTqRjoAY--vVj47kq9LdDTqen8ABkLnwEw,59090
6
- wavedl/models/__init__.py,sha256=lfSohEnAUztO14nuwayMJhPjpgySzRN3jGiyAUuBmAU,3206
7
- wavedl/models/_template.py,sha256=J_D8taSPmV8lBaucN_vU-WiG98iFr7CJrZVNNX_Tdts,4600
8
- wavedl/models/base.py,sha256=T9iDF9IQM2MYucG_ggQd31rieUkB2fob-nkHyNIl2ak,7337
9
- wavedl/models/cnn.py,sha256=rn2Xmup0w_ll6wuAnYclSeIVazoSUrUGPY-9XnhA1gE,8341
10
- wavedl/models/convnext.py,sha256=5zELY0ztMB6FxJB9uBurloT7JBdxLXezmrNRzLQjrI0,12846
11
- wavedl/models/densenet.py,sha256=LzNbQOvtcJJ4SVf-XvIlXGNUgVS2SXl-MMPbr8lcYrA,12995
12
- wavedl/models/efficientnet.py,sha256=nBgtc6EBUuDjzxg5xwW3Ftb3LFcpK2sgmyGuZL19fGA,8210
13
- wavedl/models/efficientnetv2.py,sha256=zmnCJVa3J6jOXs5xQLvaTwUllno46ieAco1zKCoEzVU,11235
14
- wavedl/models/mobilenetv3.py,sha256=61iNPtRA8sfvWfedVZ5G1bpzaUOoGLWX5W66j_ymRyo,10483
15
- wavedl/models/registry.py,sha256=InYAXX2xbRvsFDFnYUPCptJh0F9lHlFPN77A9kqHRT0,2980
16
- wavedl/models/regnet.py,sha256=aYZ0ygtLGCHgPoxnFAx5TajGfBmvOetzyQHP7MhHaLI,14093
17
- wavedl/models/resnet.py,sha256=laePTbIgINijh-Xkcp4iui8-1F17NJAjyAuA4T11eG4,18027
18
- wavedl/models/resnet3d.py,sha256=C7CL4XeSnRlIBuwf5Ei-z183uzIBObrXfkM9Iwuc5e0,8746
19
- wavedl/models/swin.py,sha256=7bHBZokjBuo3GGGG6rclYq8uoqCHCsd70-ExL12dW-4,15390
20
- wavedl/models/tcn.py,sha256=u2R61Kr6D90c6eszmzJHMuMo3pQU7oj82masPlw4Ajg,13187
21
- wavedl/models/unet.py,sha256=LqIXhasdBygwP7SZNNmiW1bHMPaJTVBpaeHtPgEHkdU,7790
22
- wavedl/models/vit.py,sha256=D4jlYAlvegb3O19jCPpUHYmt5q0SZ7EGVBIWiYbq0GA,14816
23
- wavedl/utils/__init__.py,sha256=s5R9bRmJ8GNcJrD3OSAOXzwZJIXZbdYrAkZnus11sVQ,3300
24
- wavedl/utils/config.py,sha256=AsGwb3XtxmbTLb59BLl5AA4wzMNgVTpl7urOJ6IGqfM,10901
25
- wavedl/utils/constraints.py,sha256=V9Gyi8-uIMbLUWb2cOaHZD0SliWLxVrHZHFyo4HWK7g,18031
26
- wavedl/utils/cross_validation.py,sha256=gwXSFTx5oxWndPjWLJAJzB6nnq2f1t9f86SbjbF-jNI,18475
27
- wavedl/utils/data.py,sha256=UaHYWUhtASHWBkMjM4HkUXjsgQdFbAQPnC9btcMihxg,61985
28
- wavedl/utils/distributed.py,sha256=7wQ3mRjkp_xjPSxDWMnBf5dSkAGUaTzntxbz0BhC5v0,4145
29
- wavedl/utils/losses.py,sha256=5762M-TBC_hz6uyj1NPbU1vZeFOJQq7fR3-j7OygJRo,7254
30
- wavedl/utils/metrics.py,sha256=YoqiXWOsUB9Y4_alj8CmHcTgnV4MFcH5PH4XlIC13HY,40304
31
- wavedl/utils/optimizers.py,sha256=PyIkJ_hRhFi_Fio81Gy5YQNhcME0JUUEl8OTSyu-0RA,6323
32
- wavedl/utils/schedulers.py,sha256=e6Sf0yj8VOqkdwkUHLMyUfGfHKTX4NMr-zfgxWqCTYI,7659
33
- wavedl-1.5.7.dist-info/LICENSE,sha256=cEUCvcvH-9BT9Y-CNGY__PwWONCKu9zsoIqWA-NeHJ4,1066
34
- wavedl-1.5.7.dist-info/METADATA,sha256=kqRSEFWMTzR6pewC8pCp2oj7HtD_HrxH4RFOvBvHk2Y,46106
35
- wavedl-1.5.7.dist-info/WHEEL,sha256=beeZ86-EfXScwlR_HKu4SllMC9wUEj_8Z_4FJ3egI2w,91
36
- wavedl-1.5.7.dist-info/entry_points.txt,sha256=f1RNDkXFZwBzrBzTMFocJ6xhfTvTmaEDTi5YyDEUaF8,140
37
- wavedl-1.5.7.dist-info/top_level.txt,sha256=ccneUt3D5Qzbh3bsBSSrq9bqrhGiogcWKY24ZC4Q6Xw,7
38
- wavedl-1.5.7.dist-info/RECORD,,
File without changes