pooling_func en AgglomerativeClustering no funciona.
from sklearn import metrics
from sklearn.datasets.samples_generator import make_blobs
from sklearn.cluster import AgglomerativeClustering
centers = [[1, 1], [-1, -1], [1, -1]]
X, labels_true = make_blobs(n_samples=300, centers=centers, cluster_std=0.5,
random_state=0)
model = AgglomerativeClustering(linkage='complete',
connectivity=None,
affinity = 'cosine',
pooling_func = "test_error",
n_clusters=3)
model.fit(X)
Genere el error porque pooling_func no se puede llamar. Es una cuerda.
Sin advertencia, sin error
Linux-4.4.0-64-generic-x86_64-con-debian-stretch-sid
Python 3.5.3 | empaquetado por conda-forge | (predeterminado, 9 de febrero de 2017, 14:37:12)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-15)]
NumPy 1.13.1
CIENCIA 0.19.1
Scikit-Learn 0.19.0
Me parece que esto es un problema de diseño de clase: FeatureAgglomeration se deriva de AgglomerativeClustering pero pooling_func solo se usa en AgglomerativeClustering.transform.
Siéntete libre de abrir un PR. No he mirado en detalle, pero una posible solución sería que FeatureAgglomeration y AgglomerativeClustering deriven de una clase base común y tener pooling_func solo en FeatureAgglomeration.
Dicho esto, puede haber razones por las que se hizo así, aunque no puedo pensar en ninguna.
(Y FeatureAgglomeration probablemente debería ser una envoltura o una mezcla ...)
El 28 de septiembre de 2017 a las 21:24, "Loïc Estève" [email protected] escribió:
Me parece que esto es un problema de diseño de clase: FeatureAgglomeration
deriva de AgglomerativeClustering pero pooling_func solo se usa en
AgglomerativeClustering.transform.Siéntete libre de abrir un PR. No he mirado en detalle pero una posible solución.
sería tener FeatureAgglomeration y AgglomerativeClustering derivar
de una clase base común y tener pooling_func solo en FeatureAgglomeration.Habiendo dicho que puede haber razones por las que se hizo así, aunque yo
no puedo pensar en ninguno.-
Estás recibiendo esto porque estás suscrito a este hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/scikit-learn/scikit-learn/issues/9846#issuecomment-332807654 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AAEz6z9lkUF7u0jA2-sWEe_XIZvUk1r_ks5sm4HdgaJpZM4PnBzV
.
Quiero abordar este tema si no se está trabajando actualmente.