braindecode 1.8.1.dev181104868__tar.gz → 1.8.1.dev182582231__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 (186) hide show
  1. {braindecode-1.8.1.dev181104868/braindecode.egg-info → braindecode-1.8.1.dev182582231}/PKG-INFO +1 -1
  2. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/functional/functions.py +11 -0
  3. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/filter.py +8 -7
  4. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/parametrization.py +13 -2
  5. braindecode-1.8.1.dev182582231/braindecode/version.py +1 -0
  6. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231/braindecode.egg-info}/PKG-INFO +1 -1
  7. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/whats_new.rst +13 -0
  8. braindecode-1.8.1.dev181104868/braindecode/version.py +0 -1
  9. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/LICENSE.txt +0 -0
  10. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/MANIFEST.in +0 -0
  11. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/NOTICE.txt +0 -0
  12. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/README.rst +0 -0
  13. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/__init__.py +0 -0
  14. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/augmentation/__init__.py +0 -0
  15. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/augmentation/base.py +0 -0
  16. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/augmentation/functional.py +0 -0
  17. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/augmentation/transforms.py +0 -0
  18. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/classifier.py +0 -0
  19. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/__init__.py +0 -0
  20. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/_notebook_viewer.py +0 -0
  21. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/base.py +0 -0
  22. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bbci.py +0 -0
  23. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bcicomp.py +0 -0
  24. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/__init__.py +0 -0
  25. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/datasets.py +0 -0
  26. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/format.py +0 -0
  27. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/hub.py +0 -0
  28. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/hub_format.py +0 -0
  29. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/hub_io.py +0 -0
  30. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/hub_validation.py +0 -0
  31. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/bids/iterable.py +0 -0
  32. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/chb_mit.py +0 -0
  33. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/collate.py +0 -0
  34. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/mne.py +0 -0
  35. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/moabb.py +0 -0
  36. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/nmt.py +0 -0
  37. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/registry.py +0 -0
  38. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/siena.py +0 -0
  39. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/sleep_physio_challe_18.py +0 -0
  40. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/sleep_physionet.py +0 -0
  41. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/tuh.py +0 -0
  42. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/utils.py +0 -0
  43. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datasets/xy.py +0 -0
  44. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datautil/__init__.py +0 -0
  45. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datautil/channel_utils.py +0 -0
  46. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datautil/hub_formats.py +0 -0
  47. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datautil/serialization.py +0 -0
  48. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/datautil/util.py +0 -0
  49. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/eegneuralnet.py +0 -0
  50. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/functional/__init__.py +0 -0
  51. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/functional/initialization.py +0 -0
  52. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/__init__.py +0 -0
  53. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/atcnet.py +0 -0
  54. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/attentionbasenet.py +0 -0
  55. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/attn_sleep.py +0 -0
  56. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/base.py +0 -0
  57. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/bendr.py +0 -0
  58. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/biot.py +0 -0
  59. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/brainbert.py +0 -0
  60. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/brainmodule.py +0 -0
  61. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/brant.py +0 -0
  62. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/cbramod.py +0 -0
  63. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/codebrain.py +0 -0
  64. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/config.py +0 -0
  65. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/contrawr.py +0 -0
  66. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/ctnet.py +0 -0
  67. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/dance.py +0 -0
  68. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/deep4.py +0 -0
  69. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/deepsleepnet.py +0 -0
  70. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/dgcnn.py +0 -0
  71. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegconformer.py +0 -0
  72. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegdino.py +0 -0
  73. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eeginception_erp.py +0 -0
  74. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eeginception_mi.py +0 -0
  75. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegitnet.py +0 -0
  76. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegminer.py +0 -0
  77. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegnet.py +0 -0
  78. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegnex.py +0 -0
  79. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegpt.py +0 -0
  80. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegsimpleconv.py +0 -0
  81. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegsym.py +0 -0
  82. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/eegtcnet.py +0 -0
  83. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/emg2qwerty.py +0 -0
  84. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/fbcnet.py +0 -0
  85. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/fblightconvnet.py +0 -0
  86. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/fbmsnet.py +0 -0
  87. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/hybrid.py +0 -0
  88. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/ifnet.py +0 -0
  89. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/interpolated.py +0 -0
  90. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/labram.py +0 -0
  91. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/luna.py +0 -0
  92. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/medformer.py +0 -0
  93. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/meta_neuromotor.py +0 -0
  94. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/msvtnet.py +0 -0
  95. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/mvpformer.py +0 -0
  96. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/neuropose.py +0 -0
  97. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/patchedtransformer.py +0 -0
  98. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/reve.py +0 -0
  99. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sccnet.py +0 -0
  100. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sensingdynamics.py +0 -0
  101. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/shallow_fbcsp.py +0 -0
  102. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/signal_jepa.py +0 -0
  103. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sinc_shallow.py +0 -0
  104. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sleep_stager_blanco_2020.py +0 -0
  105. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sleep_stager_chambon_2018.py +0 -0
  106. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sparcnet.py +0 -0
  107. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/sstdpn.py +0 -0
  108. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/steegformer.py +0 -0
  109. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/summary.csv +0 -0
  110. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/syncnet.py +0 -0
  111. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/tcformer.py +0 -0
  112. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/tcn.py +0 -0
  113. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/tidnet.py +0 -0
  114. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/tsinception.py +0 -0
  115. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/usleep.py +0 -0
  116. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/util.py +0 -0
  117. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/vemg2pose.py +0 -0
  118. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/models/zuna.py +0 -0
  119. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/__init__.py +0 -0
  120. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/activation.py +0 -0
  121. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/attention.py +0 -0
  122. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/blocks.py +0 -0
  123. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/convolution.py +0 -0
  124. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/dance_modules.py +0 -0
  125. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/interpolation.py +0 -0
  126. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/layers.py +0 -0
  127. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/linear.py +0 -0
  128. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/stats.py +0 -0
  129. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/util.py +0 -0
  130. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/modules/wrapper.py +0 -0
  131. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/__init__.py +0 -0
  132. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/eegprep_preprocess.py +0 -0
  133. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/mne_preprocess.py +0 -0
  134. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/preprocess.py +0 -0
  135. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/util.py +0 -0
  136. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/preprocessing/windowers.py +0 -0
  137. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/regressor.py +0 -0
  138. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/samplers/__init__.py +0 -0
  139. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/samplers/base.py +0 -0
  140. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/samplers/ssl.py +0 -0
  141. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/training/__init__.py +0 -0
  142. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/training/callbacks.py +0 -0
  143. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/training/losses.py +0 -0
  144. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/training/scoring.py +0 -0
  145. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/util.py +0 -0
  146. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/__init__.py +0 -0
  147. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/activations.py +0 -0
  148. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/attribution.py +0 -0
  149. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/confusion_matrices.py +0 -0
  150. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/frequency.py +0 -0
  151. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/metrics.py +0 -0
  152. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/sanity.py +0 -0
  153. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode/visualization/topology.py +0 -0
  154. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode.egg-info/SOURCES.txt +0 -0
  155. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode.egg-info/dependency_links.txt +0 -0
  156. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode.egg-info/requires.txt +0 -0
  157. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/braindecode.egg-info/top_level.txt +0 -0
  158. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/Makefile +0 -0
  159. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/_templates/autosummary/class.rst +0 -0
  160. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/_templates/autosummary/class_in_subdir.rst +0 -0
  161. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/_templates/autosummary/function.rst +0 -0
  162. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/_templates/autosummary/function_in_subdir.rst +0 -0
  163. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/api.rst +0 -0
  164. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/cite.rst +0 -0
  165. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/conf.py +0 -0
  166. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/help.rst +0 -0
  167. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/index.rst +0 -0
  168. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/install/install.rst +0 -0
  169. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/install/install_pip.rst +0 -0
  170. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/install/install_source.rst +0 -0
  171. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/attention.rst +0 -0
  172. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/channel.rst +0 -0
  173. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/convolution.rst +0 -0
  174. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/filterbank.rst +0 -0
  175. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/gnn.rst +0 -0
  176. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/interpretable.rst +0 -0
  177. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/lbm.rst +0 -0
  178. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/recurrent.rst +0 -0
  179. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/categorization/spd.rst +0 -0
  180. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/models.rst +0 -0
  181. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/models_categorization.rst +0 -0
  182. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/models_table.rst +0 -0
  183. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/models/models_visualization.rst +0 -0
  184. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/docs/sg_execution_times.rst +0 -0
  185. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/pyproject.toml +0 -0
  186. {braindecode-1.8.1.dev181104868 → braindecode-1.8.1.dev182582231}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.8.1.dev181104868
