Está en la página 1de 13

Recibido el 8 de abril de 2019, aceptado el 15 de junio de 2019, fecha de publicación el 20 de junio de 2019, fecha de la versión actual, 9 de julio de 2019.

Identificador de objeto digital 10.1109 / ACCESS.2019.2924060

Clasificación de matriz dispersa en conjuntos de datos

desequilibrados utilizando redes neuronales convolucionales

JUAN C. PICHEL 1, ( Miembro, IEEE), Y BEATRIZ PATEIRO-LÓPEZ 2


1 CiTIUS, Universidade de Santiago de Compostela, 15782 Santiago de Compostela, España
2 Dpto. de Estadística, Análisis Matemático y Optimización, Universidad de Santiago de Compostela, 15782 Santiago de Compostela, España Autor para correspondencia:

Juan C. Pichel ( juancarlos.pichel@usc.es )

Este trabajo fue apoyado en parte por el Ministerio de Economía y Competitividad (MINECO) bajo Grant MTM2016-76969-P y Grant RTI2018-093336-B-C21, en parte por
la Xunta de Galicia bajo Grant ED431G / 08 y Grant ED431C 2018 / 19, y en parte por el Fondo Europeo de Desarrollo Regional (FEDER).

RESUMEN Este artículo aborda el problema del desequilibrio de clases en el contexto de la selección automática del mejor formato de
almacenamiento para una matriz dispersa con el objetivo de maximizar el rendimiento de la multiplicación vectorial de matriz dispersa (SpMV) en las
GPU. Nuestro método de clasificación utiliza redes neuronales convolucionales (CNN) y propone varias soluciones para mitigar el sesgo hacia las
clases mayoritarias cuando los datos no están equilibrados. Primero, los CNN se entrenan utilizando imágenes que representan el patrón de
dispersión de las matrices, cuyos píxeles se colorean de acuerdo con diferentes características de la matriz. Además, presentamos una nueva red
llamada SpNet, que logra mejores resultados que una red estándar como AlexNet en términos de precisión de predicción, incluso teniendo una
arquitectura más simple. Finalmente, Se han estudiado técnicas de muestreo y métodos sensibles al costo para dar más énfasis a las clases
minoritarias. Los experimentos realizados muestran que nuestros clasificadores pueden seleccionar el formato con mejor rendimiento el 92.8% del
tiempo, obteniendo el 98.3% del rendimiento máximo posible de SpMV. También se proporciona una comparación con otros métodos de clasificación
de vanguardia, lo que demuestra los beneficios de nuestra propuesta.

TÉRMINOS DEL ÍNDICE Matriz escasa, clasificación, desequilibrio, aprendizaje profundo, CNN, rendimiento.

I. INTRODUCCIÓN a menudo entran en conflicto entre sí [1]. Debemos tener en cuenta que el uso de
La multiplicación escasa de vectores de matriz (SpMV) se considera uno de un formato inapropiado podría provocar una degradación importante en el
los núcleos computacionales más importantes que se encuentran en el rendimiento de SpMV. Como consecuencia, la selección automática del formato
corazón de muchas aplicaciones científicas y de ingeniería. Hay consenso con mejor rendimiento es una tarea de clasificación importante y desafiante.
al afirmar que SpMV funciona mal en arquitecturas multinúcleo y
multinúcleo ya que es una operación vinculada a la memoria. Como Por otro lado, las redes neuronales convolucionales (CNN) son las redes de
consecuencia, la comunidad de investigación ha dedicado numerosos aprendizaje profundo más importantes para el reconocimiento y la clasificación de
esfuerzos para desarrollar implementaciones eficientes y optimizadas. Dado imágenes. La principal diferencia entre los CNN y los enfoques tradicionales de
que el rendimiento de SpMV depende tanto del sistema paralelo de destino aprendizaje automático es que integran la extracción automática de características y
como de la estructura de dispersión de la matriz, muchos formatos de la clasificación en un modelo. Las CNN también han demostrado resultados
almacenamiento existentes se han centrado en un dominio de aplicación prometedores con otros tipos de aplicaciones, como el procesamiento del lenguaje
particular, patrón de dispersión y / o arquitectura de computadora. El natural (PNL), el procesamiento de voz y audio, por nombrar algunos. Sin embargo,
formato de fila dispersa comprimida (CSR) es la estructura de datos más tratar los problemas de clasificación relacionados con la informática de alto
popular para almacenar una matriz dispersa para sistemas multinúcleo, rendimiento (HPC) utilizando CNN es un campo incipiente [2] - [4].
mientras que para las GPU no podemos encontrar un formato
predominante. En ese caso,
Muchas veces, las CNN tienen que aprender de los datos desequilibrados de tal
manera que algunas clases tienen un número significativamente mayor de ejemplos en el
conjunto de capacitación que otras. Este fenómeno se denomina como el desequilibrio de

El editor asociado que coordinó la revisión de este manuscrito y lo aprobó para su


clase problema. La mayoría de los algoritmos de aprendizaje existentes producen sesgo
publicación fue Antonio J. Plaza. inductivo

Este trabajo está licenciado bajo una licencia Creative Commons Attribution 3.0. Para obtener más información, consulte http://creativecommons.org/licenses/by/3.0/
VOLUMEN 7, 2019 82377
JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

hacia las clases mayoritarias si los datos de entrenamiento no están El resto de este documento está organizado de la siguiente manera. Sección II da
equilibrados, lo que resulta en un bajo rendimiento de reconocimiento de clase los antecedentes y discute algunas investigaciones relacionadas. Sección III resume
minoritaria. Sin embargo, en muchos dominios de aplicación, la clasificación nuestra metodología de clasificación. La configuración experimental se explica en la
correcta de una muestra de clase minoritaria es igualmente importante para la Sección IV . Los resultados de rendimiento se muestran y discuten en la Sección V .
clasificación correcta de una muestra de clase mayoritaria. Por ejemplo, en la Finalmente, se explican las principales conclusiones derivadas del trabajo.
selección del formato con mejor rendimiento para el núcleo SpMV, donde un
formato (clase) no prevalece sobre los demás. Los métodos existentes para
abordar el desequilibrio de clase funcionan en dos niveles diferentes [5]: nivel
de datos y nivel de algoritmo. En el primer caso, las técnicas apuntan a II ANTECEDENTES Y TRABAJOS RELACIONADOS

equilibrar la distribución de la clase en el conjunto de datos para que los A. FORMATOS DE MATRIZ DE REPUESTO

algoritmos de entrenamiento estándar funcionen. Entonces, estas técnicas No existe un formato de almacenamiento general que sea adecuado para
cambian el conjunto de datos original. Un enfoque diferente es seguido por todo tipo de matrices dispersas, ya que su forma, número y distribución de
métodos a nivel de algoritmo, nonzeros depende del dominio de aplicación del que provienen. En las
últimas décadas, se han propuesto muchos formatos de almacenamiento
(el lector interesado puede encontrar una encuesta en [8]). Estos formatos
En este artículo abordamos la clasificación automática de matrices dispersas para difieren en los requisitos de almacenamiento, los métodos de acceso y qué
seleccionar el mejor formato de almacenamiento con SpMV en GPU que utilizan CNN. tan bien se adaptan a diferentes dominios de aplicación o plataformas de
Es importante tener en cuenta que el problema a tratar es altamente desequilibrado, con hardware. Algunos de ellos solo son adecuados para matrices con una
una relación de tamaño de muestra entre las clases más pequeñas y más grandes de 1: estructura particular. Por ejemplo, matrices diagonales (DIA) o matrices que
160. Se han considerado seis formatos de almacenamiento diferentes. Nuestro método contienen pequeñas subestructuras de bloques densos (BELLPACK [9]).
genera imágenes a partir del patrón de dispersión de las matrices. Cada píxel en esas En este artículo, seleccionamos formatos de almacenamiento que son
imágenes representa una submatriz, cuyo color RGB se usa para codificar alguna apropiados para matrices que provienen de diferentes problemas reales
propiedad o característica de la matriz correspondiente. De esta manera, los conjuntos pero que también son eficientes para cálculos de matriz dispersos. En
de datos producidos pueden entrenar con éxito una CNN. Este enfoque se ha aplicado particular, 1 biblioteca (ver Figura 1 ):
con éxito a una tarea de clasificación más simple con solo tres clases y un conjunto de
datos equilibrado [3]. Las principales contribuciones de este trabajo son las siguientes:

