You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* fiftyone: get rid of "fast" dataset creation option (always include confidence)
* fiftyone: remove unused video plotting functionality
* pca: remove some options from configs to clean up
* fiftyone: update colab notebook
* [docs] data config and nan uniform heatmaps
* flake + isort + tests
* PR updates
* make dali matrix an array rather than a scalar
Copy file name to clipboardExpand all lines: docs/source/user_guide/config_file.rst
+19Lines changed: 19 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,25 @@ The config file contains several sections:
21
21
* ``losses``: hyperparameters for unsupervised losses
22
22
* ``eval``: paths for video inference and fiftyone app
23
23
24
+
Data parameters
25
+
===============
26
+
27
+
* ``data.imaged_orig_dims.height/width``: the current version of Lightning Pose requires all training images to be the same size. We are working on an updated version without this requirement. However, if you plan to use the PCA losses (Pose PCA or multiview PCA) then all training images **must** be the same size, otherwise the PCA subspace will erroneously contain variance related to image size.
28
+
29
+
* ``data.image_resize_dims.height/width``: images (and videos) will be resized to the specified height and width before being processed by the network. Supported values are {64, 128, 256, 384, 512}. The height and width need not be identical. Some points to keep in mind when selecting
30
+
these values: if the resized images are too small, you will lose resolution/details; if they are too large, the model takes longer to train and might not train as well.
31
+
32
+
* ``data.data_dir/video_dir``: update these to reflect your local paths
33
+
34
+
* ``data.num_keypoints``: the number of body parts. If using a mirrored setup, this should be the number of body parts summed across all views. If using a multiview setup, this number should indicate the number of keyponts per view (must be the same across all views).
35
+
36
+
* ``data.keypoint_names``: keypoint names should reflect the actual names/order in the csv file. This field is necessary if, for example, you are running inference on a machine that does not have the training data saved on it.
37
+
38
+
* ``data.columns_for_singleview_pca``: see the :ref:`Pose PCA documentation <unsup_loss_pcasv>`
39
+
40
+
* ``data.mirrored_column_matches``: see the :ref:`Multiview PCA documentation <unsup_loss_pcamv>`
This loss penalizes the difference in predictions between successive timepoints for each keypoint
130
139
independently.
@@ -133,16 +142,17 @@ independently.
133
142
134
143
temporal:
135
144
log_weight: 5.0
136
-
epsilon: 20.0
137
145
prob_threshold: 0.05
146
+
epsilon: 20.0
147
+
138
148
139
149
* ``log_weight``: weight of the loss in the final cost function
140
-
* ``epsilon``: in pixels; temporal differences below this threshold are not penalized, which keeps natural movements from being penalized. The value of epsilon will depend on the size of the video frames, framerate (how much does the animal move from one frame to the next), the size of the animal in the frame, etc.
141
150
* ``prob_threshold``: predictions with a probability below this threshold are not included in the loss. This is desirable if, for example, a keypoint is occluded and the prediction has low probability.
151
+
* ``epsilon``: in pixels; temporal differences below this threshold are not penalized, which keeps natural movements from being penalized. The value of epsilon will depend on the size of the video frames, framerate (how much does the animal move from one frame to the next), the size of the animal in the frame, etc.
142
152
143
153
.. _unsup_loss_pcasv:
144
154
145
-
Pose plausibility
155
+
Pose PCA
146
156
-----------------
147
157
This loss penalizes deviations away from a low-dimensional subspace of plausible poses computed on
148
158
labeled data.
@@ -186,7 +196,7 @@ If instead you want to include the ears and tailbase:
Below are the various hyperparameters and their descriptions.
@@ -197,19 +207,15 @@ Besides the ``log_weight`` none of the provided values need to be tested for new
197
207
pca_singleview:
198
208
log_weight: 5.0
199
209
components_to_keep: 0.99
200
-
empirical_epsilon_percentile: 1.00
201
-
empirical_epsilon_multiplier: 1.0
202
210
epsilon: null
203
211
204
212
* ``log_weight``: weight of the loss in the final cost function
205
213
* ``components_to_keep``: predictions should lie within the low-d subspace spanned by components that describe this fraction of variance
206
-
* ``empirical_epsilon_percentile``: the reprojecton error on labeled training data is computed to arrive at a noise ceiling; reprojection errors from the video data are not penalized if they fall below this percentile of labeled data error (replaces ``epsilon``)
207
-
* ``empirical_epsilon_multiplier``: this allows the user to increase the epsilon relative the the empirical epsilon error; with the multiplier the effective epsilon is `eff_epsilon = percentile(error, empirical_epsilon_percentile) * empirical_epsilon_multiplier`
208
-
* ``epsilon``: absolute error (in pixels) below which pca loss is zeroed out; if not null, this parameter takes precedence over ``empirical_epsilon_percentile``
214
+
* ``epsilon``: if not null, this parameter is automatically computed from the labeled data
209
215
210
216
.. _unsup_loss_pcamv:
211
217
212
-
Multiview consistency
218
+
Multiview PCA
213
219
---------------------
214
220
This loss penalizes deviations of predictions across all available views away from a 3-dimensional
215
221
subspace computed on labeled data.
@@ -273,12 +279,8 @@ Besides the ``log_weight`` none of the provided values need to be tested for new
273
279
pca_multiview:
274
280
log_weight: 5.0
275
281
components_to_keep: 3
276
-
empirical_epsilon_percentile: 1.00
277
-
empirical_epsilon_multiplier: 1.0
278
282
epsilon: null
279
283
280
284
* ``log_weight``: weight of the loss in the final cost function
281
-
* ``components_to_keep``: predictions should lie within the 3D subspace
282
-
* ``empirical_epsilon_percentile``: the reprojecton error on labeled training data is computed to arrive at a noise ceiling; reprojection errors from the video data are not penalized if they fall below this percentile of labeled data error (replaces ``epsilon``)
283
-
* ``empirical_epsilon_multiplier``: this allows the user to increase the epsilon relative the the empirical epsilon error; with the multiplier the effective epsilon is `eff_epsilon = percentile(error, empirical_epsilon_percentile) * empirical_epsilon_multiplier`
284
-
* ``epsilon``: absolute error (in pixels) below which pca loss is zeroed out; if not null, this parameter takes precedence over ``empirical_epsilon_percentile``
285
+
* ``components_to_keep``: should be set to 3 so that predictions lie within a 3D subspace
286
+
* ``epsilon``: if not null, this parameter is automatically computed from the labeled data
0 commit comments