automl/auto-sklearn

FastICA: `n_components is too large: it will be set to _`

Open

#240 aberto em 24 de fev. de 2017

Ver no GitHub
 (4 comments) (0 reactions) (0 assignees)Python (1.265 forks)batch import
Good first issueenhancement

Métricas do repositório

Stars
 (7.270 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

FastICA currently looks for n_components between 10 and 2000, with a default of 100. However, assuming there are more rows N than columns M, a data set can only support up to M independent components. The suggested range is therefore between 2 and M, with a default of round(M / 2).

Looking at the implementation, it appears information about the data set is not available in get_hyperparameter_search_space. As a workaround, the n_components property could be replaced by a n_components_rel property that indicates the amount of independent components relative to the total number of features M. When calling sklearn.decomposition.FastICA, you could then simply pass n_components=X.shape[1] * self.n_components_rel.

Guia do colaborador