Braindecode 1.5.0.dev176208946__tar.gz → 1.5.0.dev179040812__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 (165) hide show
  1. {braindecode-1.5.0.dev176208946/braindecode.egg-info → braindecode-1.5.0.dev179040812}/PKG-INFO +1 -1
  2. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/__init__.py +2 -10
  3. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/attentionbasenet.py +2 -3
  4. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/biot.py +1 -61
  5. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/config.py +4 -5
  6. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/labram.py +266 -208
  7. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/reve.py +1 -1
  8. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/signal_jepa.py +38 -463
  9. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/summary.csv +0 -4
  10. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/syncnet.py +13 -17
  11. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/tsinception.py +1 -1
  12. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/util.py +19 -91
  13. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/__init__.py +0 -2
  14. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/attention.py +16 -45
  15. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/eegprep_preprocess.py +6 -51
  16. braindecode-1.5.0.dev179040812/braindecode/version.py +1 -0
  17. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812/braindecode.egg-info}/PKG-INFO +1 -1
  18. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode.egg-info/SOURCES.txt +0 -3
  19. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/api.rst +0 -8
  20. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/whats_new.rst +1 -59
  21. braindecode-1.5.0.dev176208946/braindecode/models/codebrain.py +0 -977
  22. braindecode-1.5.0.dev176208946/braindecode/models/interpolated.py +0 -182
  23. braindecode-1.5.0.dev176208946/braindecode/modules/interpolation.py +0 -201
  24. braindecode-1.5.0.dev176208946/braindecode/version.py +0 -1
  25. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/LICENSE.txt +0 -0
  26. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/MANIFEST.in +0 -0
  27. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/NOTICE.txt +0 -0
  28. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/README.rst +0 -0
  29. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/__init__.py +0 -0
  30. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/augmentation/__init__.py +0 -0
  31. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/augmentation/base.py +0 -0
  32. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/augmentation/functional.py +0 -0
  33. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/augmentation/transforms.py +0 -0
  34. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/classifier.py +0 -0
  35. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/__init__.py +0 -0
  36. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/base.py +0 -0
  37. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bbci.py +0 -0
  38. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bcicomp.py +0 -0
  39. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/__init__.py +0 -0
  40. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/datasets.py +0 -0
  41. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/format.py +0 -0
  42. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/hub.py +0 -0
  43. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/hub_format.py +0 -0
  44. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/hub_io.py +0 -0
  45. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/hub_validation.py +0 -0
  46. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/bids/iterable.py +0 -0
  47. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/chb_mit.py +0 -0
  48. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/mne.py +0 -0
  49. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/moabb.py +0 -0
  50. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/nmt.py +0 -0
  51. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/registry.py +0 -0
  52. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/siena.py +0 -0
  53. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  54. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/sleep_physionet.py +0 -0
  55. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/tuh.py +0 -0
  56. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/utils.py +0 -0
  57. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datasets/xy.py +0 -0
  58. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datautil/__init__.py +0 -0
  59. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datautil/channel_utils.py +0 -0
  60. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datautil/hub_formats.py +0 -0
  61. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datautil/serialization.py +0 -0
  62. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/datautil/util.py +0 -0
  63. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/eegneuralnet.py +0 -0
  64. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/functional/__init__.py +0 -0
  65. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/functional/functions.py +0 -0
  66. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/functional/initialization.py +0 -0
  67. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/atcnet.py +0 -0
  68. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/attn_sleep.py +0 -0
  69. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/base.py +0 -0
  70. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/bendr.py +0 -0
  71. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/brainmodule.py +0 -0
  72. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/cbramod.py +0 -0
  73. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/contrawr.py +0 -0
  74. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/ctnet.py +0 -0
  75. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/deep4.py +0 -0
  76. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/deepsleepnet.py +0 -0
  77. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/dgcnn.py +0 -0
  78. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegconformer.py +0 -0
  79. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eeginception_erp.py +0 -0
  80. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eeginception_mi.py +0 -0
  81. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegitnet.py +0 -0
  82. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegminer.py +0 -0
  83. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegnet.py +0 -0
  84. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegnex.py +0 -0
  85. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegpt.py +0 -0
  86. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegsimpleconv.py +0 -0
  87. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegsym.py +0 -0
  88. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/eegtcnet.py +0 -0
  89. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/fbcnet.py +0 -0
  90. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/fblightconvnet.py +0 -0
  91. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/fbmsnet.py +0 -0
  92. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/hybrid.py +0 -0
  93. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/ifnet.py +0 -0
  94. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/luna.py +0 -0
  95. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/medformer.py +0 -0
  96. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/msvtnet.py +0 -0
  97. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/patchedtransformer.py +0 -0
  98. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sccnet.py +0 -0
  99. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/shallow_fbcsp.py +0 -0
  100. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sinc_shallow.py +0 -0
  101. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  102. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  103. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sparcnet.py +0 -0
  104. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/sstdpn.py +0 -0
  105. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/tcn.py +0 -0
  106. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/tidnet.py +0 -0
  107. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/models/usleep.py +0 -0
  108. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/activation.py +0 -0
  109. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/blocks.py +0 -0
  110. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/convolution.py +0 -0
  111. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/filter.py +0 -0
  112. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/layers.py +0 -0
  113. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/linear.py +0 -0
  114. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/parametrization.py +0 -0
  115. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/stats.py +0 -0
  116. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/util.py +0 -0
  117. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/modules/wrapper.py +0 -0
  118. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/__init__.py +0 -0
  119. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/mne_preprocess.py +0 -0
  120. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/preprocess.py +0 -0
  121. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/util.py +0 -0
  122. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/preprocessing/windowers.py +0 -0
  123. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/regressor.py +0 -0
  124. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/samplers/__init__.py +0 -0
  125. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/samplers/base.py +0 -0
  126. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/samplers/ssl.py +0 -0
  127. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/training/__init__.py +0 -0
  128. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/training/callbacks.py +0 -0
  129. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/training/losses.py +0 -0
  130. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/training/scoring.py +0 -0
  131. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/util.py +0 -0
  132. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/visualization/__init__.py +0 -0
  133. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/visualization/confusion_matrices.py +0 -0
  134. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode/visualization/gradients.py +0 -0
  135. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode.egg-info/dependency_links.txt +0 -0
  136. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode.egg-info/requires.txt +0 -0
  137. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/braindecode.egg-info/top_level.txt +0 -0
  138. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/Makefile +0 -0
  139. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/_templates/autosummary/class.rst +0 -0
  140. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  141. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/_templates/autosummary/function.rst +0 -0
  142. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  143. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/cite.rst +0 -0
  144. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/conf.py +0 -0
  145. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/help.rst +0 -0
  146. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/index.rst +0 -0
  147. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/install/install.rst +0 -0
  148. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/install/install_pip.rst +0 -0
  149. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/install/install_source.rst +0 -0
  150. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/attention.rst +0 -0
  151. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/channel.rst +0 -0
  152. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/convolution.rst +0 -0
  153. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/filterbank.rst +0 -0
  154. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/gnn.rst +0 -0
  155. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/interpretable.rst +0 -0
  156. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/lbm.rst +0 -0
  157. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/recurrent.rst +0 -0
  158. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/categorization/spd.rst +0 -0
  159. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/models.rst +0 -0
  160. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/models_categorization.rst +0 -0
  161. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/models_table.rst +0 -0
  162. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/models/models_visualization.rst +0 -0
  163. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/docs/sg_execution_times.rst +0 -0
  164. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/pyproject.toml +0 -0
  165. {braindecode-1.5.0.dev176208946 → braindecode-1.5.0.dev179040812}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.5.0.dev176208946