• Fila dispersa comprimida (CSR): es una representación de matriz dispersa


• Hasta donde sabemos, este documento es el primero en tratar el problema del popular y de uso general. La matriz se almacena utilizando tres matrices:
desequilibrio de clase en el contexto de la selección automática del mejor formato la primera almacena los valores distintos de cero, la segunda almacena
de almacenamiento para matrices dispersas. Se han estudiado técnicas de los índices de columna correspondientes y la última almacena los
muestreo y métodos sensibles al costo para superar específicamente los problemas punteros al comienzo de cada fila.
relacionados con la capacitación de los clasificadores utilizando datos

desequilibrados. • ELLPACK (ELL): para un norte × metro matriz con un máximo de k nonzeros
por fila, este formato almacena los nonzeros en un denso norte × k matriz,
• Para validar nuestra propuesta, hemos generado un conjunto de datos que con otra misma matriz dimensional para almacenar el índice de columna de
contiene más de 10,000 matrices dispersas. De esta manera, las matrices cada elemento. Filas cuyo número de nonzeros es menor que k están
representan una amplia gama de características y patrones de dispersión. Este rellenos con ceros. ELL es eficiente si k no es sustancialmente diferente del
conjunto de datos se basa en matrices incluidas en la colección de matrices número promedio de nonzeros por fila.
SuiteSparse [6], que provienen de una variedad de aplicaciones reales.

• Híbrido (HYB): este formato combina la eficiencia de cálculo de ELL con la


• Aunque nuestra metodología es capaz de generar imágenes que simplicidad y generalidad de COO (que almacena explícitamente los índices de
pueden entrenar con éxito una red estándar como AlexNet [7], vamos fila y columna). La mayoría de los nonzeros se almacenan en formato ELL,
un paso más allá al presentar SpNet, una nueva arquitectura de red mientras que las filas con un número considerablemente diferente de entradas
simplificada que puede vencer a AlexNet en términos de clasificación y se almacenan en formato COO.
rendimiento de SpMV.
• Fila dispersa comprimida bloqueada (BSR): se puede considerar una versión
• El nuevo método se evalúa considerando dos GPU diferentes. Selecciona el bloqueada del formato CSR. En lugar de almacenar los nonzeros de forma
mejor formato de almacenamiento el 92.8% del tiempo, obteniendo el 98.3% independiente, se utilizan submatrices densas (bloques) de forma fija. Se
del rendimiento más alto disponible de SpMV. requieren tres matrices para almacenar las entradas de thematrix enBSR. La
primera matriz almacena los índices de columna de los primeros elementos.
• Se proporciona una comparación con varios métodos de clasificación de
vanguardia, que muestran los beneficios de nuestra propuesta.
1https: //developer.nvidia.com/cusparse

82378 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

FIGURA 1. Un ejemplo de formatos de almacenamiento de matriz dispersa CSR, ELL y BSR.

De todos los bloques. La matriz de punteros de fila apunta al comienzo de cada capa de convolución, generando múltiples mapas de activación. Es común
fila de bloque en la matriz de columnas. Finalmente, los elementos de cada bloque aplicar una función de activación no lineal después de cada operación de
se almacenan contiguamente en la matriz de valores. convolución. La ReLU (unidad lineal rectificada) es la función de activación
más utilizada en redes neuronales. Reemplaza todos los valores de píxeles
Además, hemos incluido un nuevo formato llamado CSR5 [11] que muestra un negativos en el mapa de características por cero. Para reducir la
buen comportamiento en términos de rendimiento tanto para matrices regulares dimensionalidad de los mapas de características, también es habitual
como irregulares en varias plataformas de hardware como multinúcleos, GPU e insertar una capa de agrupación entre capas sucesivas de convolución +
Intel Xeon Phi. Este formato extiende el formato CSR, dejando sin cambios uno de ReLU. La operación de agrupación disminuye la cantidad de parámetros y
los tres arreglos de CSR. Almacena las otras dos matrices en un orden de cómputo en la red mientras retiene la información más importante.
transposición de mosaico in situ y agrega dos estructuras de datos adicionales que Finalmente, las capas de clasificación consisten en una o más capas
contienen información auxiliar. completamente conectadas al final de la arquitectura para producir puntajes
de clase.

B. REDES NEURALES CONVOLUCIONALES


Las CNN son un tipo de redes neuronales. Sus características los hacen especialmente
adecuados para la clasificación de imágenes. Un CNN pasa la imagen de entrada a Se han propuesto muchas arquitecturas CNN, algunas de las más
través de una serie de capas que aprenden progresivamente las características de bajo populares son LeNet [12], AlexNet [7], GoogLeNet [13], VGGNet [14] y
y alto nivel de la imagen, estas últimas utilizadas para la clasificación. Las capas en ResNet [15].
CNN se pueden clasificar en tres categorías: capas de entrada, capas de extracción de Durante el proceso de capacitación, la CNN ajusta automáticamente los
características y capas de clasificación. parámetros de la red. Primero, todos los pesos y parámetros del filtro se
inicializan (una práctica común es la inicialización aleatoria). Luego, la red
Las capas de entrada cargan y almacenan los datos de entrada (imagen sin toma una imagen de entrada de entrenamiento (imagen de entrada
procesar) para procesar en la red. Estos datos de entrada especifican varias etiquetada) y la propaga hacia adelante a través de la red a lo largo de las
características de la imagen: ancho, alto y número de canales. Las capas de capas de extracción de características y las capas completamente
extracción de características realizan varias operaciones consecutivas: conectadas, obteniendo una predicción (probabilidad de que la imagen
convolución, activación no lineal y agrupación. El objetivo principal de una capa de pertenezca a cada clase). Un error de predicción se calcula mediante una
convolución es extraer características de la imagen de entrada. Podemos pensar función de pérdida que compara la salida de la red y la salida correcta. El
en la convolución como deslizar una pequeña ventana (fi ltro) a través de la imagen proceso de entrenamiento, mediante la propagación hacia atrás, ajusta y
de entrada y, en cada ubicación (campo receptivo), calcular la multiplicación actualiza los parámetros de la red de forma iterativa para minimizar el error
matricial por elementos entre los pesos del fi ltro y el campo receptivo y luego general en cada entrada de entrenamiento. Todo el conjunto de datos de
resumir todos los valores . Como resultado, obtenemos un mapa de activación 2D; imagen se pasa hacia adelante y hacia atrás durante un número
el filtro activa un tipo específico de v yo Sual característica de la imagen, como determinado de veces (número de épocas). Tenga en cuenta que el
bordes, curvas, etc. Se pueden usar varios fi ltros en el mismo número de épocas,

VOLUMEN 7, 2019 82379


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

