sleap-nn 0.1.0__py3-none-any.whl → 0.1.0a1__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 (53) hide show
  1. sleap_nn/__init__.py +1 -1
  2. sleap_nn/architectures/convnext.py +0 -5
  3. sleap_nn/architectures/encoder_decoder.py +6 -25
  4. sleap_nn/architectures/swint.py +0 -8
  5. sleap_nn/cli.py +60 -364
  6. sleap_nn/config/data_config.py +5 -11
  7. sleap_nn/config/get_config.py +4 -5
  8. sleap_nn/config/trainer_config.py +0 -71
  9. sleap_nn/data/augmentation.py +241 -50
  10. sleap_nn/data/custom_datasets.py +34 -364
  11. sleap_nn/data/instance_cropping.py +1 -1
  12. sleap_nn/data/resizing.py +2 -2
  13. sleap_nn/data/utils.py +17 -135
  14. sleap_nn/evaluation.py +22 -81
  15. sleap_nn/inference/bottomup.py +20 -86
  16. sleap_nn/inference/peak_finding.py +19 -88
  17. sleap_nn/inference/predictors.py +117 -224
  18. sleap_nn/legacy_models.py +11 -65
  19. sleap_nn/predict.py +9 -37
  20. sleap_nn/train.py +4 -69
  21. sleap_nn/training/callbacks.py +105 -1046
  22. sleap_nn/training/lightning_modules.py +65 -602
  23. sleap_nn/training/model_trainer.py +204 -201
  24. {sleap_nn-0.1.0.dist-info → sleap_nn-0.1.0a1.dist-info}/METADATA +3 -15
  25. sleap_nn-0.1.0a1.dist-info/RECORD +65 -0
  26. {sleap_nn-0.1.0.dist-info → sleap_nn-0.1.0a1.dist-info}/WHEEL +1 -1
  27. sleap_nn/data/skia_augmentation.py +0 -414
  28. sleap_nn/export/__init__.py +0 -21
  29. sleap_nn/export/cli.py +0 -1778
  30. sleap_nn/export/exporters/__init__.py +0 -51
  31. sleap_nn/export/exporters/onnx_exporter.py +0 -80
  32. sleap_nn/export/exporters/tensorrt_exporter.py +0 -291
  33. sleap_nn/export/metadata.py +0 -225
  34. sleap_nn/export/predictors/__init__.py +0 -63
  35. sleap_nn/export/predictors/base.py +0 -22
  36. sleap_nn/export/predictors/onnx.py +0 -154
  37. sleap_nn/export/predictors/tensorrt.py +0 -312
  38. sleap_nn/export/utils.py +0 -307
  39. sleap_nn/export/wrappers/__init__.py +0 -25
  40. sleap_nn/export/wrappers/base.py +0 -96
  41. sleap_nn/export/wrappers/bottomup.py +0 -243
  42. sleap_nn/export/wrappers/bottomup_multiclass.py +0 -195
  43. sleap_nn/export/wrappers/centered_instance.py +0 -56
  44. sleap_nn/export/wrappers/centroid.py +0 -58
  45. sleap_nn/export/wrappers/single_instance.py +0 -83
  46. sleap_nn/export/wrappers/topdown.py +0 -180
  47. sleap_nn/export/wrappers/topdown_multiclass.py +0 -304
  48. sleap_nn/inference/postprocessing.py +0 -284
  49. sleap_nn/training/schedulers.py +0 -191
  50. sleap_nn-0.1.0.dist-info/RECORD +0 -88
  51. {sleap_nn-0.1.0.dist-info → sleap_nn-0.1.0a1.dist-info}/entry_points.txt +0 -0
  52. {sleap_nn-0.1.0.dist-info → sleap_nn-0.1.0a1.dist-info}/licenses/LICENSE +0 -0
  53. {sleap_nn-0.1.0.dist-info → sleap_nn-0.1.0a1.dist-info}/top_level.txt +0 -0
