Braindecode 1.3.1.dev178641268__tar.gz → 1.3.1.dev182267549__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 (160) hide show
  1. {braindecode-1.3.1.dev178641268/braindecode.egg-info → braindecode-1.3.1.dev182267549}/PKG-INFO +1 -1
  2. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/base.py +4 -66
  3. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/__init__.py +0 -2
  4. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/summary.csv +0 -1
  5. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/util.py +0 -1
  6. braindecode-1.3.1.dev182267549/braindecode/version.py +1 -0
  7. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549/braindecode.egg-info}/PKG-INFO +1 -1
  8. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode.egg-info/SOURCES.txt +0 -1
  9. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/api.rst +6 -11
  10. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/models_categorization.rst +3 -3
  11. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/whats_new.rst +1 -6
  12. braindecode-1.3.1.dev178641268/braindecode/models/eegpt.py +0 -1253
  13. braindecode-1.3.1.dev178641268/braindecode/version.py +0 -1
  14. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/LICENSE.txt +0 -0
  15. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/MANIFEST.in +0 -0
  16. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/NOTICE.txt +0 -0
  17. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/README.rst +0 -0
  18. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/__init__.py +0 -0
  19. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/augmentation/__init__.py +0 -0
  20. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/augmentation/base.py +0 -0
  21. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/augmentation/functional.py +0 -0
  22. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/augmentation/transforms.py +0 -0
  23. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/classifier.py +0 -0
  24. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/__init__.py +0 -0
  25. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bbci.py +0 -0
  26. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bcicomp.py +0 -0
  27. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/__init__.py +0 -0
  28. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/datasets.py +0 -0
  29. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/format.py +0 -0
  30. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/hub.py +0 -0
  31. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/hub_format.py +0 -0
  32. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/hub_io.py +0 -0
  33. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/hub_validation.py +0 -0
  34. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/bids/iterable.py +0 -0
  35. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/chb_mit.py +0 -0
  36. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/mne.py +0 -0
  37. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/moabb.py +0 -0
  38. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/nmt.py +0 -0
  39. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/registry.py +0 -0
  40. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/siena.py +0 -0
  41. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  42. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/sleep_physionet.py +0 -0
  43. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/tuh.py +0 -0
  44. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/utils.py +0 -0
  45. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datasets/xy.py +0 -0
  46. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datautil/__init__.py +0 -0
  47. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datautil/channel_utils.py +0 -0
  48. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datautil/hub_formats.py +0 -0
  49. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datautil/serialization.py +0 -0
  50. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/datautil/util.py +0 -0
  51. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/eegneuralnet.py +0 -0
  52. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/functional/__init__.py +0 -0
  53. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/functional/functions.py +0 -0
  54. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/functional/initialization.py +0 -0
  55. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/atcnet.py +0 -0
  56. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/attentionbasenet.py +0 -0
  57. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/attn_sleep.py +0 -0
  58. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/base.py +0 -0
  59. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/bendr.py +0 -0
  60. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/biot.py +0 -0
  61. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/brainmodule.py +0 -0
  62. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/config.py +0 -0
  63. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/contrawr.py +0 -0
  64. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/ctnet.py +0 -0
  65. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/deep4.py +0 -0
  66. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/deepsleepnet.py +0 -0
  67. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegconformer.py +0 -0
  68. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eeginception_erp.py +0 -0
  69. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eeginception_mi.py +0 -0
  70. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegitnet.py +0 -0
  71. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegminer.py +0 -0
  72. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegnet.py +0 -0
  73. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegnex.py +0 -0
  74. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegsimpleconv.py +0 -0
  75. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegsym.py +0 -0
  76. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/eegtcnet.py +0 -0
  77. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/fbcnet.py +0 -0
  78. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/fblightconvnet.py +0 -0
  79. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/fbmsnet.py +0 -0
  80. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/hybrid.py +0 -0
  81. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/ifnet.py +0 -0
  82. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/labram.py +0 -0
  83. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/luna.py +0 -0
  84. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/medformer.py +0 -0
  85. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/msvtnet.py +0 -0
  86. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/patchedtransformer.py +0 -0
  87. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/reve.py +0 -0
  88. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sccnet.py +0 -0
  89. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/shallow_fbcsp.py +0 -0
  90. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/signal_jepa.py +0 -0
  91. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sinc_shallow.py +0 -0
  92. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  93. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  94. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sparcnet.py +0 -0
  95. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/sstdpn.py +0 -0
  96. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/syncnet.py +0 -0
  97. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/tcn.py +0 -0
  98. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/tidnet.py +0 -0
  99. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/tsinception.py +0 -0
  100. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/models/usleep.py +0 -0
  101. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/__init__.py +0 -0
  102. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/activation.py +0 -0
  103. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/attention.py +0 -0
  104. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/blocks.py +0 -0
  105. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/convolution.py +0 -0
  106. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/filter.py +0 -0
  107. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/layers.py +0 -0
  108. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/linear.py +0 -0
  109. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/parametrization.py +0 -0
  110. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/stats.py +0 -0
  111. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/util.py +0 -0
  112. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/modules/wrapper.py +0 -0
  113. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/__init__.py +0 -0
  114. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  115. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/mne_preprocess.py +0 -0
  116. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/preprocess.py +0 -0
  117. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/util.py +0 -0
  118. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/preprocessing/windowers.py +0 -0
  119. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/regressor.py +0 -0
  120. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/samplers/__init__.py +0 -0
  121. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/samplers/base.py +0 -0
  122. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/samplers/ssl.py +0 -0
  123. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/training/__init__.py +0 -0
  124. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/training/callbacks.py +0 -0
  125. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/training/losses.py +0 -0
  126. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/training/scoring.py +0 -0
  127. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/util.py +0 -0
  128. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/visualization/__init__.py +0 -0
  129. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/visualization/confusion_matrices.py +0 -0
  130. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode/visualization/gradients.py +0 -0
  131. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode.egg-info/dependency_links.txt +0 -0
  132. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode.egg-info/requires.txt +0 -0
  133. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/braindecode.egg-info/top_level.txt +0 -0
  134. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/Makefile +0 -0
  135. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/_templates/autosummary/class.rst +0 -0
  136. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  137. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/_templates/autosummary/function.rst +0 -0
  138. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  139. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/cite.rst +0 -0
  140. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/conf.py +0 -0
  141. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/help.rst +0 -0
  142. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/index.rst +0 -0
  143. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/install/install.rst +0 -0
  144. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/install/install_pip.rst +0 -0
  145. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/install/install_source.rst +0 -0
  146. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/attention.rst +0 -0
  147. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/channel.rst +0 -0
  148. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/convolution.rst +0 -0
  149. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/filterbank.rst +0 -0
  150. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/gnn.rst +0 -0
  151. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/interpretable.rst +0 -0
  152. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/lbm.rst +0 -0
  153. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/recurrent.rst +0 -0
  154. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/categorization/spd.rst +0 -0
  155. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/models.rst +0 -0
  156. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/models_table.rst +0 -0
  157. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/models/models_visualization.rst +0 -0
  158. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/docs/sg_execution_times.rst +0 -0
  159. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/pyproject.toml +0 -0
  160. {braindecode-1.3.1.dev178641268 → braindecode-1.3.1.dev182267549}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.3.1.dev178641268
