Mdp

Latest version: v3.6

Safety actively analyzes 630026 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 6

05.10.2005

04.11.2004

now subclasses of IdentityNode.
Use of input_dim and output_dim in the nodes' constructor
is now consistent.
02.11.2004: Now symeig works reliably also for complex matrices.
symeig now can be distributed as an independent package
It is still contained in mdp.utils for convenience.
Default value for option overwrite changed from 1 to 0.

3.6

2020-04-18: NEW: support libsvm for Python 3 libsvm has been updated to be
compatible with Python >= 3.4. Python 2 support has been dropped,
so we don't test it anymore.
2020-04-18: ERF: restore Python 2 compatibility and add a matrix entry for it
in travis
2019-18-12: FIX: SciPy 1.4 support.
2019-13-12: NEW: VartimeSFANode supports SFA on data with non-constant time
increments. This yields an SFA implementation that is robust
against missing data.
2019-01-20: NEW: Added a new family of expansion nodes, including Legendre,
Hermite and Chebyshev polynomials. A facility for easily including
recursively defined 1-dimensional expansion functions powers these
nodes, applying them to N-dimensional data by tensor basis
construction. The new expansion nodes are numerically more stable
than ordinary monomials and permit higher expansion degrees.
Examples where numerically stable expansion is beneficial:
https://github.com/NiMlr/pyfunctionbases
https://arxiv.org/abs/1805.08565, section 4.2.1, Figure 11 and A.2.
2019-01-19: FIX: pytest Python 3.7 compatibility
2018-07-18: FIX: PEP 479 compatibility
2018-06-15: NEW: Added SFA-based supervised learning, specifically graph based
SFA nodes GSFANode and iGSFANode and hierarchical GSFA (HGSFA).
For further information, see:
Escalante-B A.-N., Wiskott L, "How to solve classification and
regression problems on high-dimensional data with a supervised
extension of Slow Feature Analysis". Journal of Machine Learning
Research 14:3683-3719, 2013.
http://www.jmlr.org/papers/volume14/escalante13a/escalante13a.pdf
https://github.com/AlbertoEsc/cuicuilco
2018-05-29: DOC: Revamped the documentation for Sphinx-autodoc compatibility.
MDP documentation is now available on readthedocs:
https://mdpdocs.readthedocs.io/en/latest
2018-01-18: NEW: Added solvers to SFA-node that are robust against rank deficit
in the covariance matrix. When data contained linear redundancies,
like easily introduced by e.g. insufficient cropping of black bars
of a video, this usually resulted in
SymeigException ('Covariance matrices may be singular').
Now it provides simple instructions for robust processing of such
data by setting a new flag in SFANode:
rank_deficit_method can be 'none' (default), 'reg', 'pca', 'svd',
leveraging robust solving via regularization, PCA, SVD or LDL
decomposition respectively. (LDL requires SciPy >= 1.0)
2017-03-11: DOC: changed reference to new mailing list
old: mdp-toolkit-userslists.sourceforge.net
new: mdp-toolkitpython.org
2017-03-06: NEW: Added online mode to enable use of MDP in reinforcement
learning. This notably includes incremental SFA as described in
"Varun Raj Kompella, Matthew Luciw, and Juergen Schmidhuber (2012).
Incremental Slow Feature Analysis: Adaptive Low-Complexity Slow
Feature Updating from High-Dimensional Input Streams.
Neural Computation."
https://www.mitpressjournals.org/doi/abs/10.1162/NECO_a_00344
New nodes and flows:
OnlineNode, OnlineFlow, CircularFlow, OnlineCenteringNode,
OnlineTimeDiffNode, OnlineFlowNode, CircularOnlineFlowNode,
OnlineLayer, CloneOnlineLayer, SameInputOnlineLayer, MCANode,
CCIPCANode, IncSFANode

-------------------------------------------------------------------------------

3.5

