braindecode 1.8.1.dev180125779__tar.gz → 1.8.1.dev180519461__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/NOTICE.txt +1 -2
  2. {braindecode-1.8.1.dev180125779/braindecode.egg-info → braindecode-1.8.1.dev180519461}/PKG-INFO +1 -1
  3. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/__init__.py +6 -1
  4. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/base.py +16 -0
  5. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/bendr.py +14 -12
  6. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/brainomni.py +592 -2
  7. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/cbramod.py +21 -7
  8. braindecode-1.8.1.dev180519461/braindecode/models/csbrain.py +758 -0
  9. braindecode-1.8.1.dev180519461/braindecode/models/neurorvq.py +648 -0
  10. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/signal_jepa.py +4 -1
  11. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/summary.csv +3 -0
  12. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/util.py +14 -0
  13. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/__init__.py +2 -0
  14. braindecode-1.8.1.dev180519461/braindecode/modules/channel_tokenizer.py +215 -0
  15. braindecode-1.8.1.dev180519461/braindecode/version.py +1 -0
  16. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461/braindecode.egg-info}/PKG-INFO +1 -1
  17. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode.egg-info/SOURCES.txt +3 -0
  18. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/api.rst +8 -0
  19. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/whats_new.rst +47 -0
  20. braindecode-1.8.1.dev180125779/braindecode/version.py +0 -1
  21. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/LICENSE.txt +0 -0
  22. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/MANIFEST.in +0 -0
  23. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/README.rst +0 -0
  24. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/__init__.py +0 -0
  25. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/augmentation/__init__.py +0 -0
  26. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/augmentation/base.py +0 -0
  27. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/augmentation/functional.py +0 -0
  28. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/augmentation/transforms.py +0 -0
  29. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/classifier.py +0 -0
  30. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/__init__.py +0 -0
  31. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/_notebook_viewer.py +0 -0
  32. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/base.py +0 -0
  33. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bbci.py +0 -0
  34. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bcicomp.py +0 -0
  35. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/__init__.py +0 -0
  36. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/datasets.py +0 -0
  37. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/format.py +0 -0
  38. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/hub.py +0 -0
  39. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/hub_format.py +0 -0
  40. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/hub_io.py +0 -0
  41. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/hub_validation.py +0 -0
  42. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/bids/iterable.py +0 -0
  43. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/chb_mit.py +0 -0
  44. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/collate.py +0 -0
  45. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/mne.py +0 -0
  46. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/moabb.py +0 -0
  47. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/nmt.py +0 -0
  48. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/registry.py +0 -0
  49. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/siena.py +0 -0
  50. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  51. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/sleep_physionet.py +0 -0
  52. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/tuh.py +0 -0
  53. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/utils.py +0 -0
  54. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datasets/xy.py +0 -0
  55. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datautil/__init__.py +0 -0
  56. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datautil/channel_utils.py +0 -0
  57. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datautil/hub_formats.py +0 -0
  58. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datautil/serialization.py +0 -0
  59. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/datautil/util.py +0 -0
  60. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/eegneuralnet.py +0 -0
  61. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/functional/__init__.py +0 -0
  62. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/functional/_real_dft.py +0 -0
  63. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/functional/functions.py +0 -0
  64. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/functional/initialization.py +0 -0
  65. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/atcnet.py +0 -0
  66. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/attentionbasenet.py +0 -0
  67. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/attn_sleep.py +0 -0
  68. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/barista.py +0 -0
  69. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/biot.py +0 -0
  70. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/brainbert.py +0 -0
  71. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/brainmodule.py +0 -0
  72. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/brant.py +0 -0
  73. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/codebrain.py +0 -0
  74. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/config.py +0 -0
  75. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/contrawr.py +0 -0
  76. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/ctnet.py +0 -0
  77. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/dance.py +0 -0
  78. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/deep4.py +0 -0
  79. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/deepsleepnet.py +0 -0
  80. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/dgcnn.py +0 -0
  81. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/diver1.py +0 -0
  82. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegconformer.py +0 -0
  83. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegdino.py +0 -0
  84. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eeginception_erp.py +0 -0
  85. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eeginception_mi.py +0 -0
  86. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegitnet.py +0 -0
  87. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegminer.py +0 -0
  88. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegnet.py +0 -0
  89. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegnex.py +0 -0
  90. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegpt.py +0 -0
  91. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegsimpleconv.py +0 -0
  92. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegsym.py +0 -0
  93. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/eegtcnet.py +0 -0
  94. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/emg2qwerty.py +0 -0
  95. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/fbcnet.py +0 -0
  96. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/fblightconvnet.py +0 -0
  97. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/fbmsnet.py +0 -0
  98. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/hybrid.py +0 -0
  99. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/ifnet.py +0 -0
  100. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/interpolated.py +0 -0
  101. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/labram.py +0 -0
  102. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/luna.py +0 -0
  103. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/mapa.py +0 -0
  104. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/medformer.py +0 -0
  105. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/meta_neuromotor.py +0 -0
  106. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/mirepnet.py +0 -0
  107. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/mscformer.py +0 -0
  108. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/msvtnet.py +0 -0
  109. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/mvpformer.py +0 -0
  110. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/neuropose.py +0 -0
  111. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/patchedtransformer.py +0 -0
  112. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/popt.py +0 -0
  113. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/reve.py +0 -0
  114. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sccnet.py +0 -0
  115. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/seizure_transformer.py +0 -0
  116. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sensingdynamics.py +0 -0
  117. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/shallow_fbcsp.py +0 -0
  118. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sinc_shallow.py +0 -0
  119. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  120. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  121. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sparcnet.py +0 -0
  122. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/sstdpn.py +0 -0
  123. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/steegformer.py +0 -0
  124. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/syncnet.py +0 -0
  125. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/tcformer.py +0 -0
  126. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/tcn.py +0 -0
  127. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/tidnet.py +0 -0
  128. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/tsinception.py +0 -0
  129. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/usleep.py +0 -0
  130. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/vemg2pose.py +0 -0
  131. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/models/zuna.py +0 -0
  132. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/activation.py +0 -0
  133. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/attention.py +0 -0
  134. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/blocks.py +0 -0
  135. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/convolution.py +0 -0
  136. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/dance_modules.py +0 -0
  137. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/filter.py +0 -0
  138. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/interpolation.py +0 -0
  139. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/layers.py +0 -0
  140. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/linear.py +0 -0
  141. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/parametrization.py +0 -0
  142. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/popt_modules.py +0 -0
  143. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/quantization.py +0 -0
  144. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/stats.py +0 -0
  145. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/util.py +0 -0
  146. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/modules/wrapper.py +0 -0
  147. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/__init__.py +0 -0
  148. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  149. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/mne_preprocess.py +0 -0
  150. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/preprocess.py +0 -0
  151. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/util.py +0 -0
  152. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/preprocessing/windowers.py +0 -0
  153. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/regressor.py +0 -0
  154. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/samplers/__init__.py +0 -0
  155. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/samplers/base.py +0 -0
  156. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/samplers/ssl.py +0 -0
  157. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/training/__init__.py +0 -0
  158. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/training/callbacks.py +0 -0
  159. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/training/losses.py +0 -0
  160. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/training/scoring.py +0 -0
  161. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/util.py +0 -0
  162. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/__init__.py +0 -0
  163. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/activations.py +0 -0
  164. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/attribution.py +0 -0
  165. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/confusion_matrices.py +0 -0
  166. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/frequency.py +0 -0
  167. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/metrics.py +0 -0
  168. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/sanity.py +0 -0
  169. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode/visualization/topology.py +0 -0
  170. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode.egg-info/dependency_links.txt +0 -0
  171. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode.egg-info/requires.txt +0 -0
  172. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/braindecode.egg-info/top_level.txt +0 -0
  173. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/Makefile +0 -0
  174. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/_templates/autosummary/class.rst +0 -0
  175. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  176. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/_templates/autosummary/function.rst +0 -0
  177. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  178. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/agent_docs.rst +0 -0
  179. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/cite.rst +0 -0
  180. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/conf.py +0 -0
  181. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/help.rst +0 -0
  182. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/index.rst +0 -0
  183. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/install/install.rst +0 -0
  184. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/install/install_pip.rst +0 -0
  185. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/install/install_source.rst +0 -0
  186. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/attention.rst +0 -0
  187. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/channel.rst +0 -0
  188. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/convolution.rst +0 -0
  189. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/filterbank.rst +0 -0
  190. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/gnn.rst +0 -0
  191. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/interpretable.rst +0 -0
  192. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/lbm.rst +0 -0
  193. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/recurrent.rst +0 -0
  194. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/categorization/spd.rst +0 -0
  195. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/models.rst +0 -0
  196. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/models_categorization.rst +0 -0
  197. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/models_table.rst +0 -0
  198. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/models/models_visualization.rst +0 -0
  199. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/docs/sg_execution_times.rst +0 -0
  200. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/pyproject.toml +0 -0
  201. {braindecode-1.8.1.dev180125779 → braindecode-1.8.1.dev180519461}/setup.cfg +0 -0