Otros parámetros, como el número de fi ltros, el tamaño de los fi ltros, la arquitectura que nuestra propuesta supera a ambos trabajos en términos de precisión y
de la red, etc., no cambian durante el proceso de capacitación. rendimiento, incluso si se enfrentan a un problema de clasificación con un número
menor de clases. Por otro lado, los mejores resultados en ambos trabajos se
obtuvieron utilizando información de más de tres características matriciales para
C. MÉTODOS PARA ABORDAR EL DESEQUILIBRIO capacitar a los clasificadores. Más recientemente, los investigadores abordan el
Un problema común en las aplicaciones de aprendizaje profundo es que algunas clases problema de clasificación de matriz dispersa utilizando redes neuronales
tienen un número significativamente mayor de ejemplos en el conjunto de capacitación que convolucionales [4]. En ese trabajo se estudiaron varias representaciones
otras clases. Esto se conoce como el matriciales para entrenar las redes. Sus hallazgos señalan que la mejor solución es
desequilibrio de clase problema. Los métodos para abordar el desequilibrio de los modelos un histograma capaz de capturar la distribución espacial de los nonzeros en la
clásicos de aprendizaje automático se han estudiado durante muchos años [5], [16], matriz. Esta representación conduce a la creación de un ad hoc CNN arquitectura. A
mientras que los trabajos recientes se centran principalmente en las CNN [17]. Esos diferencia de nuestro método, no aprovechan los canales de color de las imágenes
métodos se pueden dividir en dos categorías principales: técnicas de muestreo y métodos para codificar información relevante sobre la matriz considerada. Debemos resaltar
sensibles al costo. Los métodos híbridos intentan combinar esas dos categorías. que ninguno de los trabajos comentados anteriormente ha abordado un problema de
desequilibrio de clase.
El muestreo opera en los datos en sí mismos con el objetivo de proporcionar una
distribución de clase equilibrada para que funcionen los algoritmos de entrenamiento
estándar. Los métodos más importantes que pertenecen a esta categoría son el Otros autores aplican técnicas de aprendizaje de máquinas considerando solo los
sobremuestreo y el submuestreo. La versión básica de sobremuestreo simplemente procesadores multinúcleo como plataforma objetivo [31]. Finalmente, en [2] se introdujo
replica muestras seleccionadas al azar de clases minoritarias, y las agrega al conjunto un mecanismo basado en el aprendizaje profundo para elegir la implementación de
de datos original. Se ha demostrado que el sobremuestreo es efectivo, pero puede código SpMV más eficiente tanto para CPU como para GPU. Aunque es un enfoque
conducir a un sobreajuste [18]. Este método se ha aplicado con éxito en el contexto conceptualmente interesante, sus resultados de rendimiento no son competitivos con
del aprendizaje profundo [19], [20]. Por el contrario, los métodos de submuestreo algunas de las metodologías de vanguardia mencionadas anteriormente.
eliminan aleatoriamente un cierto número de instancias de la clase mayoritaria para
lograr un conjunto de datos equilibrado [5]. Una cuestión importante de este método
es que puede perder información importante al descartar una parte de los datos III. METODOLOGÍA DE CLASIFICACIÓN
disponibles. Esta sección resume la metodología para seleccionar el formato de mejor rendimiento
para una matriz dispersa particular con el objetivo de maximizar su rendimiento de
SpMV [3]. Figura 2 muestra un esquema con las diferentes etapas de nuestro enfoque.
Un enfoque diferente para lidiar con el problema del desequilibrio de clase es el Suponemos que está disponible un gran conjunto de matrices dispersas que provienen
aprendizaje sensible al costo. En lugar de crear conjuntos de datos equilibrados a través de de diferentes dominios de aplicación y que representan una variedad de patrones de
diferentes estrategias de muestreo, el aprendizaje sensible al costo aborda el problema del dispersión. Este conjunto de datos es la entrada de las siguientes fases:
aprendizaje desequilibrado mediante el uso de diferentes matrices de costos que describen SpMVbenchmarking y generación de imágenes. El objetivo de la primera etapa es
los costos para clasificar erróneamente cualquier ejemplo de datos en particular. Por ejemplo, evaluar para todas las matrices del conjunto de datos el rendimiento del kernel SpMV
la aplicación de una pena más alta para las muestras de clase minoritaria [21]. Otros considerando diferentes formatos de almacenamiento. El resultado es el mejor formato
enfoques sensibles al costo proponen nuevas funciones de pérdida ponderada para dar más en términos de rendimiento para cada matriz. Ese formato asocia una etiqueta (clase) a
énfasis a las clases minoritarias [21] - [24]. A diferencia de los métodos anteriores, otras cada matriz en el conjunto de datos, que se utilizará más tarde como verdad
soluciones abordan el desequilibrio que mueve la sensibilidad al costo a la fase de inferencia fundamental en la fase de capacitación de CNN. Por lo tanto, hay tantas clases como
[25], [26]. formatos de almacenamiento. Vale la pena mencionar que hemos considerado las GPU
como plataformas de destino para construir la información de verdad básica, pero
nuestra metodología es completamente agnóstica con respecto a la arquitectura
D. CLASIFICACIÓN DE LA MATRIZ DE REPUESTO paralela subyacente. Cambiar a un sistema diferente solo significa ejecutar la fase de
Muchos trabajos se ocupan de la identificación del formato de almacenamiento óptimo evaluación comparativa en la plataforma objetivo correspondiente para obtener la nueva
para matrices dispersas en GPU utilizando modelos analíticos [27] - [29]. Los modelos información de verdad sobre el terreno.
tienden a mostrar una buena precisión, pero generalmente se evalúan en pequeños
conjuntos de datos. Otros autores optan por utilizar enfoques tradicionales de aprendizaje
automático, pero solo unos pocos consideran las GPU como sistemas de destino. Por
ejemplo, un enfoque consiste en construir un árbol de decisión basado en varias Construir el conjunto de datos de imagen a partir de las matrices dispersas de entrada puede

características de la matriz con el objetivo de elegir el formato de almacenamiento con considerarse la fase más importante de nuestro método. En un enfoque ingenuo, el patrón de

mejor rendimiento [1]. Los autores informan una precisión global de hasta el 84% con el dispersión de un norte × metro matriz puede verse como un norte × metro imagen en blanco y

95% del rendimiento máximo de SpMV alcanzable. En otro trabajo, la tarea de negro, donde los píxeles blancos corresponden a elementos distintos de cero y los píxeles

clasificación se aborda utilizando máquinas de vectores de soporte [30]. Sus negros representan ceros. En cualquier caso, esta técnica simple no es suficiente para construir

clasificadores demuestran una precisión en el intervalo 73-88.5%, mejorando el un conjunto de datos de imagen válido, ya que los CNN requieren imágenes de entrada de un

rendimiento promedio de SpMV a un máximo de 98%. Vale la pena señalar tamaño fijo. Como consecuencia, las matrices deberían reducirse al mismo tamaño. El siguiente

procedimiento explica cómo

82380 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

FIGURA 2. Diferentes etapas de la metodología de clasificación.

para hacerlo. Supongamos que, por simplicidad, un cuadrado norte × norte un color RGB asociado diferente. El color de estos píxeles es siempre el mismo, cuyo
matriz debe escalarse a una pags × pags matriz, siendo n> pags. La matriz original se divide en pags valor para cada canal RGB está dentro del intervalo [1, 255]. Las métricas deben

× pags submatrices Para construir el nuevo pags × pags scaledmatrix, insertamos un valor normalizarse para ajustarse a ese intervalo. Tenga en cuenta que es posible utilizar
distinto de cero en la posición ( yo, j) si hay, al menos, un valor distinto de cero en el uno, dos o tres canales de color para incluir la información de la matriz. Cuando no
correspondiente ( yo, j) se usa un canal, su valor para todos los píxeles de la imagen es 0.
submatriz Las submatrices vacías se representan en la matriz escalada como valores
cero. Figura 3 (a) ilustra este procedimiento mostrando un 113 × 113 imágenes en Nos referimos a R X sol y si z para especificar esa métrica x, y y z se usaron para
blanco y negro generadas a partir de un 10, 848 × 10, 848 matriz dispersa. calcular los valores de píxeles de los canales rojo, verde y azul, respectivamente.
Existen múltiples combinaciones de número de canales y métricas que se pueden
El método anterior permite generar fácilmente un conjunto de datos de imágenes utilizar en la fase de generación del conjunto de datos de imagen. En este trabajo
binarias que se ajusta a una CNN. Sin embargo, demostramos que los conjuntos de solo nos centramos en los más relevantes en términos de rendimiento. En particular,
datos de ese tipo no proporcionan resultados de clasificación satisfactorios [3]. los conjuntos de datos se generaron utilizando las siguientes configuraciones: R 1 sol 3
Debemos tener en cuenta que la reducción de una matriz dispersa simplifica la si 4 4 y R 0 0 sol 1 si 4) Figura 3 contiene varias imágenes generadas a partir de la misma
apariencia de su patrón de dispersión, causando una pérdida en la información matriz de entrada utilizando diferentes métricas para colorear los píxeles. Cifras 3 (si),
proporcionada a la CNN en la fase de entrenamiento. Un solo píxel en la imagen 3 (c) y 3 (d) use solo un canal de color para codificar el número promedio de
representa una submatriz en la matriz original. Por ejemplo, un píxel en la figura 3 (a) nonzeros por fila (rojo), la densidad de la matriz (verde) y el número máximo de
corresponde a un 96 × 96 submatriz (es decir, 10.848 / 113). nonzeros en una fila de la matriz (azul), respectivamente. Figura 3 (e) combina los
tres canales de color de las imágenes anteriores en una sola imagen. Debemos
resaltar que la asignación de métricas a canales no afecta los resultados de la fase
Para abordar ese problema, es necesario proporcionar información adicional a la de capacitación de CNN. Significa que es irrelevante considerar, por ejemplo, R 1 sol 2 si
CNN con el objetivo de mejorar el proceso de aprendizaje. Con este objetivo en 3o R 3 sol 1 si 2)
mente, aprovecharemos los canales RGB de la imagen para codificar la información
relacionada con algunas características de la matriz dispersa original. En particular,
hemos considerado las siguientes métricas globales sobre las matrices (los
números se usan como identificadores de la métrica): Siguiendo el esquema de la figura 2 , la siguiente etapa en nuestro
El método implica la formación de la red. Para hacerlo, es necesario alimentar a la CNN con