3
+ Version: 1.5.0.dev179040812
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>
@@ -5,10 +5,9 @@ from .attentionbasenet import AttentionBaseNet
5
5
  from .attn_sleep import AttnSleep
6
6
  from .base import EEGModuleMixin
7
7
  from .bendr import BENDR
8
- from .biot import BIOT, InterpolatedBIOT
8
+ from .biot import BIOT
9
9
  from .brainmodule import BrainModule
10
10
  from .cbramod import CBraMod
11
- from .codebrain import CodeBrain
12
11
  from .contrawr import ContraWR
13
12
  from .ctnet import CTNet
14
13
  from .deep4 import Deep4Net
@@ -30,8 +29,7 @@ from .fblightconvnet import FBLightConvNet
30
29
  from .fbmsnet import FBMSNet
31
30
  from .hybrid import HybridNet
32
31
  from .ifnet import IFNet
33
- from .interpolated import InterpolatedModel
34
- from .labram import InterpolatedLaBraM, Labram
32
+ from .labram import Labram
35
33
  from .luna import LUNA
36
34
  from .medformer import MEDFormer
37
35
  from .msvtnet import MSVTNet
@@ -40,7 +38,6 @@ from .reve import REVE
40
38
  from .sccnet import SCCNet
41
39
  from .shallow_fbcsp import ShallowFBCSPNet
