sklearn.kernel_approximation
.RBFSampler¶
- class sklearn.kernel_approximation.RBFSampler¶
Aproxima el mapa de características de un núcleo RBF por la aproximación de Monte Carlo de su transformación Fourier.
Implementa una variante de Random Kitchen Sinks.[1]
Más información en el Manual de usuario.
- Parámetros
- gammaflotante, default=1.0
Parámetro del núcleo RBF: exp(-gamma * x^2)
- n_componentsentero, default=100
Número de muestras de Monte Carlo por característica original. Igual a la dimensionalidad del espacio de características calculado.
- random_stateentero, RandomState instance o None, default=None
Generador de números pseudo-aleatorios para controlar la generación de los ponderados aleatorios y el desplazamiento aleatorio al ajustar los datos de entrenamiento. Pasa un int para una salida reproducible a través de múltiples llamadas de función. Ver Glosario.
- Atributos
- random_offset_ndarray de forma (n_components,), dtype=float64
Desplazamiento aleatorio usado para calcular la proyección en las dimensiones
n_components
del espacio de características.- random_weights_ndarray de forma (n_features, n_components), dtype=float64
Direcciones de proyección aleatoria extraídas de la transformación Fourier del núcleo RBF.
Notas
Ver «Random Features for Large-Scale Kernel Machines» por A. Rahimi y Benjamin Recht.
[1] «Weighted Sums of Random Kitchen Sinks: Replacing minimization with randomization in learning» por A. Rahimi y Benjamin Recht. (https://people.eecs.berkeley.edu/~brecht/papers/08.rah.rec.nips.pdf)
Ejemplos
>>> from sklearn.kernel_approximation import RBFSampler >>> from sklearn.linear_model import SGDClassifier >>> X = [[0, 0], [1, 1], [1, 0], [0, 1]] >>> y = [0, 0, 1, 1] >>> rbf_feature = RBFSampler(gamma=1, random_state=1) >>> X_features = rbf_feature.fit_transform(X) >>> clf = SGDClassifier(max_iter=5, tol=1e-3) >>> clf.fit(X_features, y) SGDClassifier(max_iter=5) >>> clf.score(X_features, y) 1.0
Métodos
Ajusta el modelo con X.
Lo ajusta a los datos, y después lo transforma.
Obtiene los parámetros para este estimador.
Establece los parámetros de este estimador.
Aplica el mapa de características aproximado a X.
- fit()¶
Ajusta el modelo con X.
Realiza un muestreo a la proyección aleatoria de acuerdo a n_features.
- Parámetros
- X{array-like, sparse matrix}, forma (n_samples, n_features)
Datos de entrenamiento, donde n_samples es el número de muestras y n_features es el número de características.
- Devuelve
- selfobject
Devuelve el transformador.
- fit_transform()¶
Lo ajusta a los datos, y después lo transforma.
Ajusta el transformador a
X
yy
con los parámetros opcionalesfit_params
y devuelve una versión transformada deX
.- Parámetros
- Xarray-like de forma (n_samples, n_features)
Muestras de entrada.
- yarray-like de forma (n_samples,) o (n_samples, n_outputs), default=None
Valores objetivo (None para transformaciones no supervisadas).
- **fit_paramsdict
Parámetros de ajuste adicionales.
- Devuelve
- X_newarreglo ndarray de forma (n_samples, n_features_new)
Arreglo transformado.
- get_params()¶
Obtiene los parámetros para este estimador.
- Parámetros
- deepbooleano, default=True
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
- Devuelve
- paramsdict
Nombres de parámetros mapeados a sus valores.
- set_params()¶
Establece los parámetros de este estimador.
El método funciona tanto en estimadores simples como en objetos anidados (como
Pipeline
). Estos últimos tienen parámetros de la forma<component>__<parameter>`
para que sea posible actualizar cada componente de un objeto anidado.- Parámetros
- **paramsdict
Parámetros del estimador.
- Devuelve
- selfinstancia de estimador
Instancia del estimador.
- transform()¶
Aplica el mapa de características aproximado a X.
- Parámetros
- X{array-like, sparse matrix}, forma (n_samples, n_features)
Nuevos datos, donde n_samples es el número de muestras y n_features es el número de características.
- Devuelve
- X_newarray-like, forma (n_samples, n_components)