Comments (2)
Hi,
I think that this is expected (?) since the exp non linearity is psi(x) = x * exp(-x^2) and hence it will be ~ zero when x is too large.
A solution to avoid this problem would be to rescale it, as already implemented in the densities.py files.
For instance, using your code, doing
import numpy as np
from picard import picard
from picard.densities import Exp
N, T = 10, 1000
S = np.random.laplace(size=(N, T))
A = np.random.randn(N, N)
X = np.dot(A, S)
density = Exp(params={'alpha': 0.1})
K, W, Y = picard(X , ortho = False , extended = False , fun = density)
seems to solve the problem.
For now, I think a good thing would be to change the default alpha
in the exp density. I'll open a pr.
from picard.
Thank you for your response. Yes I did think of changing the value of alpha but I was just concerned by the fact that the default value produced an error. Curiously (or maybe this is expected), adding an orthogonal constraint I do not observe this kind of error anymore.
from picard.
Related Issues (19)
- missing scipy import HOT 1
- centering should not be done if whiten=False cf. fastica code HOT 1
- Super- and sub-Gaussian sources with Picard? HOT 4
- Make new PyPI release HOT 1
- Is extended mode available for the matlab implementation of picard? HOT 2
- scipy referenced in doc files HOT 1
- Convergence issues HOT 13
- docs outdated? HOT 2
- drop nose tests in favor of pytest
- Example request: compare Picard "settings" with FastICA, Infomax, Extended Infomax HOT 3
- cannot import name 'picard' from 'picard' (unknown location) HOT 3
- Mention conda-forge package in the installation instructions? HOT 1
- Requirements are not automatically installed when running a pip install HOT 1
- Current PyPI release is missing scikit-learn requirement HOT 2
- Integration with Brainstorm / Rank check HOT 1
- Demeaning the wrong dimension? HOT 5
- `numexpr` requirement HOT 1
- DOC: update ref for Picard-O HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from picard.