(0) Tamaño de matriz ( norte): número de filas y columnas de la un conjunto de imágenes etiquetadas de acuerdo con el formato de almacenamiento de mejor

matriz. rendimiento (clase de la matriz). Estos datos se generaron en las fases anteriores. En

(1) Número promedio de nonzeros por fila de la matriz particular, las etiquetas provienen de la evaluación comparativa de los diferentes núcleos de

( nnz fila). SpMV, mientras que el conjunto de datos de imagen es el resultado de la etapa de generación

(2) Desviación estándar del número de nonzeros por fila de imágenes. Tenga en cuenta que el conjunto de datos de imagen se divide en conjuntos de

de la matriz ( σ fila). entrenamiento y prueba. De esta manera, el proceso de entrenamiento solo toma en

(3) Densidad matricial ( ρ): calculado como la relación entre el consideración aquellas imágenes que pertenecen al conjunto de entrenamiento. Las imágenes

número de nonzeros y el número de filas multiplicado por el número en el conjunto de prueba son necesarias para evaluar la precisión de la predicción del modelo

de columnas. de clasificación final elegido. Hemos utilizado un validación cruzada método, que generalmente

(4) Número máximo de nonzeros en una fila de la matriz se considera el mejor método tanto para la selección como para la evaluación del modelo. En

( max fila). particular, hemos optado por un validación cruzada k-fold. Este método se usa cuando algún

En nuestra implementación, los píxeles correspondientes a submatrices vacías son hiperparámetro

siempre negros, es decir, su color RGB es (0, 0, 0). Solo aquellos píxeles que
representan submatrices no vacías tienen

VOLUMEN 7, 2019 82381


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

FIGURA 3. Imágenes de 113 × 113 píxeles generados a partir de un 10, 848 × 10, 848 matriz dispersa: (a) patrón / binario, (b) R1, (c) G3, (d) B4 y (e) R1G3B4.

de la red tiene que ser estimado. En nuestro caso, el hiperparámetro de interés es el TABLA 1. Características principales de las GPU NVIDIA utilizadas en las pruebas.

número óptimo de épocas de entrenamiento. Este método de validación divide el conjunto

de entrenamiento en k pliegues El primer pliegue se guarda para la prueba (conocido como conjunto

de validación)
y el modelo se entrena en el resto k - 1 pliegues Este proceso se repite. k veces de
tal manera que cada vez que se utiliza un pliegue diferente para la validación.
Después de cada época, se registra la precisión global en el conjunto de
validación correspondiente. Posteriormente, se calcula la precisión promedio del
conjunto de validación (a través de k pliegues) para cada número de épocas. El
número de épocas elegido será el que maximice este valor. Finalmente, la red se
entrena utilizando como entrada el conjunto completo de entrenamiento hasta
alcanzar el número óptimo de iteraciones.

formato [11]. De esta manera, experimentamos con 6 formatos de almacenamiento.


El CNN entrenado resultante será el utilizado para llevar a cabo la predicción del

formato de almacenamiento. Las imágenes en el conjunto de prueba, que no se utilizaron


La fase de entrenamiento se realizó utilizando la GPU más potente
en el proceso de capacitación, se utilizan para validar la precisión del clasificador.
(QUADRO) para reducir los tiempos de entrenamiento. Hemos aprovechado el
sistema de capacitación NVIDIADeep LearningGPU 2 ( DIGITS) que permite
diseñar, entrenar y visualizar CNN para la clasificación de imágenes usando
IV. CONFIGURACIÓN EXPERIMENTAL
Caffe 3 como marco de aprendizaje profundo. Algunas de las arquitecturas más
A. PLATAFORMAS Y SOFTWARE DE HARDWARE
populares, como AlexNet y GoogLeNet, están predefinidas y listas para usar en
Dado que no existe un formato de almacenamiento predominante para matrices
la plataforma DIGITS.
dispersas en GPU, hemos considerado esos sistemas como plataforma objetivo para
evaluar nuestra propuesta. Sin embargo, nuestra metodología de clasificación podría
aplicarse fácilmente a otras arquitecturas paralelas, como CPU o aceleradores
B. BASE DE DATOS DE MATRIZ DE REPUESTO
multinúcleo como Intel Xeon Phi. Las características más importantes de las GPU
Las redes profundas exigen grandes conjuntos de datos para ser eficaces. En nuestro
NVIDIA utilizadas en las pruebas se muestran en la Tabla 1 . De ahora en adelante,
caso, el conjunto de datos debe incluir matrices dispersas provenientes de diferentes
utilizaremos TITANX y QUADRO para referirnos a ambos modelos de GPU.
dominios de aplicación con el objetivo de cubrir un amplio espectro de características y
estructuras de dispersión. Para cumplir ese requisito, hemos creado un conjunto de
datos que consta de más de 10k matrices dispersas, que se generó aplicando varias
La fase de evaluación comparativa se llevó a cabo utilizando los núcleos
transformaciones, como el recorte a 812 matrices cuadradas
SpMV incluidos en la biblioteca NVIDIA cuSPARSE (CUDA toolkit v8). En
particular, hemos considerado los formatos de almacenamiento CSR, HYB, ELL,
BSR y COO. Además, hemos incluido resultados para la implementación de 2https: //developer.nvidia.com/digits 3http:

CUDA de CSR5 //caffe.berkeleyvision.org

82382 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

FIGURA 4. Características de las matrices dispersas en el conjunto de datos (valores ordenados en orden ascendente, Y eje en escala logarítmica).

de la colección de matriz SuiteSparse [6]. Un procedimiento similar se TABLA 2. Distribución de las clases en el conjunto de datos de la matriz.

realizó en [4].
Figura 4 4 muestra las características principales, que corresponden a las métricas
globales enumeradas en la Sección III , para todas las matrices en el conjunto de datos.
Los valores en los gráficos se ordenan en orden ascendente. También se muestran
valores mínimos, máximos, medios y medianos. Se puede observar que los rangos para
cada característica de matriz son amplios, lo que revela la gran diversidad de matrices
incluidas en el conjunto de datos.