@@ -1,191 +0,0 @@
1
- """Custom learning rate schedulers for sleap-nn training.
2
-
3
- This module provides learning rate schedulers with warmup phases that are commonly
4
- used in deep learning for pose estimation and computer vision tasks.
5
- """
6
-
7
- import math
8
- from torch.optim.lr_scheduler import LRScheduler
9
-
10
-
11
- class LinearWarmupCosineAnnealingLR(LRScheduler):
12
- """Cosine annealing learning rate scheduler with linear warmup.
13
-
14
- The learning rate increases linearly from `warmup_start_lr` to the optimizer's
15
- base learning rate over `warmup_epochs`, then decreases following a cosine
16
- curve to `eta_min` over the remaining epochs.
17
-
18
- This schedule is widely used in vision transformers and modern CNN architectures
19
- as it provides stable early training (warmup) and smooth convergence (cosine decay).
20
-
21
- Args:
22
- optimizer: Wrapped optimizer.
23
- warmup_epochs: Number of epochs for the linear warmup phase.
24
- max_epochs: Total number of training epochs.
25
- warmup_start_lr: Learning rate at the start of warmup. Default: 0.0.
26
- eta_min: Minimum learning rate at the end of the schedule. Default: 0.0.
27
- last_epoch: The index of the last epoch. Default: -1.
28
-
29
- Example:
30
- >>> optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)
31
- >>> scheduler = LinearWarmupCosineAnnealingLR(
32
- ... optimizer, warmup_epochs=5, max_epochs=100, eta_min=1e-6
33
- ... )
34
- >>> for epoch in range(100):
35
- ... train(...)
36
- ... scheduler.step()
37
- """
38
-
39
- def __init__(
40
- self,
41
- optimizer,
42
- warmup_epochs: int,
43
- max_epochs: int,
44
- warmup_start_lr: float = 0.0,
45
- eta_min: float = 0.0,
46
- last_epoch: int = -1,
47
- ):
48
- """Initialize the scheduler.
49
-
50
- Args:
51
- optimizer: Wrapped optimizer.
52
- warmup_epochs: Number of epochs for the linear warmup phase.
53
- max_epochs: Total number of training epochs.
54
- warmup_start_lr: Learning rate at the start of warmup. Default: 0.0.
55
- eta_min: Minimum learning rate at the end of the schedule. Default: 0.0.
56
- last_epoch: The index of the last epoch. Default: -1.
57
- """
58
- if warmup_epochs < 0:
59
- raise ValueError(f"warmup_epochs must be >= 0, got {warmup_epochs}")
60
- if max_epochs <= 0:
61
- raise ValueError(f"max_epochs must be > 0, got {max_epochs}")
62
- if warmup_epochs >= max_epochs:
63
- raise ValueError(
64
- f"warmup_epochs ({warmup_epochs}) must be < max_epochs ({max_epochs})"
65
- )
66
- if warmup_start_lr < 0:
67
- raise ValueError(f"warmup_start_lr must be >= 0, got {warmup_start_lr}")
68
- if eta_min < 0:
69
- raise ValueError(f"eta_min must be >= 0, got {eta_min}")
70
-
71
- self.warmup_epochs = warmup_epochs
72
- self.max_epochs = max_epochs
73
- self.warmup_start_lr = warmup_start_lr
74
- self.eta_min = eta_min
75
- super().__init__(optimizer, last_epoch)
76
-
77
- def get_lr(self):
78
- """Compute the learning rate at the current epoch."""
79
- if self.last_epoch < self.warmup_epochs:
80
- # Linear warmup phase
81
- if self.warmup_epochs == 0:
82
- return list(self.base_lrs)
83
- alpha = self.last_epoch / self.warmup_epochs
84
- return [
85
- self.warmup_start_lr + alpha * (base_lr - self.warmup_start_lr)
86
- for base_lr in self.base_lrs
87
- ]
88
- else:
89
- # Cosine annealing phase
90
- decay_epochs = self.max_epochs - self.warmup_epochs
91
- if decay_epochs == 0:
92
- return [self.eta_min for _ in self.base_lrs]
93
- progress = (self.last_epoch - self.warmup_epochs) / decay_epochs
94
- # Clamp progress to [0, 1] to handle epochs beyond max_epochs
95
- progress = min(1.0, progress)
96
- return [
97
- self.eta_min
98
- + (base_lr - self.eta_min) * (1 + math.cos(math.pi * progress)) / 2
99
- for base_lr in self.base_lrs
100
- ]
101
-
102
-
103
- class LinearWarmupLinearDecayLR(LRScheduler):
104
- """Linear warmup followed by linear decay learning rate scheduler.
105
-
106
- The learning rate increases linearly from `warmup_start_lr` to the optimizer's
107
- base learning rate over `warmup_epochs`, then decreases linearly to `end_lr`
108
- over the remaining epochs.
109
-
110
- This schedule provides a simple, interpretable learning rate trajectory and is
111
- commonly used in transformer-based models and NLP tasks.
112
-
113
- Args:
114
- optimizer: Wrapped optimizer.
115
- warmup_epochs: Number of epochs for the linear warmup phase.
116
- max_epochs: Total number of training epochs.
117
- warmup_start_lr: Learning rate at the start of warmup. Default: 0.0.
118
- end_lr: Learning rate at the end of training. Default: 0.0.
119
- last_epoch: The index of the last epoch. Default: -1.
120
-
121
- Example:
122
- >>> optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)
123
- >>> scheduler = LinearWarmupLinearDecayLR(
124
- ... optimizer, warmup_epochs=5, max_epochs=100, end_lr=1e-6
125
- ... )
126
- >>> for epoch in range(100):
127
- ... train(...)
128
- ... scheduler.step()
129
- """
130
-
131
- def __init__(
132
- self,
133
- optimizer,
134
- warmup_epochs: int,
135
- max_epochs: int,
136
- warmup_start_lr: float = 0.0,
137
- end_lr: float = 0.0,
138
- last_epoch: int = -1,
139
- ):
140
- """Initialize the scheduler.
141
-
142
- Args:
143
- optimizer: Wrapped optimizer.
144
- warmup_epochs: Number of epochs for the linear warmup phase.
145
- max_epochs: Total number of training epochs.
146
- warmup_start_lr: Learning rate at the start of warmup. Default: 0.0.
147
- end_lr: Learning rate at the end of training. Default: 0.0.
148
- last_epoch: The index of the last epoch. Default: -1.
149
- """
150
- if warmup_epochs < 0:
151
- raise ValueError(f"warmup_epochs must be >= 0, got {warmup_epochs}")
152
- if max_epochs <= 0:
153
- raise ValueError(f"max_epochs must be > 0, got {max_epochs}")
154
- if warmup_epochs >= max_epochs:
155
- raise ValueError(
156
- f"warmup_epochs ({warmup_epochs}) must be < max_epochs ({max_epochs})"
157
- )
158
- if warmup_start_lr < 0:
159
- raise ValueError(f"warmup_start_lr must be >= 0, got {warmup_start_lr}")
160
- if end_lr < 0:
161
- raise ValueError(f"end_lr must be >= 0, got {end_lr}")
162
-
163
- self.warmup_epochs = warmup_epochs
164
- self.max_epochs = max_epochs
165
- self.warmup_start_lr = warmup_start_lr
166
- self.end_lr = end_lr
167
- super().__init__(optimizer, last_epoch)
168
-
169
- def get_lr(self):
170
- """Compute the learning rate at the current epoch."""
171
- if self.last_epoch < self.warmup_epochs:
172
- # Linear warmup phase
173
- if self.warmup_epochs == 0:
174
- return list(self.base_lrs)
175
- alpha = self.last_epoch / self.warmup_epochs
176
- return [
177
- self.warmup_start_lr + alpha * (base_lr - self.warmup_start_lr)
178
- for base_lr in self.base_lrs
179
- ]
180
- else:
181
- # Linear decay phase
182
- decay_epochs = self.max_epochs - self.warmup_epochs
183
- if decay_epochs == 0:
184
- return [self.end_lr for _ in self.base_lrs]
185
- progress = (self.last_epoch - self.warmup_epochs) / decay_epochs
186
- # Clamp progress to [0, 1] to handle epochs beyond max_epochs
187
- progress = min(1.0, progress)
188
- return [
189
- base_lr + progress * (self.end_lr - base_lr)
190
- for base_lr in self.base_lrs
191
- ]
@@ -1,88 +0,0 @@
1
- sleap_nn/.DS_Store,sha256=HY8amA79eHkt7o5VUiNsMxkc9YwW6WIPyZbYRj_JdSU,6148
2
- sleap_nn/__init__.py,sha256=nl_xOwr4X0BDdND9odwKF63zX2EytLkDx0S4EDMJjeo,1360
3
- sleap_nn/cli.py,sha256=VU0fHIy02BErq8aQs0s9bNAKx__qpwzbfpsA7j3jHVI,31285
4
- sleap_nn/evaluation.py,sha256=SRO3qNOyyGoNBLLA2OKIUhvwyk0oI2ax1rtYmccx6m0,33785
5
- sleap_nn/legacy_models.py,sha256=fKUzmsmHpkEACk2uSDYcILoV1gNFoOXwxlzP_NO3jWo,22426
6
- sleap_nn/predict.py,sha256=ai-0nfknh6JT0BrJL_DECq6QVRe1cCwfpvXQCaDVC7o,36515
7
- sleap_nn/system_info.py,sha256=7tWe3y6s872nDbrZoHIdSs-w4w46Z4dEV2qCV-Fe7No,14711
8
- sleap_nn/train.py,sha256=afRzm5t0S1GTFXAkPB1Qh4sa71sIwnNwFZjmvZ33wwI,30765
9
- sleap_nn/architectures/__init__.py,sha256=w0XxQcx-CYyooszzvxRkKWiJkUg-26IlwQoGna8gn40,46
10
- sleap_nn/architectures/common.py,sha256=MLv-zdHsWL5Q2ct_Wv6SQbRS-5hrFtjK_pvBEfwx-vU,3660
11
- sleap_nn/architectures/convnext.py,sha256=Ba9SFQHBdfz8gcMYZPMItuW-FyQuHBgUU0M8MWhaHuY,14210
12
- sleap_nn/architectures/encoder_decoder.py,sha256=1cBk9WU0zkXC2aK9XZy6VKHEe2hJEpIa-rwCxNgObZg,29292
13
- sleap_nn/architectures/heads.py,sha256=5E-7kQ-b2gsL0EviQ8z3KS1DAAMT4F2ZnEzx7eSG5gg,21001
14
- sleap_nn/architectures/model.py,sha256=1_dsP_4T9fsEVJjDt3er0haMKtbeM6w6JC6tc2jD0Gw,7139
15
- sleap_nn/architectures/swint.py,sha256=hlShh1Br0eTijir2U3np8sAaNJa12Xny0VzPx8HSaRo,15060
16
- sleap_nn/architectures/unet.py,sha256=rAy2Omi6tv1MNW2nBn0Tw-94Nw_-1wFfCT3-IUyPcgo,11723
17
- sleap_nn/architectures/utils.py,sha256=L0KVs0gbtG8U75Sl40oH_r_w2ySawh3oQPqIGi54HGo,2171
18
- sleap_nn/config/__init__.py,sha256=l0xV1uJsGJfMPfWAqlUR7Ivu4cSCWsP-3Y9ueyPESuk,42
19
- sleap_nn/config/data_config.py,sha256=LiZ3TGUZk6EiLJXXsu9kGOf84eUyGNMWrQ3XvsIYuAA,24426
20
- sleap_nn/config/get_config.py,sha256=er-ZTMQT68uhDNbQUDVhY8FzqeyFDcgEpLn1ZRMjATQ,42449
21
- sleap_nn/config/model_config.py,sha256=XFIbqFno7IkX0Se5WF_2_7aUalAlC2SvpDe-uP2TttM,57582
22
- sleap_nn/config/trainer_config.py,sha256=JBbojDcxDZR5RqpM4eNqEko6-nOYuvT3eDPSpb1OLFQ,31715
23
- sleap_nn/config/training_job_config.py,sha256=v12_ME_tBUg8JFwOxJNW4sDQn-SedDhiJOGz-TlRwT0,5861
24
- sleap_nn/config/utils.py,sha256=GgWgVs7_N7ifsJ5OQG3_EyOagNyN3Dx7wS2BAlkaRkg,5553
25
- sleap_nn/data/__init__.py,sha256=eMNvFJFa3gv5Rq8oK5wzo6zt1pOlwUGYf8EQii6bq7c,54
26
- sleap_nn/data/augmentation.py,sha256=1tTHphaD021SYvt27dpGnlgZAxjRIcGetnWvz20YXtc,6454
27
- sleap_nn/data/confidence_maps.py,sha256=PTRqZWSAz1S7viJhxu7QgIC1aHiek97c_dCUsKUwG1o,6217
28
- sleap_nn/data/custom_datasets.py,sha256=CdZ_hblKHvIf4zYD0CWGU511uA3_7Ca1oq2r3mbyz5I,112101
29
- sleap_nn/data/edge_maps.py,sha256=75qG_7zHRw7fC8JUCVI2tzYakIoxxneWWmcrTwjcHPo,12519
30
- sleap_nn/data/identity.py,sha256=7vNup6PudST4yDLyDT9wDO-cunRirTEvx4sP77xrlfk,5193
31
- sleap_nn/data/instance_centroids.py,sha256=SF-3zJt_VMTbZI5ssbrvmZQZDd3684bn55EAtvcbQ6o,2172
32
- sleap_nn/data/instance_cropping.py,sha256=1DQJDmSM18gUVofXfoVg-hQnXPeLdtY-buGSbTPLy1c,8334
33
- sleap_nn/data/normalization.py,sha256=5xEvcguG-fvAGObl4nWPZ9TEM5gvv0uYPGDuni34XII,2930
34
- sleap_nn/data/providers.py,sha256=0x6GFP1s1c08ji4p0M5V6p-dhT4Z9c-SI_Aw1DWX-uM,14272
35
- sleap_nn/data/resizing.py,sha256=bYxELbDJZen3tiwEbv__EtNgmJcQJhQ7CRIJ30t-UvI,5040
36
- sleap_nn/data/skia_augmentation.py,sha256=CQYy592-poPfiwOcTR6X9eY1lm-e7piJU-LlBHEe37w,14593
37
- sleap_nn/data/utils.py,sha256=ap3fYqk2UFiCS4cAdZz8x3ahMrkLmvXnHfRx6R-_5OQ,11130
38
- sleap_nn/export/__init__.py,sha256=E5FN_dG7583V_poTMS8jthL0Bf07qFCUA0kY2iewlvk,574
39
- sleap_nn/export/cli.py,sha256=UcXrefi7YKunaIzbW97QeBQmbG3_-7Xa4XZgcwOGd9k,63568
40
- sleap_nn/export/metadata.py,sha256=ory-smt2tpgObmld7WicxEFFHM03hl6yasl4N3KVTmA,7427
41
- sleap_nn/export/utils.py,sha256=oSVf_PCG1IUZd6ZpgwOMPgqVkMxaO50tt2C-cTUMGg4,11414
42
- sleap_nn/export/exporters/__init__.py,sha256=zBZMEjqzjGDq1KvIiKSVrHPplE4zVtUW3MHQ5kGg1M4,1459
43
- sleap_nn/export/exporters/onnx_exporter.py,sha256=i3GWYn9NH2i_SJd2OmVHZgUfJJW9w-Swms1YDM-HhEc,2129
44
- sleap_nn/export/exporters/tensorrt_exporter.py,sha256=5v_wnkal7bPKgrhQRL8akYikmQ_8PdqVr1ajpmU1oGo,9069
45
- sleap_nn/export/predictors/__init__.py,sha256=xmDFeK05eHO9-Obue3jhBy4VMBW0NZjyGXSuL3RMhJY,1772
46
- sleap_nn/export/predictors/base.py,sha256=5uJjMSuG4p-I3YPY9tpn6m8HdENcPqFtjpehL5mNuAg,584
47
- sleap_nn/export/predictors/onnx.py,sha256=uiFIrCQBxZ_pK4x0JUx2N2k6qzN8KqfQtXAa4FkqVIs,5125
48
- sleap_nn/export/predictors/tensorrt.py,sha256=lrYjw_lasjbGIku8aM5b26G92bXdvQaVAKrT6U4Xcco,10805
49
- sleap_nn/export/wrappers/__init__.py,sha256=OeMCP8UCXNwmAYCrudKX-Gt4nhr9z13bzkdrZHjUNnk,984
50
- sleap_nn/export/wrappers/base.py,sha256=sd55SCkjOdMYut9Yh8Yi1MMF8EY0U9oYtXadmi7xD80,3462
51
- sleap_nn/export/wrappers/bottomup.py,sha256=rh4-wu4Oc8JWWW3K3xLhiTkyQ3dqhJ9QfMrPY65ck4Y,9237
52
- sleap_nn/export/wrappers/bottomup_multiclass.py,sha256=r0-LJxv8zYTUr94ytlj1rp0GDuodY6CugLIl93IVhRA,7495
53
- sleap_nn/export/wrappers/centered_instance.py,sha256=PShtVAlJhSbyuAVmRNjIM3PnOngaRFX3LtX-wO91Qqs,1704
54
- sleap_nn/export/wrappers/centroid.py,sha256=3nbbysCkzHS9pRC2-37z4Z1Ol5XEdvYahyR4Gm25dqc,1840
55
- sleap_nn/export/wrappers/single_instance.py,sha256=ZoQICK5_tuPjA19wsDmq8ljhM1Qus2_O8ZCDq6yd2L4,2826
56
- sleap_nn/export/wrappers/topdown.py,sha256=_HAtEASBSfLTfFO9Q7honIpm4ECNoMR76JLkWyO-PF8,6809
57
- sleap_nn/export/wrappers/topdown_multiclass.py,sha256=fJ3SC76BdB5QWOvMobCoKqf1OQBJGoi5MS0Bv6_gQmY,11920
58
- sleap_nn/inference/__init__.py,sha256=eVkCmKrxHlDFJIlZTf8B5XEOcSyw-gPQymXMY5uShOM,170
59
- sleap_nn/inference/bottomup.py,sha256=3s90aRlpIcRnSNe-R5-qiuX3S48kCWMpCl8YuNnTEDI,17084
60
- sleap_nn/inference/identity.py,sha256=GjNDL9MfGqNyQaK4AE8JQCAE8gpMuE_Y-3r3Gpa53CE,6540
61
- sleap_nn/inference/paf_grouping.py,sha256=7Fo9lCAj-zcHgv5rI5LIMYGcixCGNt_ZbSNs8Dik7l8,69973
62
- sleap_nn/inference/peak_finding.py,sha256=JS4qIcl72Ep4vbbYYdngqu7rRl3MW8kFaH8W9BRoOyA,15920
63
- sleap_nn/inference/postprocessing.py,sha256=ZM_OH7_WIprieaujZ2Rk_34JhSDDzCry6Pq2YM_u5sg,8998
64
- sleap_nn/inference/predictors.py,sha256=dztVxdEPgSrc8bfB-t4DBa0wkg9p0HcVoZrZ-FcpP24,160720
65
- sleap_nn/inference/provenance.py,sha256=0BekXyvpLMb0Vv6DjpctlLduG9RN-Q8jt5zDm783eZE,11204
66
- sleap_nn/inference/single_instance.py,sha256=rOns_5TsJ1rb-lwmHG3ZY-pOhXGN2D-SfW9RmBxxzcI,4089
67
- sleap_nn/inference/topdown.py,sha256=Ha0Nwx-XCH_rebIuIGhP0qW68QpjLB3XRr9rxt05JLs,35108
68
- sleap_nn/inference/utils.py,sha256=JnaJK4S_qLtHkWOSkHf4oRZjOmgnU9BGADQnntgGxxs,4689
69
- sleap_nn/tracking/__init__.py,sha256=rGR35wpSW-n5d3cMiQUzQQ_Dy5II5DPjlXAoPw2QhmM,31
70
- sleap_nn/tracking/track_instance.py,sha256=9k0uVy9VmpleaLcJh7sVWSeFUPXiw7yj95EYNdXJcks,1373
71
- sleap_nn/tracking/tracker.py,sha256=_WT-HFruzyOsvcq3AtLm3vnI9MYSwyBmq-HlQvj1vmU,41955
72
- sleap_nn/tracking/utils.py,sha256=uHVd_mzzZjviVDdLSKXJJ1T96n5ObKvkqIuGsl9Yy8U,11276
73
- sleap_nn/tracking/candidates/__init__.py,sha256=1O7NObIwshM7j1rLHmImbFphvkM9wY1j4j1TvO5scSE,49
74
- sleap_nn/tracking/candidates/fixed_window.py,sha256=D80KMlTnenuQveQVVhk9j0G8yx6K324C7nMLHgG76e0,6296
75
- sleap_nn/tracking/candidates/local_queues.py,sha256=Nx3R5wwEwq0gbfH-fi3oOumfkQo8_sYe5GN47pD9Be8,7305
76
- sleap_nn/training/__init__.py,sha256=vNTKsIJPZHJwFSKn5PmjiiRJunR_9e7y4_v0S6rdF8U,32
77
- sleap_nn/training/callbacks.py,sha256=k1WAe7ZdanwPyrJua08-wrzoD-fjWxPk252Q4ncL-Gs,63250
78
- sleap_nn/training/lightning_modules.py,sha256=Py6aFV51URL-SOqjO-cbdS4VsjNoNwMj0RcAFAqQe_E,110241
79
- sleap_nn/training/losses.py,sha256=gbdinUURh4QUzjmNd2UJpt4FXwecqKy9gHr65JZ1bZk,1632
80
- sleap_nn/training/model_trainer.py,sha256=iYm2jGhNXNt6jc-FZRaIS6kJVOvdX0Ixk7lnvQEZBLc,59844
81
- sleap_nn/training/schedulers.py,sha256=PFc1M-PM1khaNfndoi5VSW-A04lLYfPf_5gFA4pkrLk,7681
82
- sleap_nn/training/utils.py,sha256=ivdkZEI0DkTCm6NPszsaDOh9jSfozkONZdl6TvvQUWI,20398
83
- sleap_nn-0.1.0.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
84
- sleap_nn-0.1.0.dist-info/METADATA,sha256=ta-irf2lxIi8zfDo8kb-nF_AobfqEX0_vsVS-5tQDzU,6302
85
- sleap_nn-0.1.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
86
- sleap_nn-0.1.0.dist-info/entry_points.txt,sha256=zfl5Y3hidZxWBvo8qXvu5piJAXJ_l6v7xVFm0gNiUoI,46
87
- sleap_nn-0.1.0.dist-info/top_level.txt,sha256=Kz68iQ55K75LWgSeqz4V4SCMGeFFYH-KGBOyhQh3xZE,9
88
- sleap_nn-0.1.0.dist-info/RECORD,,