Braindecode 1.3.2.dev176759409__tar.gz → 1.3.2.dev177700329__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 (162) hide show
  1. {braindecode-1.3.2.dev176759409/braindecode.egg-info → braindecode-1.3.2.dev177700329}/PKG-INFO +2 -2
  2. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/reve.py +3 -23
  3. braindecode-1.3.2.dev177700329/braindecode/version.py +1 -0
  4. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329/braindecode.egg-info}/PKG-INFO +2 -2
  5. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode.egg-info/requires.txt +1 -1
  6. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/whats_new.rst +1 -2
  7. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/pyproject.toml +1 -10
  8. braindecode-1.3.2.dev176759409/braindecode/version.py +0 -1
  9. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/LICENSE.txt +0 -0
  10. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/MANIFEST.in +0 -0
  11. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/NOTICE.txt +0 -0
  12. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/README.rst +0 -0
  13. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/__init__.py +0 -0
  14. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/augmentation/__init__.py +0 -0
  15. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/augmentation/base.py +0 -0
  16. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/augmentation/functional.py +0 -0
  17. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/augmentation/transforms.py +0 -0
  18. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/classifier.py +0 -0
  19. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/__init__.py +0 -0
  20. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/base.py +0 -0
  21. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bbci.py +0 -0
  22. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bcicomp.py +0 -0
  23. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/__init__.py +0 -0
  24. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/datasets.py +0 -0
  25. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/format.py +0 -0
  26. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/hub.py +0 -0
  27. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/hub_format.py +0 -0
  28. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/hub_io.py +0 -0
  29. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/hub_validation.py +0 -0
  30. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/bids/iterable.py +0 -0
  31. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/chb_mit.py +0 -0
  32. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/mne.py +0 -0
  33. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/moabb.py +0 -0
  34. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/nmt.py +0 -0
  35. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/registry.py +0 -0
  36. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/siena.py +0 -0
  37. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  38. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/sleep_physionet.py +0 -0
  39. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/tuh.py +0 -0
  40. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/utils.py +0 -0
  41. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datasets/xy.py +0 -0
  42. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datautil/__init__.py +0 -0
  43. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datautil/channel_utils.py +0 -0
  44. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datautil/hub_formats.py +0 -0
  45. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datautil/serialization.py +0 -0
  46. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/datautil/util.py +0 -0
  47. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/eegneuralnet.py +0 -0
  48. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/functional/__init__.py +0 -0
  49. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/functional/functions.py +0 -0
  50. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/functional/initialization.py +0 -0
  51. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/__init__.py +0 -0
  52. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/atcnet.py +0 -0
  53. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/attentionbasenet.py +0 -0
  54. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/attn_sleep.py +0 -0
  55. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/base.py +0 -0
  56. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/bendr.py +0 -0
  57. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/biot.py +0 -0
  58. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/brainmodule.py +0 -0
  59. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/cbramod.py +0 -0
  60. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/config.py +0 -0
  61. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/contrawr.py +0 -0
  62. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/ctnet.py +0 -0
  63. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/deep4.py +0 -0
  64. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/deepsleepnet.py +0 -0
  65. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/dgcnn.py +0 -0
  66. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegconformer.py +0 -0
  67. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eeginception_erp.py +0 -0
  68. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eeginception_mi.py +0 -0
  69. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegitnet.py +0 -0
  70. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegminer.py +0 -0
  71. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegnet.py +0 -0
  72. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegnex.py +0 -0
  73. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegpt.py +0 -0
  74. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegsimpleconv.py +0 -0
  75. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegsym.py +0 -0
  76. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/eegtcnet.py +0 -0
  77. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/fbcnet.py +0 -0
  78. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/fblightconvnet.py +0 -0
  79. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/fbmsnet.py +0 -0
  80. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/hybrid.py +0 -0
  81. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/ifnet.py +0 -0
  82. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/labram.py +0 -0
  83. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/luna.py +0 -0
  84. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/medformer.py +0 -0
  85. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/msvtnet.py +0 -0
  86. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/patchedtransformer.py +0 -0
  87. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sccnet.py +0 -0
  88. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/shallow_fbcsp.py +0 -0
  89. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/signal_jepa.py +0 -0
  90. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sinc_shallow.py +0 -0
  91. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  92. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  93. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sparcnet.py +0 -0
  94. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/sstdpn.py +0 -0
  95. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/summary.csv +0 -0
  96. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/syncnet.py +0 -0
  97. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/tcn.py +0 -0
  98. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/tidnet.py +0 -0
  99. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/tsinception.py +0 -0
  100. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/usleep.py +0 -0
  101. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/models/util.py +0 -0
  102. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/__init__.py +0 -0
  103. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/activation.py +0 -0
  104. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/attention.py +0 -0
  105. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/blocks.py +0 -0
  106. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/convolution.py +0 -0
  107. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/filter.py +0 -0
  108. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/layers.py +0 -0
  109. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/linear.py +0 -0
  110. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/parametrization.py +0 -0
  111. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/stats.py +0 -0
  112. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/util.py +0 -0
  113. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/modules/wrapper.py +0 -0
  114. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/__init__.py +0 -0
  115. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  116. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/mne_preprocess.py +0 -0
  117. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/preprocess.py +0 -0
  118. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/util.py +0 -0
  119. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/preprocessing/windowers.py +0 -0
  120. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/regressor.py +0 -0
  121. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/samplers/__init__.py +0 -0
  122. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/samplers/base.py +0 -0
  123. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/samplers/ssl.py +0 -0
  124. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/training/__init__.py +0 -0
  125. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/training/callbacks.py +0 -0
  126. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/training/losses.py +0 -0
  127. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/training/scoring.py +0 -0
  128. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/util.py +0 -0
  129. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/visualization/__init__.py +0 -0
  130. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/visualization/confusion_matrices.py +0 -0
  131. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode/visualization/gradients.py +0 -0
  132. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode.egg-info/SOURCES.txt +0 -0
  133. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode.egg-info/dependency_links.txt +0 -0
  134. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/braindecode.egg-info/top_level.txt +0 -0
  135. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/Makefile +0 -0
  136. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/_templates/autosummary/class.rst +0 -0
  137. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  138. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/_templates/autosummary/function.rst +0 -0
  139. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  140. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/api.rst +0 -0
  141. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/cite.rst +0 -0
  142. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/conf.py +0 -0
  143. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/help.rst +0 -0
  144. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/index.rst +0 -0
  145. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/install/install.rst +0 -0
  146. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/install/install_pip.rst +0 -0
  147. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/install/install_source.rst +0 -0
  148. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/attention.rst +0 -0
  149. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/channel.rst +0 -0
  150. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/convolution.rst +0 -0
  151. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/filterbank.rst +0 -0
  152. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/gnn.rst +0 -0
  153. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/interpretable.rst +0 -0
  154. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/lbm.rst +0 -0
  155. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/recurrent.rst +0 -0
  156. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/categorization/spd.rst +0 -0
  157. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/models.rst +0 -0
  158. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/models_categorization.rst +0 -0
  159. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/models_table.rst +0 -0
  160. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/models/models_visualization.rst +0 -0
  161. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/docs/sg_execution_times.rst +0 -0
  162. {braindecode-1.3.2.dev176759409 → braindecode-1.3.2.dev177700329}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.3.2.dev176759409