C. REFERENCIA DE SPMV Y GENERACIÓN DE BASES DE de 1,000 operaciones de SpMV. BSR usa 4 × 4 tamaños de bloque. Cada matriz se
DATOS DE IMÁGENES etiqueta de acuerdo con el formato de mayor rendimiento. Mesa 2 muestra la
Las matrices deben etiquetarse atendiendo a su mejor formato de almacenamiento distribución de las clases para todas las matrices en el conjunto de datos. El
(clase) antes de entrenar una red. Este objetivo se logra en la fase de evaluación porcentaje de matrices pertenecientes a cada clase se muestra entre paréntesis.
comparativa de SpMV. Se realizaron experimentos para medir el rendimiento del Tenga en cuenta que COO nunca supera los otros formatos de almacenamiento en
kernel SpMV de precisión simple utilizando 6 formatos de almacenamiento (COO, ambas GPU, similar al comportamiento observado en [4]. Según la tabla,
CSR, HYB, ELL, BSR y CSR5) en las GPU objetivo. Para cada matriz y formato, el enfrentamos un problema de clasificación desequilibrado. El formato HYB
valor de rendimiento se calculó como el promedio representa solo el 0.3% de los ejemplos en el

VOLUMEN 7, 2019 82383


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

conjunto de datos (texto azul en la tabla), mientras que más del 51% de las matrices D. REDES Y PROCESO DE FORMACIÓN
pertenecen a la clase CSR5 (resaltada en rojo). En otras palabras, la frecuencia de Hemos analizado y estudiado dos CNN diferentes para abordar la tarea de
la clase HYB es 160 × menos que el obtenido para CSR5. Se ha demostrado que el clasificación: AlexNet [7] y SpNet. AlexNet consta de 8 capas: 5 son capas
desequilibrio de clase puede tener un efecto perjudicial en la capacitación de los convolucionales y otras 3 son capas completamente conectadas (ver Figura 6 6 (una)).
clasificadores, por lo que es necesario aplicar métodos para abordar el desequilibrio Esta red tiene unos 60 millones de parámetros libres. Aunque AlexNet es
(consulte la Sección II-C ) En la siguiente sección, compararemos varios enfoques relativamente simple con respecto a otras redes estándar, demostramos en [3]
para tratar ese problema en el contexto de la selección automática del mejor formato que utilizando nuestra metodología puede clasificar con éxito matrices dispersas
de almacenamiento para matrices dispersas. considerando un conjunto de datos equilibrado y tres formatos de
almacenamiento (clases). En este artículo vamos un paso más allá al presentar
SpNet, una nueva versión simplificada de AlexNet que puede lograr mejores
resultados que la red original considerando un escenario de clasificación más
complejo (mayor número de clases y un conjunto de datos desequilibrado).
Figura 6 6 (b) muestra la arquitectura de SpNet. Consta de solo cuatro capas de
convolución, correspondientes a AlexNet conv1, conv2, conv3 y conv4 capas.
Tenga en cuenta que

conv3 y conv4 en SpNet hay un número reducido de filtros, 256. Además, SpNet
tiene solo dos capas completamente conectadas. Como consecuencia, el número
de parámetros libres se reduce notablemente.

Para entrenar las redes, el 80% de las matrices en el conjunto de datos se asignan
al conjunto de entrenamiento, mientras que el 20% restante forma el conjunto de
prueba. Como se explicó en la Sección III , hemos usado un k-fold validación cruzada Método
para descubrir el número óptimo de épocas de entrenamiento. Implica la división del
conjunto de entrenamiento en 5 pliegues. Hemos encontrado que el número óptimo de
épocas va de 30 (R 1 sol 3 si 4 4 conjunto de datos, etiquetas SpNet y TITANX) a 42 (R 1 sol 3
si 4 4 conjunto de datos, etiquetas AlexNet y QUADRO). Debemos resaltar que otros
hiperparámetros toman los valores predeterminados proporcionados por la plataforma
FIGURA 5. Aceleración obtenida por el mejor formato de almacenamiento con respecto al peor para todas las
matrices en el conjunto de datos ( Y eje en escala logarítmica). DIGITS.

Por otro lado, elegir un formato de almacenamiento inadecuado tendrá un


impacto negativo en el rendimiento de SpMV. Este fenómeno se ilustra en la figura 5 Después de la validación, las redes AlexNet y SpNet se entrenan utilizando todo el
5 midiendo la aceleración entre los mejores y los peores formatos para todas las conjunto de entrenamiento hasta alcanzar el número óptimo de épocas. Hemos
matrices en el conjunto de datos. El diagrama de caja muestra que para el terapeuta observado que los tiempos de entrenamiento varían de 492 segundos (R 1 sol 3 si 4 4 conjunto
QUADRO, las aceleraciones del primer cuartil y del tercer cuartil son 4.6 ×, de datos, etiquetas SpNet y TITANX) a 666 segundos (R 1 sol 3 si 4 4 conjunto de datos,
etiquetas AlexNet y QUADRO).
3,3 × y 7 ×, respectivamente. Para TITANX las aceleraciones correspondientes son
4.8 ×, 3,3 × y 7.2 ×. Significa que, por ejemplo, seleccionar el mejor formato para la Dado que la clase de una matriz depende de la GPU objetivo donde se
mitad de las matrices en TITANX aumenta al menos 4.8 × su rendimiento SpMV. evalúa la operación de SpMV, las redes deben estar capacitadas para cada
Vale la pena señalar que, para algunas matrices, una mala elección en el formato es plataforma en particular. Sin embargo, hemos demostrado previamente que
crítica, ya que causa grandes ralentizaciones. Esos casos se muestran como puntos usar nuestra metodología no es necesario para llevar a cabo el proceso de
en los diagramas de caja. capacitación desde cero [3]. La idea es considerar un modelo pre-entrenado
como punto de partida del proceso de capacitación. Este modelo
Antes de entrenar el CNN también es necesario generar las imágenes de las pre-entrenado corresponde a una CNN entrenada para una GPU diferente. De
matrices dispersas. Como se explicó en la Sección III , el color de los píxeles esta manera, la red hereda muchos parámetros que capturaron
corresponde a diferentes características de las matrices (ver Figura 4 4 ) Sus características y características importantes de los formatos de
valores deben estar en el rango de 1-255, por lo que es necesario un proceso de almacenamiento y matrices considerados en el conjunto de datos. Además,
normalización. Los detalles sobre ese procedimiento se proporcionan en [3]. debemos tener en cuenta que las clases de matrices difieren entre las GPU,
Existen varias combinaciones de canales y métricas, pero en este trabajo solo pero no para todo el conjunto de datos. Como consecuencia, se pueden
consideramos aquellos que logran los mejores resultados de rendimiento: R 1 sol 3 si 4 obtener resultados de muy buena precisión utilizando menos datos de
4y R 0 0 sol 1 si 4) Los conjuntos de datos consisten en 256 × 256 imágenes, que entrenamiento y, al mismo tiempo, los tiempos de entrenamiento disminuyen.
corresponde al tamaño de entrada para la red AlexNet.

82384 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

FIGURA 6. Capas de las redes consideradas (número y tamaño de los filtros en texto azul): (a) AlexNet y (b) SpNet.

TABLA 3. Precisión de predicción de las redes capacitadas teniendo en cuenta los dos conjuntos de datos de imágenes en las GPU QUADRO (arriba) y TITANX (abajo). Mejores resultados destacados para cada formato.

V. ANÁLISIS DE DESEMPEÑO matrices como clase UNA, dónde PAGS UNA se ha clasificado correctamente (verdadero positivo).

A. PRECISIÓN DE PREDICCIÓN Luego, precisión y recuperación para clase UNA se puede calcular como PAGS UNA/ C UNA y PAGS UNA/ T UNA

La evaluación de las redes capacitadas para cada conjunto de datos y GPU se llevó a , respectivamente. La puntuación F1 tiene en cuenta tanto la precisión como la recuperación y se
calcula como la media armónica de ambas métricas: 2 × precisión × recordar
cabo utilizando solo el conjunto de prueba. Junto con la precisión global (es decir, el
porcentaje general de matrices clasificadas correctas), hemos incluido tres métricas
precisión + recuperación.
adicionales para comprender mejor qué tan bien se está desempeñando el Mesa 3 muestra la precisión global, precisión, recuperación y puntaje F1 de los
clasificador: clasificadores para todos los conjuntos de datos en ambas GPU considerando las
precisión, recordar y Puntuación F1. La precisión es la fracción de predicciones redes AlexNet y SpNet. Según los resultados, se pueden hacer varias observaciones.
positivas hechas por el clasificador que son correctas. Recordemos, también Primero, se obtuvieron precisiones notables utilizando nuestra metodología para todos