2016-03-08: fix use of str in biflow indexing
2016-03-08: remove obsolete scripts
2016-03-07: Add wrapper function for exec Old Python versions don't allow exec
statement in nested functions: Traceback (most recent call last):
File "<string>", line 1, in <module>
File "mdp/__init__.py", line 131, in <module>
from . import utils
File "mdp/utils/__init__.py", line 29, in <module>
from .slideshow import (basic_css, slideshow_css, HTMLSlideShow,
File "mdp/utils/slideshow.py", line 23, in <module>
from . import templet
File "mdp/utils/templet.py", line 196
exec(code, globals, kw) SyntaxError: unqualified exec is not
allowed in function 'expand' it is a nested function

-------------------------------------------------------------------------------

3.4

2016-03-02: Make use of setuptools instead of distutils While we resisted as
long as possible, it is now time to move to use setuptools
officially. This makes MDP installable properly with pip. This
means that our dependencies are now explicitly declared
(numpy and future). Optional dependencies are also declared and can
be installed using the "pip -e MDP[optionaldep]" command, where
optionaldep can be scipy, or scikit-learn or ... Moreover,
automatic testing using "python setup.py test" now works, which
makes MDP finally conform this non-written standard and makes it
easy to run tests for clueless people.
2016-03-02: add new modules in sklearn wrappers
2016-03-02: Remove self-contained py.test script... The use of the
self-contained script for py.test has been deprecated for a while
and has stop working. We now require py.test to be installed to run
the tests.
2016-03-01: remove obsolete stuff related to py3 conversion with lib2to3
2016-03-01: Disable support for shogun > 1 it would be too much work to enable
support for newer shogun versions...
2016-03-01: disable failing monkeypatching test for pp...
.. the pp monkeypatching trick is not needed anymore anyways...
2016-03-01: futurize stage 2: code is now py2&3 compatible
2016-03-01: futurize stage1: code should still be python2.6 compatible
2016-03-01: compatibility fixes for numpy 1.11..,
...numpy now refuses to index arrays using floats and default dtype
for zeros and ones has been changed from integers to floats.
2016-03-01: several new sklearn autogenerated nodes need additional arguments
to be tested
2014-04-27: FIX: fixed broken inclusion of CSS data
2014-03-14: FIX: hacky fix for the unicode issue in bimdp autogen (fix for Bug
11)
2013-09-03: NEW: added extension setup and teardown function decorator
2013-09-03: DOC: some small updates and fixes in docstrings and comments
2013-08-31: FIX: cStringIO does not support Unicode
`autogen` was breaking in nodes with Unicode characters in their
docstring. We traced this down to cStringIO, which unlike StringIO
does not support unicode.
2013-08-31: FIX: wrap sklearn algs in modules ending with "_" For historical
reasons we were not wrapping sklearn algs in modules with names
ending with "_". This restriction prevented us from wrapping algs
that we could have wrapped. We lift it now, since it does not seem
to have any bad side effects anymore. A proper validation would be
to really test that we can run the algs.
2013-05-08: NEW: update local copy of py.test to version 2.3.4
2013-04-16: FIX: made code and documentation consistent regarding the parameter
k in invert_exp_funcs2
2013-04-16: DOC: indicated what expansion failed in the tests of
GeneralExpansionNode
2013-04-16: DOC: added an example to GeneralExpansionNode and made the
documentation more explicit
2012-12-07: FIX: make pip work without explicit URL. now we point directly to
the tar archive in the download_url field of the setup.py file.
2012-11-20: DOC: moved coarse_limit description under FastICA and removed
signature (present elsewhere)
2012-11-20: ENH: FastICA - test having some coarse_limit
2012-11-20: ENH: FastICA -- primary_limit -> coarse_limit + default to None
Introduced to make things a bit clearer since there is already
"fine tuning" stage where optimization switches to used_g upon
reaching the limit. Calling the limit "coarse" instead of
"primary/secondary" would help to preserve original messages/logic
thus not confusing existing users, while still allowing to kick in
gFine before reaching the limit
2012-11-20: ENH: 2 stage optimization for FastICA found in current AFNI
2012-10-04: DOC: bumped version number after release ;)
2012-09-21: OTH: updated CHANGES and COPYRIGHT
2012-09-21: NEW: add support for newest sklearn algorithms

-------------------------------------------------------------------------------

3.3

2012-09-19: FIX: fix error in automatic testing for MultinomialNB.
2012-09-19: ERF: make sklearn nodes automatic testing more robust The previous
solution was actually ignoring the special definitions in NODES.

2012-09-19: FIX: disable pp support if server can not start Being able to
import pp is not enough to be sure that pp works. For example in a
low memory situation, the following can happen:

>>> import pp
>>> server = pp.Server()
[...] OSError: [Errno 12] Cannot allocate memory

This fix just disables pp support if the server can not be
started.

2012-06-18: FIX: Fix wrapping of sklearn 0.11 classifiers
2012-04-17: FIX: make test_SFA2Node even more robust
2012-04-16: FIX: make FastICANode test more robust
2012-04-16: FIX: make test_SFA2Node more robust
2012-04-05: FIX: fix pp_tests when run multiple times. pp tests were failing
when run twice in a row. hugly work-around, but it seems to
work...

2012-04-05: FIX: fixed broken test_reload. test_reload was failing when called
twice in a row.

2012-04-05: FIX: fix random seed tests. The tests were failing when called
twice in a row:
>>> import mdp
>>> mdp.test()
>>> mdp.test() the first call was working, the second one was
giving failures.

