Estudios en Ensambles de Redes Neuronales

Estudios en Ensambles de Redes Neuronales

Eduardo Filemón Vázquez Santacruz
 

Texto completo de la Tesis     

 


Resumen

Presupóngase un conjunto de datos L = {(xi , yi ) : i = 1, . . . , n; xi ∈ ℜp , yi ∈ ℜs }, generado a partir de una distribución de probabilidad P desconocida. Existen varios métodos disponibles en la literatura para estimar la relación entrada o salida que está presente en los datos del conjunto L. En la mayoría de los métodos una función de predicción φ se construye usando el conjunto L y optimizando cierto criterio. La propiedad más importante que la función φ debe tener es la capacidad de predecir las salidas de los datos (generados con la misma distribución P ) que no están presentes en el conjunto de entrenamiento L. Esta propiedad es llamada habilidad de generalización de la función de predicción. El desarrollo de sistemas que puedan predecir con buenas propiedades de generalización es un área de investigación activa y existen muchas propuestas para hacerlo. Una de las técnicas para realizar esta tarea consiste en construir múltiples clasificadores usando L y combinar las salidas de éstos para obtener la predicción final. Este tipo de métodos son denominados “métodos de ensamble”. Una de la estrategias comunes para construir un clasificador a partir de un conjunto de datos dado L, consiste en entrenar una red neuronal de “proalimentación” (por ejemplo, un perceptrón multicapa (MLP)) usando L. Es posible entrenar varias redes neuronales a partir de L y posteriormente crear un ensamble con ellas. En esta tesis estudiamos algunos métodos para crear ensambles de redes neuronales. Presentamos tres nuevos métodos para crear ensambles y también discutimos algunas variantes de estas metodologías. Primero discutimos una variante de la MLP llamada “red de cuello de botella”, ésta ha sido ampliamente usada para la reducción de dimensión de datos. Presentamos una variante de la MLP de cuello de botella original, y proponemos una nueva estrategia para crear ensambles de redes neuronales usando proyecciones a partir de “redes de cuello de botella”. También discutimos una metodología para crear clones a partir de una red individual entrenada. La generación de clones se realiza mediante la adición de ruido controlado a los parámetros de la red principal. Demostramos que un ensamble de clones puede dar mejor desempeño que la red principal. Finalmente mostramos un método para entrenar redes usando datos generados a partir de la estimación de densidad del conjunto de datos original L. Hemos validado todos nuestros métodos con experimentos usando conjuntos de datos de clasificación estándares y nuestros métodos dan resultados alentadores.

Abstract

Let us assume a data set L = {(xi , yi ) : i = 1, . . . , n; xi ∈ ℜp , yi ∈ ℜs }, generated from an unknown but fixed probability distribution P . There are numerous methods available in the literature to estimate the input-output relationship present in the data points in L. In most methods, a predictor function φ is constructed using the set L and optimizing certain criteria. The most important property that the predictor φ should have is that the predictor should be able to predict the outputs for points which are from the same distribution P but are not present in the training set L. This property is called the generalization ability of the predictor. Constructing predictors with good generalization properties is an active area of research and there exist many proposals to do it. One of the techniques to do it is to construct multiple predictors using L and aggregating the outputs of these predictors for obtaining the final prediction. This class of methods are called ensemble methods. One of the popular ways to construct a predictor from a given data L is to train a feed forward neural network (like a multilayered perceptron (MLP)) using L. It is possible to train multiple neural networks from L and thus create an ensemble of neural networks. In this thesis we study certain methods to create neural network ensembles. We present three new broad methods to create ensembles and we also discuss some variants of these broad methodologies. First, we discuss a MLP variant called the bottleneck network, which has been widely used for data dimensionality reduction. We present a variant of the original bottleneck MLP, and propose a new way to create neural network ensembles using bottleneck projections. Next, we discuss a methodology to create clones from a single trained network by adding controlled noise to the parameters of the parent network. We show that an ensemble of the clones can give better performance than the parent network. Finally, we show a method to train networks from data points generated from a kernel density estimate of the original data set L. We validate all our methods with experiments using standard benchmark classification data sets, and we show that our methods provide encouraging results.