conocido como sensibilidad, cuantifica qué tan bien el modelo evita falsos negativos. los casos, que van desde 90.9% a 92.8%. Los mejores resultados en general

Asumamos que hay T UNA corresponden a la R 0 0 sol 1 si 4 4 conjunto de datos, que se generó
matrices de clase UNA en el conjunto de datos. Nuestra red clasifica C UNA

VOLUMEN 7, 2019 82385


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

utilizando como métricas el tamaño de la matriz ( norte), el número promedio de mejor configuración también en términos de las métricas de clasificación (ver
nonzeros por fila ( nnz fila) y el número máximo de nonzeros en una fila de la matriz ( max Tabla 3 ) Sin embargo, otras configuraciones con precisiones más bajas también
fila). funcionan muy bien. Por ejemplo, la con fi guración usando R 1 sol 3 si 4 4 Las
Segundo, SpNet claramente supera a AlexNet cuando considera R 0 0 sol 1 si 4 4 imágenes,
mientras que con R 1 sol 3 si 4 4 El rendimiento es en varios casos más bajo. Los imágenes y SpNet en la GPU QUADRO logran la precisión global más baja
resultados de AlexNet para la clase minoritaria HYB son muy pobres, mientras que (90.9%), pero alcanza el 98% del rendimiento máximo posible de SpMV. Por lo
SpNet puede alcanzar valores aceptables en la GPU QUADRO (el puntaje F1 es tanto, considerando solo las métricas de clasificación en la Tabla 3
0.600). Tenga en cuenta que las matrices HYB representan solo el 0.3% del conjunto
de datos (ver Tabla 2 ) En cualquier caso, discutiremos varios enfoques para mejorar el no es suficiente para validar un método de clasificación en este contexto porque
rendimiento de clasificación de las clases minoritarias en la siguiente sección. oculta información importante sobre el rendimiento. De esta manera, el análisis
Podemos concluir que SpNet usando R 0 0 sol 1 si 4 4 Las imágenes son claramente la anterior también tiene una gran importancia.
mejor opción en ambas GPU, ya que solo en algunos casos sus valores de precisión,
recuperación y F1 no son los más altos entre todos. Además, se obtuvieron las
máximas precisiones globales utilizando esta configuración. También queremos B. CÓMO ABORDAR EL DESEQUILIBRIO DE CLASE

destacar que con respecto a las clases mayoritarias (BSR y CSR5), la mayoría de las Existen varios enfoques para tratar el problema del desequilibrio de clase (consulte
métricas de rendimiento están por encima de 0,95. Finalmente, se puede observar la Sección II-C ) Hemos considerado tres métodos diferentes: sobremuestreo,
una clasificación ligeramente mejor cuando se entrena a las CNN para TITANX. submuestreo y aprendizaje sensible al costo utilizando una función de pérdida
ponderada. La primera técnica replica ejemplos de clases minoritarias para construir
un conjunto de datos más equilibrado. Posteriormente, la red se entrena utilizando
el nuevo conjunto de datos. Hay muchas formas posibles de replicar las muestras.
Después de muchos experimentos, hemos encontrado que la mejor configuración
replica 2, 4 y 10 veces los ejemplos de entrenamiento correspondientes a las clases
CSR, ELL e HYB, respectivamente.

El segundo método es el submuestreo, que elimina aleatoriamente ejemplos de las


clases mayoritarias para equilibrar el conjunto de datos. Se llevaron a cabo varios
experimentos para encontrar la configuración óptima. Sin embargo, los resultados de
rendimiento obtenidos por esta técnica no fueron competitivos, por lo que no se
incluyen en el documento. El problema es relativamente obvio ya que eliminar
ejemplos de las clases de mayoría hace que el clasificador pierda conceptos
importantes relacionados con ellos [5]. Este hecho se amplía en nuestro caso porque
el conjunto de datos es relativamente pequeño con respecto a los conjuntos de datos
clásicos de clasificación de imágenes que contienen millones de imágenes.

El último método analizado para abordar el desequilibrio de clase utiliza una función de

pérdida ponderada. De esta manera, es posible asignar diferentes costos para clasificar

erróneamente cualquier muestra de datos en particular. En particular, nuestra propuesta

pondera la tasa de error proporcionada por la capa de pérdida de entropía cruzada de la

red de acuerdo con la frecuencia de cada clase en el conjunto de datos. Se aplicó un

enfoque similar para clasificar las imágenes de malware en [23]. La pérdida de entropía

cruzada ponderada tiene la siguiente expresión (capa InfoGainLoss en Caffe) 4 4 :


FIGURA 7. Rendimiento normalizado de SpMV obtenido utilizando el formato de almacenamiento seleccionado
por los clasificadores.

Dado que el objetivo final de la tarea de clasificación es seleccionar el formato


con mejor rendimiento, es importante medir qué tan cerca del clasificador ideal están ∑METRO∑K
E=-1 H l norte, k Iniciar sesión(
pags n, k)
ˆ (1)
nuestras CNN capacitadas. De esta manera, obtuvimos el rendimiento de SpMV METRO
n=1 k=1
para todas las matrices en el conjunto de prueba usando el formato seleccionado
por cada clasificador. Los resultados normalizados para todas las configuraciones siendo METRO el tamaño del lote K es el número de clases l norte es la clase correcta de imagen norte,

analizadas se muestran en la Figura 7 7 de tal manera que 1 corresponda al mientras ˆ pags n, k es la probabilidad de imagen
rendimiento máximo alcanzable (es decir, elegir siempre el mejor formato). El norte pertenecer a clase k. H es un K × K matriz que contiene el peso o la
rendimiento promedio varía de 97.6% a 98.3%. Los mejores resultados generales en contribución a la pérdida de acuerdo con la clase correcta del ejemplo. Valores
ambas GPU se obtienen al considerar la red SpNet y R 0 0 sol 1 si 4 4 imágenes, que es más altos en H indicar más
el
4http: //caffe.berkeleyvision.org/tutorial/layers/infogainloss.html

82386 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

CUADRO 4. Precisión de predicción de las redes SpNet entrenadas considerando diferentes métodos para lidiar con el desequilibrio usando imágenes R0G1B4. Destacó aquellos valores que mejoran los resultados
correspondientes en la Tabla 3 .

CUADRO 5. Precisión de predicción de una técnica de vanguardia basada en la construcción de un árbol de decisión para la clasificación de matriz dispersa [1]. Entre paréntesis, diferencias en el rendimiento con respecto a nuestro
enfoque de sobremuestreo.

