cortex-lab / KiloSort

GPU code for spike sorting
GNU General Public License v2.0
175 stars 100 forks source link

Is ops.criterionNoiseChannels actually used anywhere in KS3? #266

Open h21ak9 opened 1 year ago

h21ak9 commented 1 year ago

I'm trying to make sense of how kcoords works and saw the following lines in configFiles/createChannelMapFile.m:

% kcoords is used to forcefully restrict templates to channels in the same
% channel group. An option can be set in the master_file to allow a fraction 
% of all templates to span more channel groups, so that they can capture shared 
% noise across all channels. This option is

% ops.criterionNoiseChannels = 0.2; 

% if this number is less than 1, it will be treated as a fraction of the total number of clusters

% if this number is larger than 1, it will be treated as the "effective
% number" of channel groups at which to set the threshold. So if a template
% occupies more than this many channel groups, it will not be restricted to
% a single channel group.

But I cannot see any instance of ops.criterionNoiseChannel actually being used in the code (I ran grep on the entire project, the above mention is the only occurrence). Elsewhere, I have seen claims that the default value for this parameter is 0.2, but those claims were made in 2018 which, as I understand it, is well before KS3 came on to the scene. So my first question is -- is the default value for this parameter still set to 0.2, and if so, where?

My second question is -- if I use a multi-shank probe, is the correct approach to just group the pixels on each shank into a different group using kcoords? Is there anything else I need to do to signify that they reside on different shanks?

zm711 commented 12 months ago

@h21ak9

This is the repo just for Kilosort 1 . This is the repo for 2+ https://github.com/MouseLand/Kilosort

That being said they removed the use of kcoords after Kilosort 1. There is an issue where they discussed it at the other repo, but I can remember which one off the top of my head. So you likely want to search there.