3
+ Version: 1.8.1.dev182582231
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>
@@ -165,6 +165,15 @@ def hilbert_freq(x: torch.Tensor, forward_fourier: bool = True) -> torch.Tensor:
165
165
  https://github.com/scipy/scipy/blob/v1.14.1/scipy/signal/_signaltools.py#L2287-L2394
166
166
 
167
167
  """
168
+ input_dtype = x.dtype
169
+ # ``view_as_complex`` does not accept bfloat16 real/imaginary pairs. The
170
+ # HPU path can produce bfloat16 Fourier coefficients under autocast, so do
171
+ # the complex-valued part in float32 and restore the real-valued contract
172
+ # at the boundary. Promoting before the FFT also covers backends that do
173
+ # not implement bfloat16 FFT kernels.
174
+ if input_dtype == torch.bfloat16:
175
+ x = x.float()
176
+
168
177
  if forward_fourier:
169
178
  x = torch.fft.rfft(x, norm=None, dim=-1)
170
179
  x = torch.view_as_real(x)
@@ -177,6 +186,8 @@ def hilbert_freq(x: torch.Tensor, forward_fourier: bool = True) -> torch.Tensor:
177
186
  x = torch.fft.ifft(x, norm=None, dim=-1) # returns complex signal
178
187
  x = torch.view_as_real(x)
179
188
 
189
+ if input_dtype == torch.bfloat16:
190
+ x = x.to(input_dtype)
180
191
  return x
181
192
 
182
193
 
@@ -643,16 +643,17 @@ class GeneralizedGaussianFilter(nn.Module):
643
643
  """
