Nonlinear independent component analysis