2012-04-01: ERF: added tests for learning of bias parameters
2012-03-26: FIX: replace third remaing test for pp_monkeypatch_dirname
Hopefully this will fix test suite failures.

2012-03-22: FIX: Decrease the noise level in the DiscreteHopfieldClassifier.
2012-03-22: FIX: honor MDP_DISABLE_SHOGUN env variable
2012-03-19: FIX: fix left-over directories from testing pp. I do not know why,
but this simple change fixes the leftover directories problem when
testig with python-pp and pp monkey-patching. It should have
worked even as it was before, but apparently some race condition
happens.

2012-03-06: FIX: fix determinant of random rotation matrix determinant sign
was wrong if dimensions of rotation matrix were odd. Thanks to
Philip DeBoer. Actual Fix.

2012-03-06: FIX: fix determinant of random rotation matrix determinant sign
was wrong if dimensions of rotation matrix were odd. Thanks to
Philip DeBoer. Failing Test.

2012-02-13: ENH: remove duplicated and overly verbose code
2012-02-13: FIX: remove FastICA stabilization from tests
2012-02-13: FIX: remove unused parameter stabilization in FastICA.
2012-01-19: NEW: added new sklearn algorithms wrapping We now wrap 93 sklearn
algorithms!

2012-01-19: FIX: fix another imcompatibility with sklearn 0.10 Although
EllipticEnvelop is derived from sklearn.base.ClassifierMixin, it
is not a classifier. It is actually a "predictor". Added a check
in the sklearn wrappers.

2012-01-19: FIX: fix sklearn wrappers for version 0.10 New sklearn version
introduces classifiers and predictors mixin classes that do not
have a 'fit' method. Typical error:

AttributeError: type object 'OutlierDetectionMixin' has no
attribute 'fit'

Just added a check that the method is really present before
wrapping.

2012-01-12: FIX: fix failing test for no eigenvalues left problem Check that
PCANode now raises the right exception.

2012-01-12: FIX: add useful exception in case of no eigenvalues left. Check
for the condition explained in
b0810d72ce11925e1db6204c3a20bdfc77741a82 and raise a nicely
formatted exception:

Traceback:
[...] File ".../mdp/nodes/pca_nodes.py", line 223, in
_stop_training
' var_abs=%e!'%self.var_abs) NodeException: No eigenvalues
larger than var_abs=1.000000e-15!

2012-01-12: OTH: added failing test for no eigenvalues left problem. When
PCANode is set to use SVD and automatic dimensionality reduction
it may happen that after removing directions corresponding to
eigenvalues smaller than var_abs (1e-12 default), nothing is left.
This happens for example if the data is a matrix of (almost)
zeros. The error looks like this: Traceback (most recent call
last):
[...] File ".../mdp/nodes/pca_nodes.py", line 220, in
_stop_training
d = d[ d / d.max() > self.var_rel ] ValueError: zero-size array
to ufunc.reduce without identity

2012-01-03: FIX: old joblib breaks imports from sklearn.decomposition
>>> import sklearn.decomposition Traceback (most recent call
last):
File "<stdin>", line 1, in <module>
File
"/usr/lib/pymodules/python2.6/sklearn/decomposition/__init__.py",
line 8, in <module>
from .sparse_pca import SparsePCA, MiniBatchSparsePCA
File
"/usr/lib/pymodules/python2.6/sklearn/decomposition/sparse_pca.py",
line 10, in <module>
from .dict_learning import dict_learning, dict_learning_online
File
"/usr/lib/pymodules/python2.6/sklearn/decomposition/dict_learning.py",
line 17, in <module>
from ..externals.joblib import Parallel, delayed, cpu_count
ImportError: cannot import name cpu_count
>>> joblib.__version__
'0.4.3'

2012-01-02: FIX: py3k compatibility for reload reload() is moved to
imp.reload().

It also seems that Python 3 behaves slightly differently wrt.
reloads. For some reason, mdp.configuration is not imported
properly on reload. Let's just not remove the name from the
namespace, as this is the easiest fix.

2011-12-23: ERF: added a failing test for reload MDP does not work with
reload. See https://github.com/mdp-toolkit/mdp-toolkit/issues/1
for details.

Thanks to Yaroslav Halchenko for reporting it.

2011-12-18: FIX: Removed the leftover _global_message_emitter attribute (as
reported by Tiziano and Hannah).
2011-12-09: FIX: fix wrong sorting of eigenvectors in degenerate case for SVD.
Thanks to Yaroslav Halchenko for reporting and fixing!

2011-12-09: NEW: added failing test for wrong sorting of SVDs
2011-10-24: FIX: updated sklearn wrappers to silence warnings for version >=
0.9

-------------------------------------------------------------------------------

Page 3 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.