> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clickml.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Feature Extraction component

> Reduce dimensionality with techniques like PCA and ICA to extract a compact set of features that capture most of the variance in your dataset.

The **Feature Extraction** component applies dimensionality reduction algorithms to transform a set of input features into a smaller number of extracted components. This is useful for reducing noise, speeding up training, and visualizing high-dimensional data.

## Configuration

| Option                         | Description                                                     | Default       |
| ------------------------------ | --------------------------------------------------------------- | ------------- |
| **Method**                     | Reduction algorithm to use (see table below)                    | —             |
| **Columns**                    | Numerical columns to reduce. Supports `All Numerical Features`. | All numerical |
| **N Components**               | Number of output components to produce                          | `2`           |
| **Random State**               | Seed for reproducibility                                        | `42`          |
| **Kernel** *(Kernel PCA only)* | Kernel type: `rbf`, `poly`, `sigmoid`, `cosine`                 | `rbf`         |

### Methods

| Method        | Description                                                                                      |
| ------------- | ------------------------------------------------------------------------------------------------ |
| PCA           | Principal Component Analysis — finds the directions of maximum variance. The most common choice. |
| Kernel PCA    | Non-linear version of PCA using a kernel function.                                               |
| Truncated SVD | SVD-based reduction that works on sparse matrices.                                               |
| ICA           | Independent Component Analysis — separates statistically independent signals.                    |
| NMF           | Non-Negative Matrix Factorization — requires all values to be non-negative.                      |

## Input / Output

|        | Type                                                             |
| ------ | ---------------------------------------------------------------- |
| Input  | DataFrame                                                        |
| Output | DataFrame (original non-feature columns + new component columns) |

<Note>
  The output columns are named `pca_1`, `pca_2`, `ica_1`, etc. depending on the method chosen. Non-selected columns are preserved.
</Note>