3
+ Version: 1.3.1.dev182267549
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>
@@ -10,7 +10,6 @@
10
10
 
11
11
  from __future__ import annotations
12
12
 
13
- import bisect
14
13
  import json
15
14
  import os
16
15
  import shutil
@@ -24,7 +23,7 @@ import mne.io
24
23
  import numpy as np
25
24
  import pandas as pd
26
25
  from mne.utils.docs import deprecated
27
- from torch.utils.data import ConcatDataset, Dataset, IterableDataset
26
+ from torch.utils.data import ConcatDataset, Dataset
28
27
  from typing_extensions import TypeVar
29
28
 
30
29
  from .bids.hub import HubDatasetMixin
@@ -400,8 +399,6 @@ class BaseConcatDataset(ConcatDataset, HubDatasetMixin, Generic[T]):
400
399
  list of RecordDataset
401
400
  target_transform : callable | None
402
401
  Optional function to call on targets before returning them.
403
- lazy : bool, default False
404
- If True, defer computing cumulative sizes until length or item access.
405
402
  """
406
403
 
407
404
  datasets: list[T]
@@ -410,12 +407,7 @@ class BaseConcatDataset(ConcatDataset, HubDatasetMixin, Generic[T]):
410
407
  self,
411
408
  list_of_ds: list[T | BaseConcatDataset[T]],
412
409
  target_transform: Callable | None = None,
413
- *,
414
- lazy: bool = False,
415
410
  ):
416
- # Adapted from torch.utils.data.ConcatDataset:
417
- # added lazy init to defer cumulative size computation until access,
418
- # plus _ensure_cumulative_sizes/_get_single_item helpers and __len__ changes.
419
411
  # if we get a list of BaseConcatDataset, get all the individual datasets
420
412
  flattened_list_of_ds: list[T] = []
421
413
  for ds in list_of_ds:
@@ -423,49 +415,14 @@ class BaseConcatDataset(ConcatDataset, HubDatasetMixin, Generic[T]):
423
415
  flattened_list_of_ds.extend(ds.datasets)
424
416
  else:
425
417
  flattened_list_of_ds.append(ds)
426
-
427
- # Validate inputs (same validation for both lazy and non-lazy)
428
- if len(flattened_list_of_ds) == 0:
429
- raise ValueError("datasets should not be an empty iterable")
430
- for ds in flattened_list_of_ds:
431
- if isinstance(ds, IterableDataset):
432
- raise TypeError("ConcatDataset does not support IterableDataset")
433
-
434
- if lazy:
435
- Dataset.__init__(self)
436
- self.datasets = flattened_list_of_ds
437
- # Defer cumulative size computation until first access.
438
- self._cumulative_sizes: list[int] | None = None
439
- else:
440
- super().__init__(flattened_list_of_ds)
418
+ super().__init__(flattened_list_of_ds)
441
419
 
442
420
  self.target_transform = target_transform
443
- self._lazy = lazy
444
-
445
- @property
446
- def cumulative_sizes(self) -> list[int]:
447
- """Cumulative sizes of the underlying datasets.
448
-
449
- When the dataset is created with ``lazy=True``, the cumulative sizes
450
- are computed on first access and then cached.
451
- """
452
- return self._ensure_cumulative_sizes()
453
-
454
- @cumulative_sizes.setter
455
- def cumulative_sizes(self, value: list[int] | None) -> None:
456
- # Keep compatibility with torch.utils.data.ConcatDataset, which assigns
457
- # to ``self.cumulative_sizes`` in its __init__.
458
- self._cumulative_sizes = value
459
-
460
- def _ensure_cumulative_sizes(self) -> list[int]:
461
- if self._cumulative_sizes is None:
462
- self._cumulative_sizes = ConcatDataset.cumsum(self.datasets)
463
- return self._cumulative_sizes
464
421
 
465
422
  def _get_sequence(self, indices):
466
423
  X, y = list(), list()
467
424
  for ind in indices:
468
- out_i = self._get_single_item(ind)
425
+ out_i = super().__getitem__(ind)
469
426
  X.append(out_i[0])
470
427
  y.append(out_i[1])
471
428
 
@@ -474,25 +431,6 @@ class BaseConcatDataset(ConcatDataset, HubDatasetMixin, Generic[T]):
474
431
 
475
432
  return X, y
476
433
 
477
- def __len__(self):
478
- return self._ensure_cumulative_sizes()[-1]
479
-
480
- def _get_single_item(self, idx: int):
481
- if idx < 0:
482
- if -idx > len(self):
483
- raise ValueError(
484
- "absolute value of index should not exceed dataset length"
485
- )
486
- idx = len(self) + idx
487
-
488
- cumulative_sizes = self._ensure_cumulative_sizes()
489
- dataset_idx = bisect.bisect_right(cumulative_sizes, idx)
490
- if dataset_idx == 0:
491
- sample_idx = idx
492
- else:
493
- sample_idx = idx - cumulative_sizes[dataset_idx - 1]
494
- return self.datasets[dataset_idx][sample_idx]
495
-
496
434
  def __getitem__(self, idx: int | list):
497
435
  """
