Ejemplo 23: Habilitador de Operadores

Este meta-proceso muestra otra posibilidad de optimizar automáticamente el diseño del proceso. El operador "OperatorEnabler" se puede utilizar para habilitar o deshabilitar uno de sus hijos. Este se puede utilizar junto con uno de los operadores de optimización de parámetros para comprobar qué operadores se deben emplear para obtener resultados óptimos. Esto es especialmente útil para determinar qué operadores de preprocesamiento se deben usar para una combinación particular de conjunto de datos-aprendiz.

1. Agregar el operador Repository Access → Retrieve a la zona de trabajo y localizar el archivo //Samples/data/Ripley-Set con el navegador del parámetro repository entry.

2. Process Control → Parameter → Optimize Parameters (Grid). Cambiar el nombre del mismo a “GridOptimizaciónParámetros”. Conectar la salida del operador Retrieve a la entradas inp (input 1) de este operador y las salidas per (performance) y par (parameter) de éste último conectores res del panel.

 

 

3. Hacer doble clic sobre el operador OptimizaciónParámetros (Optimize Parameters (Grid)). En el panel Optimization Process del nivel inferior mostrado, agregar los siguientes operadores:

3.1 Process Control → Branch → Select Subprocess. Cambiar el nombre del mismo a “OperadorHabilitador” y el valor del parámetro select which a 2. Conectar la entrada inp del panel a la entrada inp (input 1) de este operador.

3.2 Evaluation → Validation → X-Validation. Cambiar el nombre del mismo a “XValidación” y el valor del parámetro number of validations a 5. Conectar la salida out (output 1) del operador OperadorHabilitador (Select Subprocess) a la entrada tra de este operador.

3.3 Utility → Logging → Log. Conectar la salida ave (averagable 1) del operador XValidación (XValidation) a la entrada thr (through 1) de este operador y la salida (through 1) del mismo, al conector per (performance) del panel. En el parámetro log de este operador editar la lista de parámetros para incluir los campos “habilitar_normalización” y “performance”: 

 

 

 

4. Hacer doble clic sobre el operador OperadorHabilitador. En el panel Selection 1 del nivel inferior mostrado, agregar el siguiente operador:

4.1 Data Transformation → Value Modification → Numerical Value Modification → Normalize. Cambiar el nombre del mismo a “Normalización”. Conectar la entrada inp del panel a la entrada exa de este operador y la salida exa de este último al conector out del panel.

4.2 En el panel Selection 2 de la derecha sólo conectar los puertos inp y out del mismo.

 

 

5. Subir un nivel y hacer doble clic sobre el operador XValidación. En el panel Training del nivel inferior mostrado, agregar el siguiente operador:

5.1 Modeling → Classification and Regression → Bayesian Modeling → Naive Bayes. Conectar la entrada tra y salida mod del mismo a los puertos tra y mod del panel, respectivamente.

6. En el panel Testing de la derecha, agregar los siguientes operadores:

6.1 Modeling → Model Application → Apply Model. Cambiar el nombre del mismo a “AplicadorModelo” y conectar los puertos mod y tes del panel a las entradas mod y unl de este operador, respectivamente.

6.2 Agregar el operador Evaluation → Performance Measurement → Performance. Conectar la salida lab del operador AplicadorModelo (Apply Model) a la entradas lab de este operador y la salida per de éste último al conector ave del panel.

 

 

7. Volver al nivel superior (Proceso Principal), seleccionar el operador GridOptimizaciónParámetros y utilizar el editor para seleccionar el parámetro select which del operador OperadorHabilitador (Select Subprocess):

Resultado del GridOptimizaciónParámetros (Grid):

 

Conjunto de Parámetros:

 

Performance:
PerformanceVector [
-----accuracy: 85.20% +/- 4.12% (mikro: 85.20%)
ConfusionMatrix:
True: 0 1
0: 104 16
1: 21 109
-----precision: 84.18% +/- 4.81% (mikro: 83.85%) (positive class: 1)
ConfusionMatrix:
True: 0 1
0: 104 16
1: 21 109
-----recall: 87.20% +/- 8.54% (mikro: 87.20%) (positive class: 1)
ConfusionMatrix:
True: 0 1
0: 104 16
1: 21 109
-----AUC (optimistic): 0.934 +/- 0.026 (mikro: 0.934) (positive class: 1)
-----AUC: 0.934 +/- 0.026 (mikro: 0.934) (positive class: 1)
-----AUC (pessimistic): 0.934 +/- 0.026 (mikro: 0.934) (positive class: 1)
]
OperadorHabilitador.select_which = 1