Algorithms configuration file¶
The following is the default configuration file, this file describes:
The name of each included algorithm
The programming language and location of the analysis file
The parameters used by the algorithm and its descriptions for validation
The plots figures and functions
The text to cite the algorithm
1encore_runners:
2 svd:
3 enabled: True
4 full_name: Singular Value Decomposition
5 language: MATLAB
6 folder_path: 'SVD'
7 analysis_function: run_svd
8 plot_function: plot_svd
9 ensemble_color: red
10 needed_data:
11 - data_neuronal_activity
12 parameters:
13 pks:
14 object_name: svd_edit_pks
15 display_name: Coactive neurons (pks)
16 description: |
17 Minimum amount of active neurons in a
18 single population vector to be considered as significative.
19 default_value: 3
20 min_value: 0
21 max_value: MAX_VAL
22 scut:
23 object_name: svd_edit_scut
24 display_name: Low similarity threshold (scut)
25 description: |
26 This is a threshold of co-activity.
27 The threshold for the low similarity filter.
28 Suggested range 0.22-0.25
29 Highly synchronous data requires higher values.
30 Use 0 for an automated threshold.
31 default_value: 0.22
32 min_value: 0
33 max_value: MAX_VAL
34 hcut:
35 object_name: svd_edit_hcut
36 display_name: hcut
37 description: |
38 Another threshold for co-activity. Further removes noise.
39 A value of 0 do not change the original binary matrix.
40 default_value: 0.22
41 min_value: 0
42 max_value: MAX_VAL
43 fixed_ens_cant:
44 object_name: svd_edit_fixed_states_cant
45 display_name: Fix number of ensembles
46 description: |
47 When different from 0, fixed the number of ensembles
48 identified, taking that amount of the main singular values.
49 default_value: 0
50 min_value: 0
51 max_value: MAX_VAL
52 state_cut:
53 object_name: svd_edit_statecut
54 display_name: state_cut
55 description: |
56 The maximum number of states is a fraction of the total number of cells.
57 This helps to define the maximum number of ensembles.
58 default_value: 6
59 min_value: 0
60 max_value: MAX_VAL
61 csi_start:
62 object_name: svd_edit_csistart
63 display_name: csi_vec_start
64 description: This is the csi start
65 default_value: 0.01
66 min_value: 0
67 max_value: MAX_VAL
68 csi_step:
69 object_name: svd_lbl_csistep
70 display_name: csi_vec_step
71 description: This is the csi step
72 default_value: 0.01
73 min_value: 0
74 max_value: MAX_VAL
75 csi_end:
76 object_name: svd_edit_csiend
77 display_name: csi_vec_end
78 description: This is the csi end
79 default_value: 0.10
80 min_value: 0
81 max_value: MAX_VAL
82 tf_idf_norm:
83 object_name: svd_check_tfidf
84 display_name: Perform TF-IDF normalization
85 description: |
86 Whether of not to perform TF-IDF normalization.
87 This normalization removes neurons that may appear in two or more different ensembles.
88 default_value: True
89 parallel_processing:
90 object_name: svd_check_parallel
91 display_name: Perform parallel
92 description: Check this box to calculate the similarity matrix using parallel computing.
93 default_value: False
94 figures:
95 - name: svd_plot_similaritymap
96 display_name: Similarity map
97 - name: svd_plot_binarysimmap
98 display_name: Binarized similarity map
99 - name: svd_plot_activity_spikes
100 display_name: Activity spikes
101 - name: svd_plot_singularvalues
102 display_name: Singular Values
103 - name: svd_plot_components
104 display_name: Components
105 - name: svd_plot_timecourse
106 display_name: Ensembles timecourse
107 - name: svd_plot_cellsinens
108 display_name: Cells in ensembles
109 source: 'For details about this method, see the following chapter: Velazquez-Contreras, R., Carrillo-Reid, L. (2025). Identification of Neuronal Ensembles from Similarity Maps Using Singular Value Decomposition. In: Carrillo-Reid, L. (eds) Identification, Characterization, and Manipulation of Neuronal Ensembles. Neuromethods, vol 215. Humana, New York, NY. https://doi.org/10.1007/978-1-0716-4208-5_5'
110 pca:
111 enabled: True
112 full_name: Principal Component Analysis
113 language: MATLAB
114 folder_path: 'NeuralEnsembles'
115 analysis_function: run_pca
116 plot_function: plot_pca
117 ensemble_color: blue
118 needed_data:
119 - data_neuronal_activity
120 parameters:
121 dc:
122 object_name: pca_edit_dc
123 display_name: dc
124 description: Cut off for distances.
125 default_value: 0.01
126 min_value: 0.0
127 max_value: MAX_VAL
128 npcs:
129 object_name: pca_edit_npcs
130 display_name: Num. of principal components
131 description: Number of principal components to use to extract ensembles.
132 default_value: 3
133 min_value: 0
134 max_value: MAX_VAL
135 minspk:
136 object_name: pca_edit_minspk
137 display_name: Min population spike
138 description: Minimum number of active neurons to be considered part of the analysis
139 default_value: 3
140 min_value: 0
141 max_value: MAX_VAL
142 nsur:
143 object_name: pca_edit_nsur
144 display_name: Number of surrogates
145 description: Surrogates for core-cells, should be 1000 or more.
146 default_value: 1000
147 min_value: 0
148 max_value: MAX_VAL
149 prct:
150 object_name: pca_edit_prct
151 display_name: Percentile for core-cells
152 description: Percentile on the core cell distribution.
153 default_value: 99.90
154 min_value: 0
155 max_value: 100
156 cent_thr:
157 object_name: pca_edit_centthr
158 display_name: Centroid detection threshold
159 description: Centroid detection threshold
160 default_value: 99.90
161 min_value: 0
162 max_value: 100
163 inner_corr:
164 object_name: pca_edit_innercorr
165 display_name: Inter-assembly correlation threshold
166 description: Inter-assembly correlation threshold
167 default_value: 5.0
168 min_value: 0
169 max_value: MAX_VAL
170 minsize:
171 object_name: pca_edit_minsize
172 display_name: Min assembly size
173 description: Minimum number of cells that can form an ensemble.
174 default_value: 3
175 min_value: 1
176 max_value: MAX_VAL
177 figures:
178 - name: pca_plot_eigs
179 display_name: Eigen values
180 - name: pca_plot_pca
181 display_name: Principal components
182 - name: pca_plot_rhodelta
183 display_name: rho vs delta
184 - name: pca_plot_corrne
185 display_name: Corr n,e
186 - name: pca_plot_corecells
187 display_name: Core cells
188 - name: pca_plot_innerens
189 display_name: Inner ensemble correlations
190 - name: pca_plot_timecourse
191 display_name: Ensembles timecourse
192 - name: pca_plot_cellsinens
193 display_name: Cells in ensembles
194
195 source: 'For details about this method, see the following paper: Herzog et al. 2021 "Scalable and accurate automated method for neuronal ensemble detection in spiking neural networks. https://pubmed.ncbi.nlm.nih.gov/34329314/ Rubén Herzog Dec 2021'
196 ica:
197 enabled: True
198 full_name: Independent Component Analysis
199 language: MATLAB
200 folder_path: 'Cell-Assembly-Detection'
201 analysis_function: run_ica
202 plot_function: plot_ica
203 ensemble_color: green
204 needed_data:
205 - data_neuronal_activity
206 parameters:
207 threshold_method:
208 object_name: ica_threshold_method
209 display_name: "Threshold method to identify\nthe number of ensembles"
210 description: |
211 Metric used to identify activity patterns.
212 Each one uses PCA but different shuffling methods to determine the number of ensembles.
213 Select one and hover again to see help about it.
214 type: enum
215 default_value: MarcenkoPastur
216 options:
217 - value: MarcenkoPastur
218 label: MarcenkoPastur
219 description: Uses the analytical bound over the principal components.
220 - value: binshuffling
221 label: binshuffling
222 description: |
223 Estimate eigenvalue distribution for independent activity
224 from surrogate matrices generated by shuffling time bins.
225 - value: circularshift
226 label: circularshift
227 description: |
228 Estimate eigenvalue distribution for independent activity
229 from surrogate matrices generated by random circular shifts of original spike matrix.
230 permutations_percentile:
231 object_name: ica_edit_perpercentile
232 display_name: Permutation percentile
233 description: |
234 Defines which percentile of the surrogate distribution of
235 maximal eigenvalues is used as statistical threshold.
236 It must be a number between 0 and 100 (95 or larger recommended).
237 Not used when MarcenkoPastur is chosen.
238 default_value: 95.0
239 min_value: 0
240 max_value: 100
241 number_of_permutations:
242 object_name: ica_edit_percant
243 display_name: Number of permutations
244 description: |
245 Defines how many surrogate matrices are generated (100 or more recommended).
246 Not used when MarcenkoPastur is chosen.
247 default_value: 20
248 min_value: 0
249 max_value: MAX_VAL
250 min_ensembles_cant:
251 object_name: ica_edit_min_ensembles_cant
252 display_name: Minimum number of ensembles
253 description: |
254 Set a minimum number of ensembles.
255 Use 0 for to remove the limit.
256 This may override the result from the shuffling algorithms.
257 default_value: 0
258 min_value: 0
259 max_value: MAX_VAL
260 max_ensembles_cant:
261 object_name: ica_edit_max_ensembles_cant
262 display_name: Maximum number of ensembles
263 description: |
264 Set a maximum number of ensembles.
265 Use 0 for to remove the limit.
266 This may override the result from the shuffling algorithms.
267 default_value: 0
268 min_value: 0
269 max_value: MAX_VAL
270 patterns_method:
271 object_name: ica_radio_method
272 display_name: Method to extract the ensemble's activity
273 description: |
274 Method used to identify when each ensemble is active.
275 This is independent from the PCA used to identify the number of ensembles.
276 type: enum
277 default_value: ICA
278 options:
279 - value: ICA
280 label: ICA
281 description: Uses Independent Component Analysis
282 - value: PCA
283 label: PCA
284 description: Uses Principal Component Analysis
285 number_of_iterations:
286 object_name: ica_edit_iterations
287 display_name: Number of iterations
288 description: |
289 Number of iterations for fastICA algorithm (100 or more recommended).
290 Not used when PCA is chosen.
291 default_value: 500
292 min_value: 0
293 max_value: MAX_VAL
294 threshold_for_p_value:
295 object_name: threshold_for_p_value
296 display_name: Threshold for neurons in ensembles
297 description: |
298 Identify the significative values to binarize the z-score weight matrix.
299 This selects the neurons in each ensemble
300 A value of 1.96 equals a 0.05 p value.
301 default_value: 1.96
302 min_value: 0.001
303 max_value: 2.000
304
305 figures:
306 - name: ica_plot_assemblys_heatmap
307 display_name: Weight of neurons in ensembles
308 - name: ica_plot_binary_patterns
309 display_name: Neurons in ensembles
310 - name: ica_plot_assemblys
311 display_name: Assembly patterns
312 - name: ica_plot_activity
313 display_name: Activity of cells assemblies
314 - name: ica_plot_binary_assemblies
315 display_name: Binary cell assemblies
316
317 source: "For details about this method, see the following paper: Lopes-dos-Santos V, Ribeiro S, Tort AB (2013) Detecting cell assemblies in large neuronal populations. J Neurosci Methods 220(2):149-66. 10.1016/j.jneumeth.2013.04.010"
318 x2p:
319 enabled: True
320 full_name: Xsembles2P
321 language: MATLAB
322 folder_path: 'Xsembles2P'
323 analysis_function: run_x2p
324 plot_function: plot_x2p
325 ensemble_color: orange
326 needed_data:
327 - data_neuronal_activity
328 parameters:
329 NetworkBin:
330 object_name: x2p_edit_bin
331 display_name: Network bin
332 description: Defines the size of the bin for the raster
333 default_value: 1
334 min_value: 1
335 max_value: MAX_VAL
336 NetworkIterations:
337 object_name: x2p_edit_iterations
338 display_name: "Number of shuffling\niterations for the network"
339 description: |
340 Number of iterations for the network
341 while calculating functional connectivity.
342 default_value: 1000
343 min_value: 1
344 max_value: MAX_VAL
345 NetworkSignificance:
346 object_name: x2p_edit_significance
347 display_name: Network significance
348 description: Significance threshold to identify different states
349 default_value: 0.05
350 min_value: 0
351 max_value: 1
352 CoactiveNeuronsThreshold:
353 object_name: x2p_edit_threshold
354 display_name: Coactive neurons threshold
355 description: Minimum number of neurons to be active at the same time to consider that population vector
356 default_value: 2
357 min_value: 1
358 max_value: MAX_VAL
359 ClusteringRangeStart:
360 object_name: x2p_edit_rangestart
361 display_name: Clustering range start
362 description: Minimum cant of ensembles to identify
363 default_value: 3
364 min_value: 1
365 max_value: MAX_VAL
366 ClusteringRangeEnd:
367 object_name: x2p_edit_rangeend
368 display_name: Clustering range end
369 description: Maximum cant of ensembles to identify
370 default_value: 10
371 min_value: 1
372 max_value: MAX_VAL
373 ClusteringFixed:
374 object_name: 'x2p_edit_fixed'
375 display_name: Clustering fixed
376 description: When different from 0, sets an exact number of ensembles to select.
377 default_value: 0
378 min_value: 0
379 max_value: MAX_VAL
380 EnsembleIterations:
381 object_name: x2p_edit_itensemble
382 display_name: "Iterations to test similarity\nwithin ensemble vectors"
383 description: Iterations ensemble
384 default_value: 1000
385 min_value: 1
386 max_value: MAX_VAL
387 ParallelProcessing:
388 object_name: x2p_check_parallel
389 display_name: Parallel processing
390 description: Whether or not to use a parallel pool to do calculations
391 default_value: False
392
393 figures:
394 - name: x2p_plot_similarity
395 display_name: Similarity
396 - name: x2p_plot_epi
397 display_name: Ensemble participation index
398 - name: x2p_plot_onsemact
399 display_name: Onsemble activity
400 - name: x2p_plot_offsemact
401 display_name: Offsemble activity
402 - name: x2p_plot_activity
403 display_name: Activity
404 - name: x2p_plot_onsemneu
405 display_name: Onsemble neurons
406 - name: x2p_plot_offsemneu
407 display_name: Offsemble neurons
408
409 source: "For details about this method, see the following paper: Perez-Ortega, J., Akrouh, A. & Yuste, R. 2024. Stimulus encoding by specific inactivation of cortical neurons. Nat Commun 15, 3192. doi: 10.1038/s41467-024-47515-x"
410 sgc:
411 enabled: True
412 full_name: Similarity Graph Clustering
413 language: MATLAB
414 folder_path: 'SGC'
415 analysis_function: run_sgc
416 plot_function: plot_sgc
417 ensemble_color: pink
418 needed_data:
419 - data_dFFo
420 parameters:
421 use_first_derivative:
422 object_name: sgc_check_firstderiv
423 display_name: Use first derivative of dFFo
424 description: Check this box to use the first derivative of the calcium signals instead of the calcium signal
425 default_value: False
426 standard_deviations_threshold:
427 object_name: sgc_edit_stdthreshold
428 display_name: Standard deviations threshold
429 description: This threshold will be used to identify moments of neuronal activity
430 default_value: 2
431 min_value: 1
432 max_value: MAX_VAL
433 shuffling_rounds:
434 object_name: sgc_edit_shuff
435 display_name: Shuffling rounds
436 description: Number of times the data will be shuffled before identifying activity patterns
437 default_value: 1000
438 min_value: 1
439 max_value: MAX_VAL
440 coactivity_significance_level:
441 object_name: sgc_edit_sig
442 display_name: Coactivivity significance level
443 description: Alpha value to determine a coactivation moment as significative
444 default_value: 0.05
445 min_value: 0.0000001
446 max_value: 1
447 montecarlo_rounds:
448 object_name: sgc_edit_monterounds
449 display_name: Montecarlo rounds
450 description: Number of Montecarlo rounds to use for the data
451 default_value: 5
452 min_value: 1
453 max_value: MAX_VAL
454 montecarlo_steps:
455 object_name: sgc_edit_montesteps
456 display_name: Montecarlo steps
457 description: Montecarlo steps
458 default_value: 10000
459 min_value: 1
460 max_value: MAX_VAL
461 affinity_threshold:
462 object_name: sgc_edit_affthres
463 display_name: Affinity threshold
464 description: Affinity threshold
465 default_value: 0.2
466 min_value: 0.00001
467 max_value: MAX_VAL
468
469 figures:
470 - name: sgc_plot_timecourse
471 display_name: Ensembles timecourse
472 - name: sgc_plot_cellsinens
473 display_name: Cells in ensembles
474
475 source: "For details about this method, see the following paper: L. Avitan et al. 'Spontaneous Activity in the Zebrafish Tectum Reorganizes over Development and Is Influenced by Visual Experience'. Curr. Biol. 27 (2017). DOI: 10.1016/j.cub.2017.06.056"
476 example:
477 enabled: True
478 full_name: Example Algorithm
479 language: Python
480 folder_path: ''
481 analysis_function: run_example
482 plot_function: plot_example
483 ensemble_color: pink
484 needed_data:
485 - data_dFFo
486 - data_neuronal_activity
487 parameters:
488 int_parameter_ensembles:
489 object_name: example_int_ensembles
490 display_name: Number of ensembles
491 description: Integer values from 0 to 8.
492 default_value: 5
493 min_value: 1
494 max_value: 8
495 int_parameter_A:
496 object_name: example_int_parameter_A
497 display_name: Integer parameter A
498 description: Integer values from -10 to 50.
499 default_value: 5
500 min_value: -10
501 max_value: 50
502 int_parameter_B:
503 object_name: example_int_parameter_B
504 display_name: Integer parameter B
505 description: Integer values from 0 to 100.
506 default_value: 8
507 min_value: 0
508 max_value: 100
509 float_parameter:
510 object_name: example_float_parameter
511 display_name: Result A with B
512 description: Integer values from -1000 to "infinity".
513 default_value: 0.0
514 min_value: -1000
515 max_value: MAX_VAL
516 threshold_parameter:
517 object_name: example_threshold_parameter
518 display_name: Threshold parameter
519 description: Decimal values from 0 to 1, used as threshold for the dummy procedure.
520 default_value: 0.5
521 min_value: 0
522 max_value: 1
523 bool_parameter:
524 object_name: example_bool_parameter
525 display_name: Boolean parameter
526 description: This box checked means True, unchecked means False
527 default_value: False
528 selection_parameter:
529 object_name: example_selection
530 display_name: Multiple selection parameter
531 description: This parameters selects only one of many
532 type: enum
533 default_value: SUM
534 options:
535 - value: SUM
536 label: Sum the parameters A and B
537 description: The values will be summed
538 - value: MEAN
539 label: Mean of the parameters A and B
540 description: The mean of the values will be used
541 figures:
542 - name: example_plot_raster
543 display_name: Raster of the activity
544 - name: example_plot_dFFo
545 display_name: dFFo of a neuron
546 - name: example_plot_secondary_dFFo
547 display_name: Secondary dFFo plot
548 - name: example_plot_many_dFFo
549 display_name: dFFo of many cells
550 source: ENCORE example algorithm to demonstrate the integration of new custom algorithms. This function only simulates the identification of ensembles. Also, allows the user to make a dry run of the analysis without installing the MATLAB engine. Check the documentation for more details on adding a new algorithm.