orange_gualbe_fs
Add-on de selección de atributos (feature selection) para Orange Data Mining.
Añade una nueva categoría "Selección de Atributos" al lienzo de Orange, con widgets que reciben una tabla de datos, permiten configurar un algoritmo de selección de atributos desde su interfaz gráfica, y devuelven la tabla reducida solo con los atributos elegidos.
Widgets incluidos
Filtro Univariante
Selecciona atributos evaluando cada uno por separado frente a la variable objetivo (target), sin entrenar ningún modelo. Permite elegir:
- Método de selección:
SelectKBest,SelectPercentile,SelectFpr,SelectFdr,SelectFwe(descikit-learn). - Función de puntuación (scoring):
chi2,f_classif,f_regression,r_regression.
El widget detecta automáticamente si el target de los datos de entrada es categórico (clasificación) o numérico (regresión), y solo deja activas las funciones de puntuación compatibles con ese tipo de problema.
Selección Wrapper
Selecciona atributos mediante métodos wrapper, que evalúan subconjuntos de atributos entrenando repetidamente un modelo predictivo:
- Método:
RFE,RFECV,SequentialFeatureSelector(descikit-learn). - Estimador base: Regresión Logística/Lineal o Bosque Aleatorio, según el tipo de target detectado.
- Parámetros configurables por método: número de atributos, paso, mínimo de atributos (RFECV), pliegues de validación cruzada, dirección (SFS) y métrica de evaluación (scoring).
A diferencia del Filtro Univariante, este widget no aplica los cambios
automáticamente (auto_apply desactivado por defecto): al ser más lento,
hay que pulsar Apply tras ajustar los parámetros. Sí procesa los datos
automáticamente en cuanto llegan por la entrada.
Selección Embebida
Selecciona atributos según la importancia o los coeficientes que les
asigna un modelo predictivo ya entrenado (SelectFromModel de
scikit-learn) — entrena el modelo una sola vez, a diferencia de los
métodos wrapper:
- Estimador base: una selección amplia de algoritmos de
scikit-learnsegún el tipo de target — 8 de clasificación (Regresión Logística, SVM Lineal, SGD, Árbol de Decisión, Bosque Aleatorio, Extra Trees, Gradient Boosting, AdaBoost) y 10 de regresión (los mismos más Ridge, Lasso y ElasticNet). - Umbral de selección: media, mediana o un valor personalizado.
- Límite de atributos opcional (número máximo, independiente del umbral).
auto_apply activado por defecto (un único ajuste del modelo, más rápido
que los métodos wrapper).
Los tres widgets integran su ayuda con el sistema de ayuda nativo de Orange: selecciona el widget en el lienzo y pulsa F1, o haz clic en el icono "?" de la barra de estado del widget.
Instalación para desarrollo
python -m venv .venv
source .venv/bin/activate
pip install Orange3 PyQt5
pip install -e .
Abrir Orange Canvas con el add-on instalado:
python -m Orange.canvas
El widget aparecerá en el lienzo bajo la categoría "Selección de Atributos".
Ayuda de los widgets (documentación)
La ayuda que se abre con F1/"?" se genera con Sphinx
a partir de los archivos en doc/. Cada widget tiene una página en
doc/widgets/<nombre>.rst, con una etiqueta al inicio que debe coincidir
exactamente con el nombre del widget en minúsculas (por ejemplo,
.. _filtro univariante: para el widget name = "Filtro Univariante") —
así es como Orange encuentra la página correcta.
Para (re)generar la documentación tras editar o añadir un widget:
pip install sphinx
python -m sphinx -b html doc doc/build/html
doc/build/html/ no se versiona en el control de código fuente: es un
artefacto generado, igual que dist/. Debe reconstruirse cada vez que se
edite un archivo .rst en doc/widgets/.
Requisitos de los datos de entrada
- La tabla debe tener una variable objetivo (target) definida.
- Si vas a usar
chi2, todos los atributos deben ser no negativos (aplica antes una normalización si es necesario). - Si los datos tienen valores ausentes, imputa antes con el widget
"Impute" de Orange: las funciones de puntuación de
scikit-learnno admiten valores faltantes.
Metadata
Release files for orange-gualbe-fs 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| orange_gualbe_fs-0.1.0.tar.gz | 50.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| orange_gualbe_fs-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 119.8 kB
Release files / orange_gualbe_fs-0.1.0.tar.gz
| Download URL | orange_gualbe_fs-0.1.0.tar.gz |
|---|---|
| Size | 50.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7a30063df027ecd0229f9eed26f6c7fec131d23448a35c19101c74942ea3966b
|
|
BLAKE2b-256 checksum How to use checksums |
5d17e2a17fd5705758ec0c8b6788cc303fa8221ac780b6699d969c208109f5c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.9
|
Release files / orange_gualbe_fs-0.1.0-py3-none-any.whl
| Download URL | orange_gualbe_fs-0.1.0-py3-none-any.whl |
|---|---|
| Size | 69.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3e7766c8b3b44ee5de18c75790443db816fad953eee8e38a54c2e7e742cd0f81
|
|
BLAKE2b-256 checksum How to use checksums |
b1989726f46854349ecedd54eaaf3a21ba3bfa1165e38c7254cb2f65cebfc04d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.9
|