42
40
  from .signal_jepa import (
43
- InterpolatedSignalJEPA,
44
41
  SignalJEPA,
45
42
  SignalJEPA_Contextual,
46
43
  SignalJEPA_PostLocal,
@@ -75,7 +72,6 @@ __all__ = [
75
72
  "BIOT",
76
73
  "BENDR",
77
74
  "CBraMod",
78
- "CodeBrain",
79
75
  "ContraWR",
80
76
  "CTNet",
81
77
  "Deep4Net",
@@ -99,10 +95,6 @@ __all__ = [
99
95
  "FBMSNet",
100
96
  "HybridNet",
101
97
  "IFNet",
102
- "InterpolatedBIOT",
103
- "InterpolatedLaBraM",
104
- "InterpolatedModel",
105
- "InterpolatedSignalJEPA",
106
98
  "Labram",
107
99
  "LUNA",
108
100
  "extract_channel_locations_from_chs_info",
@@ -1,8 +1,5 @@
1
1
  from __future__ import annotations
2
2
 
3
- # Authors: Sarthak Tayal <sarthaktayal2@gmail.com>
4
- #
5
- # License: BSD (3-clause)
6
3
  import math
7
4
 
8
5
  from einops.layers.torch import Rearrange
@@ -278,6 +275,8 @@ class AttentionBaseNet(EEGModuleMixin, nn.Module):
278
275
  activation: type[nn.Module] = nn.ELU,
279
276
  extra_params: bool = False,
280
277
  ):
278
+ super(AttentionBaseNet, self).__init__()
279
+
281
280
  super().__init__(
282
281
  n_outputs=n_outputs,
283
282
  n_chans=n_chans,
@@ -1,57 +1,12 @@
1
1
  import math
2
2
  from warnings import warn
3
3
 
4
- import numpy as np
5
4
  import torch
6
5
  import torch.nn as nn
7
6
  from linear_attention_transformer import LinearAttentionTransformer
8
7
 
9
8
  from braindecode.models.base import EEGModuleMixin
10
9
 
11
- # -----------------------------------------------------------------------------
12
- # Canonical channel order for InterpolatedBIOT — the 18-channel TCP bipolar
13
- # montage used by BIOT's shhs-prest and six-datasets pretrained checkpoints.
14
- # Source: https://github.com/ycq091044/BIOT (README + datasets/TUAB/process.py
15
- # + datasets/SHHS/process.py). Indices 0-15 are the TCP 16-channel bipolar
16
- # derivations; indices 16-17 are SHHS differential channels.
17
- #
18
- # The `loc` values are only used to build an MNE interpolation matrix for
19
- # InterpolatedBIOT. All entries are bipolar / differential derivations.
20
- # TODO: positions are stored as the midpoint of the two constituent
21
- # electrodes. This is a simplification — a bipolar signal V(A)-V(B) cannot
22
- # be faithfully recovered by spatial interpolation at the midpoint. Revisit
23
- # in a follow-up PR (e.g. a dedicated BipolarDerivationLayer).
24
- # -----------------------------------------------------------------------------
25
-
26
- # fmt: off
27
- _BIOT_TARGET_CHS_TUPLES: list[tuple[str, tuple[float, float, float]]] = [
28
- ("FP1-F7", (-0.04984980, 0.06319570, -0.00920500)),
29
- ("F7-T7", (-0.07721200, 0.01322780, -0.01038300)),
30
- ("T7-P7", (-0.07829770, -0.04473570, -0.00591650)),
31
- ("P7-O1", (-0.05092385, -0.09295085, 0.00317600)),
32
- ("FP2-F8", (0.05145770, 0.06465880, -0.00954000)),
33
- ("F8-T8", (0.07906150, 0.01470070, -0.01074500)),
34
- ("T8-P8", (0.07906780, -0.04404430, -0.00601500)),
35
- ("P8-O2", (0.05144915, -0.09261215, 0.00313000)),
36
- ("FP1-F3", (-0.03984025, 0.06851415, 0.01760100)),
37
- ("F3-C3", (-0.05780095, 0.02073975, 0.05327500)),
38
- ("C3-P3", (-0.05918270, -0.04520975, 0.06014900)),
39
- ("P3-O1", (-0.04121035, -0.09561840, 0.03238950)),
40
- ("FP2-F4", (0.04085425, 0.06960035, 0.01686700)),
41
- ("F4-C4", (0.05947705, 0.02170225, 0.05219700)),
42
- ("C4-P4", (0.06139230, -0.04473025, 0.06007050)),
43
- ("P4-O2", (0.04275465, -0.09535810, 0.03268050)),
44
- ("C3-A2", (0.01021790, -0.01832050, -0.00183650)),
45
- ("C4-A1", (-0.00947910, -0.01794500, -0.00220300)),
46
- ]
47
- # fmt: on
48
-
49
- _BIOT_TARGET_CHS_INFO = [
50
- {"ch_name": ch, "kind": "eeg", "loc": np.asarray(loc, dtype=float)}
51
- for ch, loc in _BIOT_TARGET_CHS_TUPLES
52
- ]
53
- BIOT_CHANNEL_ORDER = [ch for ch, _ in _BIOT_TARGET_CHS_TUPLES]
54
-
55
10
 
56
11
  class BIOT(EEGModuleMixin, nn.Module):
57
12
  r"""BIOT from Yang et al (2023) [Yang2023]_
@@ -484,9 +439,7 @@ class _BIOTEncoder(nn.Module):
484
439
  self.channel_tokens = nn.Embedding(
485
440
  num_embeddings=n_chans, embedding_dim=emb_size
486
441
  )
487
- self.register_buffer(
488
- "index", torch.arange(n_chans, dtype=torch.long), persistent=False
489
- )
442
+ self.index = nn.Parameter(torch.LongTensor(range(n_chans)), requires_grad=False)
490
443
 
491
444
  def stft(self, sample):
492
445
  """
@@ -600,16 +553,3 @@ class _BIOTEncoder(nn.Module):
600
553
  # (batch_size, emb)
601
554
  emb = self.transformer(emb).mean(dim=1)
602
555
  return emb
603
-
604
-
605
- # -----------------------------------------------------------------------------
606
- # InterpolatedBIOT — experimental channel-interpolation variant of BIOT
607
- # -----------------------------------------------------------------------------
608
- # Wraps :class:`BIOT` with an MNE-backed channel-interpolation layer that
609
- # projects arbitrary user ``chs_info`` to the canonical 18-channel BIOT
610
- # montage (:data:`_BIOT_TARGET_CHS_INFO`). Frozen by default; set
611
- # ``trainable=True`` to fine-tune the projection matrix.
612
-
613
- from braindecode.models.interpolated import InterpolatedModel # noqa: E402
614
-
615
- InterpolatedBIOT = InterpolatedModel(BIOT, _BIOT_TARGET_CHS_INFO)
@@ -1,4 +1,3 @@
1
- # Authors: Sarthak Tayal <sarthaktayal2@gmail.com>
2
1
  from collections.abc import Callable
3
2
  from inspect import signature
4
3
  from types import UnionType
@@ -18,10 +17,10 @@ from braindecode.models.util import (
18
17
 
19
18
  try:
20
19
  from numpydantic import NDArray, Shape
21
-
22
- _loc_type = NDArray[Shape["12"], np.float64]
23
20
  except ImportError:
24
- _loc_type = np.ndarray # type: ignore[misc]
21
+ # we can't use soft import for numpydantic because numpydantic does not define its version in __init__
22
+ NDArray = Any # type: ignore
23
+ Shape = Any # type: ignore
25
24
 
26
25
 
27
26
  class ChsInfoType(TypedDict, total=False, closed=True): # type: ignore[call-arg]
@@ -30,7 +29,7 @@ class ChsInfoType(TypedDict, total=False, closed=True): # type: ignore[call-arg
30
29
  coil_type: int
31
30
  coord_frame: int
32
31
  kind: str
33
- loc: _loc_type # type: ignore[valid-type,misc]
32
+ loc: NDArray[Shape["12"], np.float64] # type: ignore[misc]
34
33
  logno: int
35
34
  range: float
36
35
  scanno: int