644
644
  min_f_mean = self.clamp_f_mean[0] / (self.sample_rate / 2)
645
645
  max_f_mean = self.clamp_f_mean[1] / (self.sample_rate / 2)
646
- f_mean = torch.clamp(self.f_mean, min=min_f_mean, max=max_f_mean)
646
+ f_mean = torch.clamp(self.f_mean.clone(), min=min_f_mean, max=max_f_mean)
647
647
  bandwidth = torch.clamp(
648
- self.bandwidth, min=1.0 / (self.sample_rate / 2), max=1.0
648
+ self.bandwidth.clone(), min=1.0 / (self.sample_rate / 2), max=1.0
649
649
  )
650
- shape = torch.clamp(self.shape, min=2.0, max=3.0)
650
+ shape = torch.clamp(self.shape.clone(), min=2.0, max=3.0)
651
651
 
652
- if not torch.jit.is_scripting():
653
- self.f_mean.data = f_mean
654
- self.bandwidth.data = bandwidth
655
- self.shape.data = shape
652
+ if not torch.jit.is_scripting() and not torch.jit.is_tracing():
653
+ with torch.no_grad():
654
+ self.f_mean.copy_(f_mean)
655
+ self.bandwidth.copy_(bandwidth)
656
+ self.shape.copy_(shape)
656
657
 
657
658
  # Create magnitude response with gain=1 -> (channels, freqs)
658
659
  mag_response = self.exponential_power(
@@ -34,5 +34,16 @@ class MaxNormParametrize(nn.Module):
34
34
  self.max_norm = max_norm
35
35
 
36
36
  def forward(self, X: torch.Tensor) -> torch.Tensor:
37
- # Renormalize each "row" (dim=0 slice) to have at most self.max_norm L2-norm
38
- return X.renorm(p=2, dim=0, maxnorm=self.max_norm)
37
+ # Renormalize each "row" (dim=0 slice) to have at most self.max_norm
38
+ # L2-norm. This is ``X.renorm(p=2, dim=0, maxnorm=self.max_norm)``
39
+ # written out, with the same 1e-7 epsilon: ``renorm`` fails on Intel
40
+ # Gaudi (HPU), which decomposes it into a broadcast that breaks for
41
+ # some weight shapes. The rescale uses a mask, not a data-dependent
42
+ # branch, so it also traces and compiles without graph breaks.
43
+ # Rows are flattened so the scale broadcasts as (rows, 1); this form
44
+ # is also TorchScript-compatible.
45
+ rows = X.reshape(X.shape[0], -1)
46
+ norm = rows.norm(p=2, dim=1, keepdim=True)
47
+ over = (norm > self.max_norm).to(X.dtype)
48
+ scale = (1.0 - over) + over * (self.max_norm / (norm + 1e-7))
49
+ return (rows * scale).reshape_as(X)
@@ -0,0 +1 @@
1
+ __version__ = "1.8.1.dev182582231"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: braindecode
3
- Version: 1.8.1.dev181104868
3
+ Version: 1.8.1.dev182582231
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>
@@ -78,6 +78,19 @@ Bug fixes
78
78
  :class:`braindecode.models.Deep4Net` unusable on single-channel data
79
79
  (:gh:`1154` by `Julien Gadonneix`_).
80
80
 
81
+ - Fix :class:`braindecode.models.EEGMiner` on Intel Gaudi (HPU) and under
82
+ ``torch.jit.trace``: :class:`braindecode.modules.GeneralizedGaussianFilter`
83
+ now clamps its parameters in place under ``torch.no_grad()`` instead of
84
+ reassigning ``.data``, and :func:`braindecode.functional.hilbert_freq`
85
+ computes the complex FFT step in float32 for bfloat16 inputs, so the phase
86
+ features work under bfloat16 autocast (:gh:`1183` by `Bruno Aristimunha`_).
87
+ - Fix :class:`braindecode.modules.MaxNormParametrize` failing on Intel Gaudi
88
+ (HPU), which affects every model with a max-norm weight constraint
89
+ (e.g. :class:`braindecode.models.EEGNet`,
90
+ :class:`braindecode.models.ATCNet`). The row rescale is now written out
91
+ instead of calling ``Tensor.renorm``; values and gradients are unchanged
92
+ (:gh:`1184` by `Bruno Aristimunha`_).
93
+
81
94
 
82
95
  Current 1.8.0 (2026-08-31)
83
96
  ===============================
@@ -1 +0,0 @@
1
- __version__ = "1.8.1.dev181104868"