@@ -14,8 +14,7 @@ The following components are licensed under the Creative Commons Attribution-Non
14
14
  - `braindecode/models/eegminer.py`
15
15
  - `braindecode/models/meta_neuromotor.py`
16
16
  - `braindecode/models/brainmodule.py`
17
-
18
- As well as class later imported into the `braindecode.models.module` named as GeneralizedGaussianFilter.
17
+ - `braindecode/models/neurorvq.py`
19
18
 
20
19
  The `meta_neuromotor.py` file is a derivative of
21
20
  `facebookresearch/generic-neuromotor-interface`, released by Meta Platforms,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.8.1.dev180125779
3
+ Version: 1.8.1.dev180519461
4
4
  Summary: Deep learning software to decode EEG, ECG or MEG signals
5
5
  Author-email: Robin Tibor Schirrmeister <robintibor@gmail.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Alexandre Gramfort <agramfort@meta.com>
6
6
  Maintainer-email: Alexandre Gramfort <agramfort@meta.com>, Bruno Aristimunha Pinto <b.aristimunha@gmail.com>, Robin Tibor Schirrmeister <robintibor@gmail.com>
@@ -9,11 +9,12 @@ from .bendr import BENDR, InterpolatedBENDR
9
9
  from .biot import BIOT, InterpolatedBIOT
