YttriLab / B-SOID

Behavioral segmentation of open field in DeepLabCut, or B-SOID ("B-side"), is a pipeline that pairs unsupervised pattern recognition with supervised classification to achieve fast predictions of behaviors that are not predefined by users.
GNU General Public License v3.0
190 stars 54 forks source link

error on identify and tweak number of clusters step #43

Closed vickerse1 closed 3 years ago

vickerse1 commented 3 years ago

Run on Windows 10 (Chrome)....put in restrictive memory mode during extract and embed despite 128 GB onboard RAM....

Here is the error:


Show First 3D UMAP plot:

TypeError: '>=' not supported between instances of 'list' and 'int' Traceback: File "c:\programdata\anaconda3\envs\bsoid_v2\lib\site-packages\streamlit\script_runner.py", line 332, in _run_script exec(code, module.dict) File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app.py", line 50, in clusterer.main() File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app\clustering.py", line 103, in main self.show_classes() File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app\clustering.py", line 56, in show_classes self.assignments.shape[0] * 100)))

Can you help me with this?

Thanks,

Evan

runninghsus commented 3 years ago

Hi @vickerse1

Sometimes it takes a while to recognize/load the embeddings. Try rechecking that box (Identifying number of clusters).

vickerse1 commented 3 years ago

Hi Alex,

Thanks for the quick feedback.

I tried to reload several times, and even quit the env then fully restarted and reloaded after updating numba tbb (thread error message)....

It still doesn't work, and seems to give the same error (see below). FYI, the embeddings file ins ~2.6 GB. Is this too big? Do you think that the runtime memory error might have something to do with this? Also....while running there was a weird message about 50 MB being the maximum write size for some type of output (not sure which).

Here is the full current error message:


You have selected C:\Users\McCormick Lab\Documents\Python\B-SOID\test\output for prior working directory.

Select prior B-SOiD prefix Sep-02-2021 You have selected Sep-02-2021_XXX.sav for prior prefix.

EXTRACT AND EMBED FEATURES CHECK POINT: Done non-linear transformation of 53999 instances from 6084 D into 74 D. Move on to Identify and tweak number of clusters

IDENTIFY AND TWEAK NUMBER OF CLUSTERS. The following slider allows you to tweak number of groups based on minimum size requirements.

Select range of minimum cluster size in % 0.01 5.00 Your minimum cluster size ranges between 0.5% and 1.0%, which is equivalent to roughly 27 seconds for the smallest cluster.

Identify Clusters Autosave the clustering as you go? This will overwrite the previous saved clustering. Yes No TypeError: '>=' not supported between instances of 'list' and 'int' Traceback: File "c:\programdata\anaconda3\envs\bsoid_v2\lib\site-packages\streamlit\script_runner.py", line 332, in _run_script exec(code, module.dict) File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app.py", line 50, in clusterer.main() File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app\clustering.py", line 103, in main self.show_classes() File "C:\Users\McCormick Lab\Documents\Python\B-SOID\bsoid_app\clustering.py", line 56, in show_classes self.assignments.shape[0] * 100)))

vickerse1 commented 3 years ago

also, to be sure i'm using the correct "pose file" from deepLabCut as the input....it's the one in the videos subfolder of the project, with a name like this:

lft_cam_1_concat_90min_cropDLC_resnet50_3056_200924_E235_1_lft_Aug2221_THORAug22shuffle1_650000.csv

?

Thanks,

Evan

runninghsus commented 3 years ago

yeah everything looks fine. The error message is there because you need to click identify clusters.

identify_clusters