3
+ Version: 1.3.2.dev177700329
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>
@@ -22,7 +22,7 @@ Requires-Python: >=3.11
22
22
  Description-Content-Type: text/x-rst
23
23
  License-File: LICENSE.txt
24
24
  License-File: NOTICE.txt
25
- Requires-Dist: torch>=2.0
25
+ Requires-Dist: torch>=2.2
26
26
  Requires-Dist: torchaudio>=2.0
27
27
  Requires-Dist: mne>=1.11.0
28
28
  Requires-Dist: pandas<3.0.0
@@ -16,16 +16,7 @@ import torch
16
16
  import torch.nn.functional as F
17
17
  from einops import rearrange
18
18
  from torch import nn
19
-
20
- # Safe import for older PyTorch versions (Support for Intel-based Macs)
21
- try:
22
- from torch.nn.attention import SDPBackend, sdpa_kernel
23
-
24
- HAS_SDPA = True
25
- except ImportError:
26
- HAS_SDPA = False
27
- SDPBackend = None
28
- sdpa_kernel = None
19
+ from torch.nn.attention import SDPBackend, sdpa_kernel
29
20
 
30
21
  from braindecode.models.base import EEGModuleMixin
31
22
 
@@ -539,22 +530,11 @@ class FeedForward(nn.Module):
539
530
 