10
10
  from .brainbert import BrainBERT
11
11
  from .brainmodule import BrainModule
12
- from .brainomni import BrainTokenizer
12
+ from .brainomni import BrainOmni, BrainTokenizer
13
13
  from .brant import Brant
14
14
  from .cbramod import CBraMod
15
15
  from .codebrain import CodeBrain
16
16
  from .contrawr import ContraWR
17
+ from .csbrain import CSBrain
17
18
  from .ctnet import CTNet
18
19
  from .dance import DANCE
19
20
  from .deep4 import Deep4Net
@@ -49,6 +50,7 @@ from .mscformer import MSCFormer
49
50
  from .msvtnet import MSVTNet
50
51
  from .mvpformer import MVPFormer
51
52
  from .neuropose import NeuroPose
53
+ from .neurorvq import NeuroRVQ
52
54
  from .patchedtransformer import PBT
53
55
  from .popt import PopulationTransformer
54
56
  from .reve import REVE
@@ -99,10 +101,12 @@ __all__ = [
99
101
  "BIOT",
100
102
  "BENDR",
101
103
  "BrainBERT",
104
+ "BrainOmni",
102
105
  "BrainTokenizer",
103
106
  "CBraMod",
104
107
  "CodeBrain",
105
108
  "ContraWR",
109
+ "CSBrain",
106
110
  "CTNet",
107
111
  "DANCE",
108
112
  "Deep4Net",
@@ -146,6 +150,7 @@ __all__ = [
146
150
  "MAPA",
147
151
  "MEDFormer",
148
152
  "MIRepNet",
153
+ "NeuroRVQ",
149
154
  "MSCFormer",
150
155
  "MSVTNet",
151
156
  "MVPFormer",
@@ -779,6 +779,22 @@ class EEGModuleMixin(_BaseHubMixin, metaclass=_BraindecodeDocstringMeta):
779
779
 
780
780
  if HAS_HF_HUB:
781
781
 
782
+ @classmethod
783
+ def from_pretrained(cls, *args, **kwargs):
784
+ # The Hub mixin fills omitted __init__ args from config.json; pin the
785
+ # derived geometry arg so it cannot clash with the caller's one
786
+ # (e.g. caller chs_info vs saved n_chans) in __init__'s checks.
787
+ if "chs_info" in kwargs and "n_chans" not in kwargs:
788
+ chs_info = kwargs["chs_info"]
789
+ kwargs["n_chans"] = None if chs_info is None else len(chs_info)
790
+ elif "n_chans" in kwargs and "chs_info" not in kwargs:
791
+ kwargs["chs_info"] = None
792
+ if ("n_times" in kwargs or "sfreq" in kwargs) and (
793
+ "input_window_seconds" not in kwargs
794
+ ):
795
+ kwargs["input_window_seconds"] = None
796
+ return super().from_pretrained(*args, **kwargs)
797
+
782
798
  @classmethod
783
799
  def _from_pretrained(
784
800
  cls,
@@ -11,6 +11,7 @@ from einops.layers.torch import Rearrange
11
11
  from torch import nn
12
12
 
13
13
  from braindecode.models.base import EEGModuleMixin
14
+ from braindecode.modules.channel_tokenizer import ChannelTokenizer
14
15
 
15
16
  # The 20 channels used to pre-train BENDR, in the order expected by the
16
17
  # `braindecode/braindecode-bendr` checkpoint. The first 19 entries are the
@@ -288,26 +289,25 @@ class BENDR(EEGModuleMixin, nn.Module):
288
289
  # Keep these parameters if needed later, otherwise they are captured by the mixin
289
290
  del n_outputs, n_chans, chs_info, n_times, input_window_seconds, sfreq
290
291
 
291
- # If the user supplies chs_info, require it to match BENDR_CHANNEL_ORDER
292
- # exactly (case-insensitive). Arbitrary channel sets should go through
293
- # InterpolatedBENDR — same pattern as Labram / InterpolatedLaBraM.
294
- # When chs_info is absent (the usual n_chans=20 path, incl.
295
- # from_pretrained), no check is performed.
292
+ # No chs_info (incl. from_pretrained) or the canonical order: no
293
+ # tokenizer, so released checkpoints stay bit-identical. Any other
294
+ # montage is projected onto the 20 canonical channels.
296
295
  try:
297
296
  _chs_info = self.chs_info
298
297
  except ValueError:
299
298
  _chs_info = None
299
+ self.channel_tokenizer = None
300
+ backbone_n_chans = self.n_chans
300
301
  if _chs_info is not None:
301
302
  user_names = [ch["ch_name"] for ch in _chs_info] # type: ignore[index]
302
303
  canonical = BENDR_CHANNEL_ORDER
303
304
  if [n.lower() for n in user_names] != [n.lower() for n in canonical]:
304
- raise ValueError(
305
- f"BENDR requires chs_info to match BENDR_CHANNEL_ORDER exactly "
306
- f"({len(canonical)} channels, specific order; last is 'SCALE'). "
307
- f"Got {len(user_names)} channel(s). For arbitrary channel sets, "
308
- f"use InterpolatedBENDR "
309
- f"(from braindecode.models import InterpolatedBENDR)."
305
+ self.channel_tokenizer = ChannelTokenizer(
306
+ strategy="fixed_order",
307
+ src_chs_info=_chs_info,
308
+ target_chs_info=_BENDR_TARGET_CHS_INFO,
310
309
  )
310
+ backbone_n_chans = len(_BENDR_TARGET_CHS_INFO)
311
311
 
312
312
  self.encoder_h = encoder_h
313
313
  self.contextualizer_hidden = contextualizer_hidden
@@ -315,7 +315,7 @@ class BENDR(EEGModuleMixin, nn.Module):
315
315
  self.encoder_only = encoder_only
316
316
 
317
317
  self.encoder = _ConvEncoderBENDR(
318
- in_features=self.n_chans,
318
+ in_features=backbone_n_chans,
319
319
  encoder_h=encoder_h,
320
320
  dropout=drop_prob,
321
321
  projection_head=projection_head,
@@ -361,6 +361,8 @@ class BENDR(EEGModuleMixin, nn.Module):
361
361
  self._build_head(n_outputs)
362
362
 
363
363
  def forward(self, x, return_features=False):
364
+ if self.channel_tokenizer is not None:
365
+ x = self.channel_tokenizer(x)
364
366
  encoded = self.encoder(x)
365
367
  # encoded: [batch_size, encoder_h, n_encoded_times]
366
368