Closed VPetukhov closed 5 years ago
Thanks for this example. I had it set up this way because cell subtypes tended to be also marked by their parent types and so I got similar results either way (in fact, adding the above does not alter my test set), however I think you're right that there are cases where this will be important and the classification should mimic the conditions where the training occurred (i.e. only on the subset). For the moment, I'm going to implement as above with slight tweaks because it will take less overall reworking, but I'll put reworking for better performance as a to do list item for future.
I'm going to do a bit more testing and then I'll push the change
Currently implemented
Hi again,
With the new options I debug garnett on my data (human brain) and see some weird behaviour. Here is the simplified annotation:
And here is t-SNE of these markers in the dataset:
With the following clustering:
Here, clusters 10, 17, and 27 must be "VIP", while 16 and 32 are "VIP SEMA3".
When I run annotation, garnett assigns most of Excitatory neurons to "VIP SEMA3" cluster, which are Inhibitory indeed (see annotation above):
When I look at the code, I see no place, where validation for inheritance of cell types should be. So, I changed few lines to
fill_in_assignments
. From:To:
It did the job, so the new assignment is:
I don't feel that it's a correct fix though, as I'd expect that garnett shouldn't apply classifier of VIP subtypes to Excitatory neurons in the first place. What's your opinion on that?