540
531
 
541
532
  class ClassicalAttention(nn.Module):
542
- def __init__(self, heads: int, use_sdpa: bool | None = None):
533
+ def __init__(self, heads: int, use_sdpa: bool = True):
543
534
  super().__init__()
535
+ self.use_sdpa = use_sdpa
544
536
  self.heads = heads
545
537
 
546
- if use_sdpa is None:
547
- self.use_sdpa = HAS_SDPA
548
- elif use_sdpa is True and not HAS_SDPA:
549
- logger.warning(
550
- "SDPA (Scaled Dot Product Attention) was requested, but it is not "
551
- "available in your current PyTorch version. Falling back to naive "
552
- "implementation. Please upgrade to PyTorch >= 2.2 for SDPA support."
553
- )
554
- self.use_sdpa = False
555
- else:
556
- self.use_sdpa = use_sdpa
557
-
558
538
  def forward(self, qkv: torch.Tensor) -> torch.Tensor:
559
539
  # Split concatenated QKV into separate tensors
560
540
  # qkv shape: (batch, seq_len, 3 * heads * head_dim)
@@ -0,0 +1 @@
1
+ __version__ = "1.3.2.dev177700329"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.3.2.dev176759409
3
+ Version: 1.3.2.dev177700329
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>
@@ -22,7 +22,7 @@ Requires-Python: >=3.11
22
22
  Description-Content-Type: text/x-rst
23
23
  License-File: LICENSE.txt
24
24
  License-File: NOTICE.txt
25
- Requires-Dist: torch>=2.0
25
+ Requires-Dist: torch>=2.2
26
26
  Requires-Dist: torchaudio>=2.0
27
27
  Requires-Dist: mne>=1.11.0
28
28
  Requires-Dist: pandas<3.0.0
@@ -1,4 +1,4 @@
1
- torch>=2.0
1
+ torch>=2.2
2
2
  torchaudio>=2.0
3
3
  mne>=1.11.0
4
4
  pandas<3.0.0
@@ -72,7 +72,6 @@ Enhancements
72
72
  pooling (Kostas et al. 2021, Section 2.4), and ``n_chans_pretrained`` parameter with
73
73
  max-norm constrained channel projection for fine-tuning pretrained BENDR on datasets
74
74
  with arbitrary channel counts (by `Kuntal Kokate`_)
75
- - Add dynamic SDPA fallback in :class:`braindecode.models.reve.ClassicalAttention` to support PyTorch versions without SDPA (by `GalAshkenazi1`_)
76
75
 
77
76
  API changes
78
77
  ============
@@ -80,7 +79,7 @@ API changes
80
79
 
81
80
  Requirements
82
81
  ============
83
- - Relaxed PyTorch requirement to >=2.0 to support Intel-based Macs (by `GalAshkenazi1`_)
82
+ - None yet.
84
83
 
85
84
  Bugs
86
85
  =====
@@ -45,7 +45,7 @@ classifiers = [
45
45
  readme = "README.rst"
46
46
  requires-python = ">=3.11"
47
47
  dependencies = [
48
- "torch>=2.0",
48
+ "torch>=2.2",
49
49
  "torchaudio>=2.0",
50
50
  'mne>=1.11.0', # we get matplotlib, numpy, pandas, scipy from here
51
51
  'pandas<3.0.0', # to avoid issues with wfdb
@@ -60,15 +60,6 @@ dependencies = [
60
60
  'rotary_embedding_torch',
61
61
  'pandas<3.0.0', # to avoid incompatibility with wfdb https://github.com/MIT-LCP/wfdb-python/issues/560
62
62
  ]
63
-
64
- [tool.uv]
65
- required-environments = [
66
- "sys_platform == 'darwin' and platform_machine == 'x86_64'", # Intel Mac
67
- "sys_platform == 'darwin' and platform_machine == 'arm64'", # Apple Silicon Mac (M1/M2/M3)
68
- "sys_platform == 'linux' and platform_machine == 'x86_64'", # Linux 64-bit
69
- "sys_platform == 'win32' and platform_machine == 'AMD64'" # Windows 64-bit
70
- ]
71
-
72
63
  [project.urls]
73
64
  homepage = "https://braindecode.org"
74
65
  repository = "https://github.com/braindecode/braindecode"
@@ -1 +0,0 @@
1
- __version__ = "1.3.2.dev176759409"