498
436
  ---
@@ -506,7 +444,7 @@ class BaseConcatDataset(ConcatDataset, HubDatasetMixin, Generic[T]):
506
444
  if isinstance(idx, Iterable): # Sample multiple windows
507
445
  item = self._get_sequence(idx)
508
446
  else:
509
- item = self._get_single_item(idx)
447
+ item = super().__getitem__(idx)
510
448
  if self.target_transform is not None:
511
449
  item = item[:1] + (self.target_transform(item[1]),) + item[2:]
512
450
  return item
@@ -18,7 +18,6 @@ from .eegitnet import EEGITNet
18
18
  from .eegminer import EEGMiner
19
19
  from .eegnet import EEGNet, EEGNetv4
20
20
  from .eegnex import EEGNeX
21
- from .eegpt import EEGPT
22
21
  from .eegsimpleconv import EEGSimpleConv
23
22
  from .eegsym import EEGSym
24
23
  from .eegtcnet import EEGTCNet
@@ -74,7 +73,6 @@ __all__ = [
74
73
  "DeepSleepNet",
75
74
  "BrainModule",
76
75
  "EEGConformer",
77
- "EEGPT",
78
76
  "EEGInceptionERP",
79
77
  "EEGInceptionMI",
80
78
  "EEGITNet",
@@ -8,7 +8,6 @@ CTNet,Motor Imagery,Classification,250,"n_chans, n_outputs, n_times",26900,"CTNe
8
8
  Deep4Net,General,Classification,250,"n_chans, n_outputs, n_times",282879,"Deep4Net(n_chans=22, n_outputs=4, n_times=1000)","Convolution"
9
9
  DeepSleepNet,Sleep Staging,Classification,256,"n_chans, n_outputs",24744837,"DeepSleepNet(n_chans=1, n_outputs=5, n_times=7680, sfreq=256)","Convolution,Recurrent"
10
10
  EEGConformer,General,Classification,250,"n_chans, n_outputs, n_times",789572,"EEGConformer(n_chans=22, n_outputs=4, n_times=1000)","Convolution,Attention/Transformer"
11
- EEGPT,General,Classification,256,"n_chans, n_outputs, n_times",25477635,"EEGPT(n_chans=58, n_outputs=4, n_times=1024)","Foundation Model,Attention/Transformer"
12
11
  EEGInceptionERP,"ERP, SSVEP",Classification,128,"n_chans, n_outputs",14926,"EEGInceptionERP(n_chans=8, n_outputs=2, n_times=128, sfreq=128)","Convolution"
13
12
  EEGInceptionMI,Motor Imagery,Classification,250,"n_chans, n_outputs, n_times",558028,"EEGInceptionMI(n_chans=22, n_outputs=4, n_times=1000, n_convs=5, n_filters=12)","Convolution"
14
13
  EEGITNet,Motor Imagery,Classification,125,"n_chans, n_outputs, n_times",5212,"EEGITNet(n_chans=22, n_outputs=4, n_times=500)","Convolution,Recurrent"
@@ -73,7 +73,6 @@ models_mandatory_parameters: list[
73
73
  ("EEGInceptionMI", ["n_chans", "n_outputs", "n_times", "sfreq"], None),
74
74
  ("EEGITNet", ["n_chans", "n_outputs", "n_times"], None),
75
75
  ("EEGNet", ["n_chans", "n_outputs", "n_times"], None),
76
- ("EEGPT", ["n_chans", "n_outputs", "n_times", "chs_info"], None),
77
76
  ("ShallowFBCSPNet", ["n_chans", "n_outputs", "n_times"], None),
78
77
  (
79
78
  "SleepStagerBlanco2020",
@@ -0,0 +1 @@
1
+ __version__ = "1.3.1.dev182267549"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.3.1.dev178641268
3
+ Version: 1.3.1.dev182267549
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>
@@ -70,7 +70,6 @@ braindecode/models/eegitnet.py
70
70
  braindecode/models/eegminer.py
71
71
  braindecode/models/eegnet.py
72
72
  braindecode/models/eegnex.py
73
- braindecode/models/eegpt.py
74
73
  braindecode/models/eegsimpleconv.py
75
74
  braindecode/models/eegsym.py
76
75
  braindecode/models/eegtcnet.py
@@ -62,16 +62,12 @@ a common interface for all EEG models and derivate variables names if necessary.
62
62
  Some models have pre-trained weights available on the Hugging Face BrainDecode
63
63
  organization:
64
64
 
65
- - :class:`~braindecode.models.BIOT` - Foundation model with pre-trained weights
66
- - :class:`~braindecode.models.Labram` - Large Brain Model with pre-trained weights
67
- - :class:`~braindecode.models.REVE` - EEG foundation model with pre-trained weights
68
- - :class:`~braindecode.models.LUNA` - Universal EEG embedding model with pre-trained
69
- weights
70
- - :class:`~braindecode.models.BENDR` - Foundation model with pre-trained weights
71
- - :class:`~braindecode.models.SignalJEPA` - Self-supervised learning model with
72
- pre-trained weights
73
- - :class:`~braindecode.models.EEGPT` - Pretrained transformer for universal EEG
74
- representation
65
+ - :class:`BIOT` - Foundation model with pre-trained weights
66
+ - :class:`Labram` - Large Brain Model with pre-trained weights
67
+ - :class:`REVE` - EEG foundation model with pre-trained weights
68
+ - :class:`LUNA` - Universal EEG embedding model with pre-trained weights
69
+ - :class:`BENDR` - Foundation model with pre-trained weights
70
+ - :class:`SignalJEPA` - Self-supervised learning model with pre-trained weights
75
71
 
76
72
  **Example - Loading a pre-trained model:**
77
73
 
@@ -142,7 +138,6 @@ a common interface for all EEG models and derivate variables names if necessary.
142
138
  EEGITNet
143
139
  EEGMiner
144
140
  EEGNet
145
- EEGPT
146
141
  EEGNeX
147
142
  EEGSimpleConv
148
143
  EEGSym
@@ -175,7 +175,7 @@ categories can be found in the respective sections below.
175
175
  - In contrast, several methods employ **attention/transformer** modules
176
176
  (:bdg-info:`Attention/Transformer`) to capture longer-range dependencies efficiently,
177
177
  e.g., :class:`EEGConformer`, :class:`CTNet`, :class:`ATCNet`,
178
- :class:`AttentionBaseNet`, and :class:`EEGPT`
178
+ :class:`AttentionBaseNet`
179
179
  (:cite:label:`song2022eeg,zhao2024ctnet,altaheri2022atcnet`).
180
180
  - **Filterbank-style models** (:bdg-primary:`Filterbank`) explicitly decompose signals
181
181
  into multiple bands before (or while) learning, echoing the classic FBCSP pipeline;
@@ -193,8 +193,8 @@ categories can be found in the respective sections below.
193
193
  - **Foundation Model / Transformer** (:bdg-danger:`Foundation Model`) approaches
194
194
  pretrain attention-based encoders on diverse biosignals and fine-tune for EEG tasks;
195
195
  e.g., :class:`BIOT` (:cite:label:`yang2023biot`), :class:`Labram`
196
- (:cite:label:`jiang2024large`), and :class:`EEGPT` (:cite:label:`eegpt`). These
197
- typically need a heavily self-supervised pre-training before decoding.
196
+ (:cite:label:`jiang2024large`). These typically need a heavily self-supervised
197
+ pre-training before decoding.
198
198
  - **Graph neural networks** (:bdg-light:`Graph Neural Network`) treat channels/regions
199
199
  as nodes with learned (static or dynamic) edges to model functional connectivity
200
200
  explicitly; representative EEG-GNN, more common in the epileptic decoding
@@ -27,12 +27,7 @@ Version 1.4 (Source - GitHub)
27
27
 
28
28
  Enhancements
29
29
  ============
30
- - Add an optional ``lazy`` init path to :class:`braindecode.datasets.base.BaseConcatDataset`
31
- to defer cumulative size computation (and any downstream dataset length access) until
32
- first access, supporting truly lazy raw loading workflows.
33
- - Adding :class:`braindecode.models.EEGPT` with HuggingFace Hub integration and
34
- pretrained weights available at `braindecode/eegpt-pretrained <https://huggingface.co/braindecode/eegpt-pretrained>`_
35
- (:gh:`908` by `Young Truong`_ and `Kuntal Kokate`_)
30
+ - None yet.
36
31
 
37
32
  API changes
38
33
  ============