penalización por clasificación errónea. Nosotros definimos H como: el conjunto de datos obtiene un rendimiento normalizado promedio de 98.3%
(ver Figura 7 7 ) El mismo experimento se llevó a cabo considerando las técnicas
Si yo 6 = j
H = {H i, j = 0, (2) para lidiar con el desequilibrio de clase en ambas GPU. Los valores
H i, j = 1 - r yo, Si i = j correspondientes en el QUADROGPU fueron 98.4% y 98.3% cuando se utilizó
el enfoque de sobremuestreo y pérdida ponderada, respectivamente. En el
dónde r yo es la razón de ejemplos de clase yo en el conjunto de datos (relaciones en porcentaje que
TITANX, el rendimiento normalizado promedio fue del 98,3% en ambos casos.
se muestran en la Tabla 2 ) Tenga en cuenta que si H es la matriz de identidad, la pérdida ponderada
Por lo tanto, las técnicas para abordar el desequilibrio de clase, lejos de
se convierte en una pérdida de entropía cruzada estándar (también conocida como pérdida de
degradar el rendimiento, pueden acercarse al máximo rendimiento de SpMV
regresión logística multinomial).
alcanzable.

Mesa 4 4 muestra las métricas de clasificación obtenidas al aplicar


sobremuestreo y el enfoque de pérdida ponderada utilizando la mejor
configuración de la tabla 3 , que corresponde a entrenar la red SpNet utilizando C. COMPARACIÓN CON OTROS MÉTODOS DE CLASIFICACIÓN DE
el R 0 0 sol 1 si 4 4 conjunto de datos Los valores resaltados corresponden a mejoras ESTADO DE ARTE
en el recuerdo, la precisión, el puntaje F1 y la precisión con respecto al Hemos comparado nuestro enfoque con una técnica de vanguardia que predice
escenario en el que el problema de la clase de desequilibrio no se aborda automáticamente la mejor representación dispersa utilizando árboles de decisión
específicamente. Se observa un mejor comportamiento general, aumentando el [1]. Los árboles se basan en diferentes características (similares a las descritas en
rendimiento de al menos una métrica para todas las clases. Ambos métodos, el la Sección III ) de un conjunto de matrices de entrenamiento. Demuestran que su
sobremuestreo y el enfoque sensible al costo, obtienen resultados similares. El enfoque supera a los métodos anteriores en precisión de clasificación y
sobremuestreo hace un mejor trabajo al clasificar la clase minoritaria HYB. Por rendimiento de SpMV. Tenga en cuenta que este es un enfoque tradicional de
ejemplo, se alcanza un retiro de 0.714 en TITANX. Ambas técnicas aumentan el aprendizaje automático, donde no se necesitan imágenes.
rendimiento de clasificación del formato ELL, que corresponde solo al 4.9% de
las matrices en el conjunto de datos (ver Tabla 2 ) Por otro lado, el sobremuestreo
en la GPU QUADRO aumenta la precisión global hasta el 92,6%. En los otros Mesa 5 5 muestra las métricas de predicción obtenidas por el método del árbol de
casos, se observó una ligera reducción. decisión cuando se aplica a nuestro conjunto de datos. Los valores entre paréntesis son
las diferencias con respecto a nuestro enfoque de sobremuestreo, cuyos resultados se
muestran en la Tabla 4 4 . Se puede observar que nuestra propuesta claramente supera
el modelo de árbol de decisión. Es especialmente relevante el hecho de que, en general,
En la sección anterior medimos la diferencia entre el rendimiento de las diferencias entre ambos métodos aumentan para las clases minoritarias (formatos
SpMV obtenido al usar los formatos de almacenamiento seleccionados por CSR, ELL e HYB). Como consecuencia, las precisiones globales del modelo de árbol se

nuestros clasificadores y el rendimiento máximo alcanzable (es decir, elegir reducen al 81.7% y

siempre el mejor formato). Resultados al considerar SpNet y la R 0 0 sol 1 si 4 4


82.4% en las GPU QUADRO y TITANX, respectivamente.

VOLUMEN 7, 2019 82387


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

En un trabajo reciente, los autores abordaron la clasificación de matrices fueron estudiados. Se observó una mejora general importante en las métricas de
dispersas desde una perspectiva de aprendizaje profundo. Las matrices se clasificación al aplicar el sobremuestreo o un método sensible al costo basado en
representan a través de histogramas que modelan la distribución espacial de una función de pérdida ponderada, especialmente para las clases minoritarias.
nonzeros en la matriz. Esta representación requiere construir una arquitectura
CNN personalizada. Podemos destacar las siguientes diferencias con respecto a
nuestro enfoque: Referencias

[1] N. Sedaghati, T. Mu, L.-N. Pouchet, S. Parthasarathy y P. Sadayappan,


• También se ocupan de un problema de clasificación de seis formatos de '' Selección automática de representación de matriz dispersa en GPU '', en Proc. 29th ACM Int. Conf.

almacenamiento en una GPU (COO, CSR, HYB, ELL, BSR, CSR5), pero su conjunto Supercomputadora (ICS), Junio ​de 2015, págs. 99-108. [2] H. Cui, S. Hirasawa, H. Takizawa y H.
Kobayashi, '' Una selección de código
de datos no está muy desequilibrado. En nuestro caso, el formato HYB representa
mecanismo que utiliza el aprendizaje profundo '' en Proc. IEEE MCSOC, Septiembre de 2016, págs. 385–392.
solo el 0.3% de las matrices.

• Su conjunto de datos consta de 4.218 matrices, mientras que hemos considerado [3] JC Pichel y B. Pateiro-López, '' Un nuevo enfoque para la matriz dispersa
clasificación basada en técnicas de aprendizaje profundo '' en Proc. IEEE Int. Conf. Cluster Comput.
10.822. No se proporcionan detalles sobre las características de las matrices en su
(RACIMO), Septiembre de 2018, págs. 46–54. [4] Y. Zhao, J. Li, C. Liao y X. Shen, '' Cerrando la brecha
conjunto de datos. En nuestro caso, en la Figura se muestra un análisis para demostrar entre las profundidades
que nuestro conjunto de datos cubre un amplio espectro de características de la matriz. 4 aprendizaje y selección de formato de matriz dispersa '' en Proc. 23a ACMSIGPLAN Symp. Princ.
Pract. Programa Paralelo. (PPoPP), 2018, págs. 94-108.
4.
[5] H. Él y EA García, "Aprender de datos desequilibrados". IEEE Trans.
• Su metodología se evaluó solo considerando una GPU (TITANX). Knowl. Ing. De datos, vol. 21, no. 9, págs. 1263–1284, septiembre de 2009. [6] TA Davis e Y. Hu, ''
Colección de matriz dispersa de la Universidad de Florida

• Aunque los resultados no son directamente comparables (los conjuntos de ción '' ACM Trans. Matemáticas. Softw. vol. 38, no. 1, p. 1, 2011. [7] A. Krizhevsky, I.
Sutskever y GE Hinton, '' Clasificación de ImageNet
datos son diferentes), nuestra metodología logra un mayor rendimiento. En
con profundas redes neuronales convolucionales '' en Proc. NIPS vol. 1. 2012, págs. 1097–1105.
particular, los autores informan una precisión global del 90%, mientras que
nuestro método alcanza el 92.8% (sin abordar específicamente el problema del [8] D. Langr y P. Tvrdik, '' Criterios de evaluación para el almacenamiento de matriz dispersa
formatos '' IEEE Trans. Distrib. Paralela Syst. vol. 27, no. 2, págs. 428–440, febrero de 2016.
desequilibrio de clase).

[9] JW Choi, A. Singh y R.W. Vuduc, '' Autotuning basado en modelos de escaso
matriz-vector multiplicar en GPU, '' en Proc. 15 ° SIGPLAN ACM Symp. Princ. Pract.
Programa Paralelo. (PPoPP), 2010, pp. 115-126.
VI. CONCLUSIONES
[10] N. Bell y M. Garland, '' Multiplicador de matriz-vector disperso e fi ciente
La capacitación de las CNN para la clasificación mediante conjuntos de datos
ción en CUDA '', NVIDIA Corp., Santa Clara, CA, EE. UU., Tech. Rep. NVR-2008-004,
desequilibrados es una tarea difícil ya que se produce un sesgo inductivo hacia las diciembre de 2008.

clases mayoritarias, lo que resulta en un bajo rendimiento de reconocimiento de clase [11] W. Liu y B. Vinter, '' CSR5: un formato de almacenamiento eficiente para cross-
plataforma de multiplicación de matriz de vectores dispersos '' en Proc. 29th ACM Int. Conf.
minoritaria. En este trabajo tratamos un problema altamente desequilibrado en el
Supercomputadora (ICS), Junio ​de 2015, págs. 339-350. [12] Y. LeCun, L. Bottou, Y. Bengio y P. Haffner,
contexto de la selección automática del mejor formato de almacenamiento de SpMV "Aprendizaje basado en gradientes-

para matrices dispersas en GPU. Para superar los problemas causados ​por los datos ing aplicado al reconocimiento de documentos '' Proc. IEEE vol. 86, no. 11, págs. 2278–2324, noviembre
de 1998.
desequilibrados, realizamos contribuciones a diferentes niveles.
[13] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed, D. Anguelov, D. Erhan,
V. Vanhoucke y A. Rabinovich, "Profundizando en convoluciones", en Proc. IEEE Conf. Comput
Vis. Reconocimiento de patrones. (CVPR), Junio ​de 2015, págs. 1–9.

Utilizamos un método para generar los conjuntos de datos de imágenes que


[14] K. Simonyan y A. Zisserman, '' Redes convolucionales muy profundas para
considera el patrón de dispersión de las matrices como una imagen. Los píxeles en
reconocimiento de imágenes a gran escala, '' 2014, arXiv: 1409.1556. [ En línea]. Disponible:
las imágenes representan submatrices y sus códigos de color RGB son propiedad de https://arxiv.org/abs/1409.1556

una matriz global. Según nuestros experimentos, la mejor combinación de [15] K. He, X. Zhang, S. Ren y J. Sun, '' Aprendizaje residual profundo
para reconocimiento de imagen '' 2015, arXiv: 1512.03385. [ En línea]. Disponible:
características de la matriz corresponde al tamaño, el número promedio de nonzeros
https://arxiv.org/abs/1512.03385
por fila y el número máximo de nonzeros en una fila de la matriz. [16] N. Japkowicz y S. Stephen, "El problema del desequilibrio de clase: un sistema-
estudio temático '' Intell. Anal de datos, vol. 6, no. 5, págs. 429–449, octubre de 2002.

Aunque un CNN estándar como AlexNet entrenado usando nuestros conjuntos de


[17] M. Buda, A. Maki y MA Mazurowski, '' Un estudio sistemático de la
datos de imágenes logró resultados aceptables en términos de precisión de predicción, problema de desequilibrio de clases en redes neuronales convolucionales '' Neural Netw.,

presentamos una nueva red llamada SpNet. Esta red es una versión simplificada de vol. 106, págs. 249–259, octubre de 2017.

AlexNet con solo cuatro convoluciones y dos capas completamente conectadas. Los [18] NV Chawla, KW Bowyer, LO Hall yW. P. Kegelmeyer, '' SMOTE:
Técnica de sobremuestreo de minorías sintéticas '' J. Artif. Intell. Res. vol. 16, no. 1, págs. 321–357,
resultados experimentales demuestran que SpNet supera claramente a AlexNet,
2002.
alcanzando una precisión global de 92.8% y 98.3% del rendimiento más alto de SpMV [19] N. Jaccard, TW Rogers, EJ Morton y LD Griffin, '' Detección
entre los formatos considerados. Nuestros experimentos también muestran que de autos ocultos en imágenes complejas de rayos X de carga utilizando aprendizaje profundo ''

J. X-Ray Sci. Technol., vol. 25, no. 3, págs. 323–339, enero de 2017. [20] G. Levi y T. Hassner, ''
nuestro enfoque funciona mucho mejor que un método de clasificación de vanguardia
Clasificación de edad y género usando convolucional
basado en árboles de decisión. redes neuronales '' en Proc. IEEE Conf. Comput Vis. Reconocimiento de patrones. Talleres de trabajo, Junio ​de

2015, págs. 34–42.

[21] SH Khan, M. Hayat, M. Bennamoun, FA Sohel y R. Togneri, "Costo-


aprendizaje sensible de representaciones de características profundas a partir de datos desequilibrados ''
Finalmente, varios métodos para superar específicamente los problemas relacionados con la
IEEE Trans. Neural Netw. Aprender. Syst. vol. 29, no. 8, págs. 3573–3587, agosto de 2018.
capacitación de una CNN utilizando datos de desequilibrio

82388 VOLUMEN 7, 2019


JC Pichel, B. Pateiro-López: clasificación de matriz dispersa en conjuntos de datos desequilibrados utilizando CNN

[22] Q. Dong, S. Gong y X. Zhu, '' Desequilibrado aprendizaje profundo por minoría JUAN C. PICHEL recibió el B.Sc. y M.Sc. licenciados en física
rectificación incremental de clase '' IEEE Trans. Patrón Anal. Mach. Intell. por la Universidad de Santiago de Compostela, España, y el
vol. 41, no. 6, págs. 1367–1381, junio de 2019. Ph.D. Licenciado en Informática por la Universidad de Santiago
[23] S. Yue, '' Clasificación de imágenes de malware desequilibradas: una basada en CNN de Compostela, en 2006, donde actualmente es profesor
enfoque '' 2017, arXiv: 1708.08042. [ En línea]. Disponible: http://arxiv.org/ abs / 1708.08042 asociado. Fue investigador postdoctoral visitante en la
Universidad Carlos III de Madrid, España, y en la Universidad de
[24] S. Wang, W. Liu, J. Wu, L. Cao, Q. Meng y PJ Kennedy, '' Entrenamiento
Illinois en Urbana – Champaign, EE. UU. Fue Investigador y
redes neuronales profundas en conjuntos de datos desequilibrados '' en Proc. En t. Conf. Conjunta Neural Netw.
Gerente de Proyectos en el Super- Galicia.
(IJCNN), Julio de 2016, págs. 4368–4374.
[25] Z.-H. Zhou y X.-Y. Liu, '' Entrenamiento de redes neuronales sensibles al costo con
métodos que abordan el problema del desequilibrio de clases '' IEEE Trans. Knowl. Ing. De datos, vol. 18, no.
Centro de computación, España. Sus intereses de investigación incluyen computación paralela y
1, págs. 63–77, enero de 2006.
[26] H. Yu, C. Sun, X. Yang, W. Yang, J. Shen e Y. Qi, '' ODOC-ELM: distribuida, tecnologías de big data, modelos de programación y técnicas de optimización de software

La decisión óptima genera una máquina de aprendizaje extremo basada en compensación para clasificar para arquitecturas emergentes.

datos desequilibrados ''. Knowl. Syst. vol. 92, págs. 55–70, enero de 2016.

[27] P. Guo, L. Wang y P. Chen, "Un modelo de desempeño y opti- BEATRIZ PATEIRO-LÓPEZ recibió el B.Sc. y M.Sc. grados en
herramienta de análisis de mización para la multiplicación dispersa de vectores de matriz en GPU '' matemática de la Universidad de Santiago de Compostela,
IEEE Trans. Distrib. Paralela Syst. vol. 25, no. 5, págs. 1112–1123, mayo de 2014. España, y el Ph.D. Licenciada en estadística e investigación
operativa por la Universidad de Santiago de Compostela, en
[28] B. Neelima, GRM Reddy y PS Raghavendra, '' Prediciendo un 2008. Después de completar su Ph.D. Licenciada, fue
formato óptimo de matriz dispersa para el cálculo de SpMV en GPU '' en Proc. IEEE Int. Distrib.
investigadora postdoctoral en la Universidad Autónoma de
Paralela Proceso. Symp. Talleres de trabajo, Mayo de 2014, págs. 1427–1436.
Madrid, España, y en la Universidad de San Andrés, Argentina.
Actualmente es profesora asociada del Departamento de
[29] K. Li, W. Yang y K. Li, '' Análisis de rendimiento y optimización para
SpMV en GPU usando modelado probabilístico '' IEEE Trans. Distrib. Paralela Syst. vol. 26, no. 1,
págs. 196–205, enero de 2015.
Estadística, Análisis Matemático y Optimización, Universidad de Santiago de Compostela. Ha
[30] A. Benatia, W. Ji, Y. Wang y F. Shi, '' Selección de formato de matriz dispersa
con SVM multiclase para SpMV en GPU '' en Proc. 45th Int. Conf. Proceso Paralelo. (ICPP), Agosto participado activamente en proyectos financiados a nivel nacional e internacional. Es coautora de

de 2016, págs. 496–505. publicaciones aceptadas en algunas de las revistas mejor calificadas en estadística y probabilidad. Sus

[31] J. Li, G. Tan, M. Chen y N. Sun, '' SMAT: un sintonizador automático adaptativo de entrada intereses de investigación incluyen estimación de conjuntos y estadísticas computacionales.
para multiplicación escasa de matriz-vector '' en Proc. 34 ° SIGPLAN ACM Conf. Programa. Lang.
Implemento de diseño. (PLDI), 2013, págs. 117–126.

VOLUMEN 7, 2019 82389

También podría gustarte