Estudio comparativo de técnicas de
clasificación binaria con múltiples
anotadores
Arles Felipe García Maya
Universidad Nacional de Colombia
Facultad de Minas, Departamento de Ciencias de la Computación
Medellín, Colombia
2019
II Estudio comparativo de técnicas de clasificación binaria con multiples anotadores
Estudio comparativo de técnicas de
clasificación binaria con múltiples
anotadores
Arles Felipe García Maya
Trabajo de investigación presentada como requisito parcial para optar al título de:
Magister en Ingeniería de Sistemas
Director (a):
PhD.(c) Julián Gil González
Codirector (a):
PhD. Albeiro Espinosa Bedoya
Línea de Investigación:
Inteligencia Artificial
Universidad Nacional de Colombia
Facultad de Minas, Departamento de Ciencias de la Computación
Medellín, Colombia
2019
IV Estudio comparativo de técnicas de clasificación binaria con multiples anotadores
El razonamiento matemático puede
considerarse más bien esquemáticamente
como el ejercicio de una combinación de dos
instalaciones, que podemos llamar la intuición
y el ingenio.
Alan Turing
Agradecimientos
El valor de este posgrado radica en el esfuerzo y dedicación que no solo aporta la persona
que lo desarrolla, sino en todo el entorno que lo rodea. Es por esto que quiero agradecer
inicialmente a mi familia, mi madre Amparo Maya y mi hermano Juan David García,
quienes con su ejemplo me han guiado y motivado a ser mejor cada día. A mi compañera
de aventuras y de vida, Maricela Quintero, quien me ha apoyado fuertemente en el devenir
de este posgrado.
Finalmente, y no menos importante, quiero agradecer a mi director y buen amigo Julián
Gil, quien, con gran esmero, dedicación y perseverancia, apoyó el desarrollo de este
trabajo de principio a fin, en compañía de un gran profesor y excelente ser humano como
lo es mi codirector PhD Albeiro Espinosa, a quien le agradezco su gran disposición y
calidad humana.
Resumen y Abstract IX
Resumen
En los últimos años ha venido creciendo el interés de la comunidad de aprendizaje de
máquina hacia el área de múltiples anotadores, esto debido a que existen problemas en
los cuales contar con conjuntos de datos de un solo anotador es algo costoso, riesgoso o
muy difícil de obtener. Esto ha generado que en la literatura existan diferentes técnicas y
algoritmos que tratan de resolver el problema, al extraer el conocimiento de los múltiples
anotadores para generar un conjunto de datos con un solo anotador; conocido como el
conjunto de única etiqueta estimada. Es así como en este trabajo se realizó la selección,
implementación, pruebas y análisis de las métricas precisión, Recall, F1 Score y ROC de
cinco técnicas de aprendizaje de máquina con múltiples anotadores, con el objetivo de
conocer el comportamiento de estas técnicas frente a diferentes bases de datos. Los
resultados experimentales basados en las métricas de rendimiento obtenidas sobre las
pruebas en las diferentes bases de datos evidencian grandes diferencias entre las técnicas
para la misma base de datos, lo cual permite a la comunidad científica o profesional tener
más criterios de selección a la hora de seleccionar alguna de las técnicas mencionadas
aquí.
Palabras clave: Aprendizaje de máquina, clasificación binaria, etiqueta verdadera,
múltiples anotadores, Python.
Resumen y Abstract X
Abstract
In recent years, the machine learning community’s interest has been increasing towards
multiple annotators' area because there are problems in which having single annotators
datasets are too expensive, risky, or complex to obtain. These problems have generated
in literature, different algorithms and techniques that try to solve that problem, either trying
to extract knowledge from the multiple annotators’ datasets and then, creating a single
annotator’s datasets; known as the estimated ground truth. Thus, in this document the
selection, implementation, testing and performance analysis have been done with different
metrics like accuracy, recall, F1 Score and ROC of five multiple annotators’ machine
learning algorithms with the object of getting knowledge about the behavior of these
techniques over different databases. The experimental results, based on the performance’s
metrics obtained from test databases, show large differences among techniques for the
same database, so then, this work can be a guide to the academic or professional
community to get more choice criteria to select one of the techniques implemented here.
Keywords: Binary classification, ground truth estimation, machine learning multiple
annotators, Python.
Contenido XI
Contenido
Pág.
Resumen ............................................................................................................................. IX
Lista de figuras ................................................................................................................. XII
Lista de tablas .................................................................................................................. XIII
Lista de Símbolos y abreviaturas ................................................................................... XV
Introducción .........................................................................................................................1
1. Definición del problema ...............................................................................................3
2. Justificación ..................................................................................................................7
3. Preguntas de Investigación.........................................................................................8
4. Objetivos........................................................................................................................9
5. Marco teórico ............................................................................................................. 10
6. Marco metodológico ................................................................................................. 12
7. Selección de algoritmos ........................................................................................... 14
8. Descripción de las bases de datos ......................................................................... 33
9. Obtención y preparación de las bases de datos. .................................................. 37
10. Implementación de los algoritmos .......................................................................... 41
11. Resultados ................................................................................................................. 48
12. Análisis de resultados .............................................................................................. 61
13. Conclusiones ............................................................................................................. 73
Bibliografía ........................................................................................................................ 77
Contenido XII
Lista de figuras
Pág.
Figura 7-1: Diagrama de bloques del modelo propuesto por [12]. 𝑿 son los datos de
entrada, 𝒚 son las etiquetas dadas por 𝑻 distintos anotadores y 𝒛 es la etiqueta
verdadera (desconocida). ............................................................................................ 17
Figura 7-2: Diagrama de bloques del modelo de aprendizaje de máquina de múltiples anotadores propuesto por [16]. ................................................................................... 20
Figura 7-2: Diagrama bloques del algoritmo propuesto en [7]. ........................................ 24
Figura 7-4: Representación de platos del modelo propuesto por [2]. ...................... 27
Figura 11-1: Curvas ROC del modelo Límite Inferior para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). .................................................................. 52
Figura 11-2: Curvas ROC del modelo Límite Superior para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). .................................................................. 53
Figura 11-3: Curvas ROC del modelo [16] para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). ...................................................................................... 54
Figura 11-4: Curvas ROC del modelo [12] para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). ...................................................................................... 55
Figura 11-5: Curvas ROC del modelo [2] para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). ...................................................................................... 57
Figura 11-6: Curvas ROC del modelo [7] para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). ...................................................................................... 58
Figura 11-7: Curvas ROC del modelo [9] para las bases de datos Breast Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere (Abajo Derecha). ...................................................................................... 59
Contenido XIII
Lista de tablas
Pág.
Tabla 7-1: Descripción general de las bases de datos usadas por [16] para sus pruebas. 21
Tabla 7-2: Descripción general de las bases de datos usadas por [2] para sus pruebas. 28
Tabla 8-1: Descripción general de los atributos de la base de datos Parkinson. ......... 34
Tabla 8-2: Descripción general de los atributos de la base de datos Breast Cancer. .. 34
Tabla 8-3: Descripción general de los atributos de la base de datos Vertebral Column. 35
Tabla 8-4: Descripción general de los atributos de la base de datos Ionosphere. ....... 36
Tabla 8-5: Descripción general de los atributos de la base de datos Sentiment Polarity. 36
Tabla 9-1: Descripción de la base de datos Sentiment Polarity después del pre procesamiento con selección de características y selección de anotadores............. 40
Tabla 11-1: Resultados generales de la precisión de los algoritmos frente a las bases de datos seleccionadas. ................................................................................... 49
Tabla 11-2: Resultados generales de la métrica recall de los algoritmos frente a las bases de datos seleccionadas. ................................................................................... 49
Tabla 11-3: Resultados generales de la métrica F1 Score de los algoritmos frente a las bases de datos seleccionadas. ............................................................................. 50
Tabla 11-4: Resultados generales de la métrica ROC de los algoritmos frente a las bases de datos seleccionadas. ................................................................................... 50
Tabla 11-5: Resultados generales del rendimiento del modelo Límite Inferior - Voto Mayoritario en las diferentes bases de datos seleccionadas ..................................... 51
Tabla 11-6: Resultados generales del rendimiento del modelo de Límite Superior en las diferentes bases de datos seleccionadas ............................................................. 52
XIV Título de la tesis o trabajo de investigación
Tabla 11-7: Resultados generales del rendimiento del modelo [16] en las diferentes bases de datos seleccionadas. ................................................................................... 54
Tabla 11-8: Resultados generales del rendimiento del modelo de [12] en las diferentes bases de datos seleccionadas. .................................................................. 55
Tabla 11-9: Resultados generales del rendimiento del modelo [2] en las diferentes bases de datos seleccionadas. ................................................................................... 56
Tabla 11-10: Resultados generales del rendimiento del modelo [7] en las diferentes bases de datos seleccionadas. ................................................................................... 57
Tabla 11-11: Resultados generales del rendimiento del modelo [9] en las diferentes bases de datos seleccionadas. ................................................................................... 59
Tabla 12-1: Mejores modelos por bases de datos y por métrica. ............................. 65
Tabla 12-2: Diferencias de la métrica precisión por base de datos y algoritmo contra el modelo de referencia superior Límite Superior. ...................................................... 67
Tabla 12-3: Diferencias de la métrica Recall por base de datos y algoritmo contra el modelo de referencia superior Límite Superior ........................................................... 68
Tabla 12-4: Diferencias de la métrica F1 Score por base de datos y algoritmo contra el modelo de referencia superior Límite Superior. ...................................................... 68
Tabla 12-5: Diferencias de la métrica ROC por base de datos y algoritmo contra el modelo de referencia superior Límite Superior. .......................................................... 69
Tabla 12-6: Clasificación de los algoritmos según su rendimiento promedio. .......... 70
Tabla 12-7: Clasificación de los algoritmos según su F1 score promedio. ............... 71
Contenido XV
Lista de Símbolos y abreviaturas
Abreviaturas
Abreviatura Término
AMT Amazon Mechanical Turk
KA Kernel Aligment
LFC Learning from Crows
MAE Modeling Annotator Expertice
PLAT Positive Label Threshold
DLGR Distinguishing Good from Random Labelers
MV Majority Voting, Voto Mayoritario
ROC Receiver operating characteristic
Introducción
Este trabajo pretende abordar la problemática de la multiplicidad de formas y fuentes de
información desde la perspectiva del aprendizaje de máquina; más específicamente del
tema de clasificación con múltiples anotadores, en donde la característica principal de este
tipo de problemas es que dado un experimento con sus respectivos atributos, no se cuenta
con una etiqueta absoluta sino que se cuenta con múltiples etiquetas provenientes de
diferentes fuentes o expertos con diferentes niveles de experticia.
Es así como [12] y [16] mencionan que la cantidad y multiplicidad de las fuentes y formas
de la información es un gran reto que está viviendo la humanidad hoy en día; lo que genera
que su uso se convierta en una tarea dispendiosa y a la vez riesgosa, dado que determinar
cuál de las fuentes es la más adecuada, se convierte en un problema que puede derivarse
en noticias falsas, diagnósticos erróneos, demoras en toma de decisiones o en el peor de
los casos, pérdidas humanas por errores en procedimientos o diagnósticos de
enfermedades. Por otro lado, [16] menciona que, aunque existan situaciones en las que
se puede obtener información confiable, ésta puede ser demasiado costosa en términos
temporales o económicos. Un caso sería el diagnóstico médico, donde determinar si un
paciente tiene cáncer puede requerir una biopsia, que es un procedimiento invasivo y
ciertamente riesgoso.
Por otro lado, como lo mencionan los autores en [2] [6], [16] y [19], el crowdsourcing está
cambiando la forma en que se administran los conjuntos de datos, y gracias a plataformas
como Amazon Mechanical Turk (AMT) [5], es cada vez más fácil obtener datos etiquetados
para un gran conjunto de tareas que abarcan diferentes áreas como: procesamiento de
lenguaje natural, visión por computador, reconocimiento de voz, etc. Lo anterior ha
despertado un gran interés en la comunidad académica e industrial por las potenciales
aplicaciones e implementaciones que se pueden desarrollar, este interés se puede
evidenciar no solo por las fechas de publicación de los artículos aquí mencionados, sino
2 Introducción
también por las diferentes alternativas que se han venido creando alrededor de Amazon
Mechanical Turk, es así como el interés para elaborar este trabajo es realizar un aporte
académico a este tema de gran utilidad académica e industrial, pudiendo ofrecer un
comparativo entre algunas de las técnicas que la literatura menciona.
En la literatura existen variadas aproximaciones y técnicas para enfrentar los diferentes
retos que plantea el trabajar con múltiples anotadores; como en [11], donde usan procesos
Gaussianos para manejar los diferentes niveles de experticia de los anotadores, pasando
por modelos con Regresión Lineal para predecir el conjunto de datos final [9]. Por otro lado,
en [10] los autores realizan un análisis técnico de las técnicas que se encuentran en la
literatura, analizando sus ventajas y desventajas para finalmente proponer cuáles serán
los elementos por estudiar en el futuro.
En general, en la literatura existen diferentes técnicas para abordar este problema, como
lo expusieron [3], [4], [7] y [16] entre otros. Sin embargo, debido a la novedad del tema y
surgimiento de plataformas similares a Amazon Mechanical Turk como RapidWorkers*1 y
Samasources*1 entre otros; han hecho posible que trabajar con este tipo de conjunto de
datos sea más fácil; esto en términos de acceso, costo y alternativas de acuerdo con el
tipo de proyecto a trabajar.
Teniendo en cuenta lo anterior, en este trabajo se pretende realizar la selección e
implementación de algunos de los algoritmos más relevantes de aprendizaje supervisado
con múltiples anotadores del estado del arte para evaluar su rendimiento en términos de
precisión sobre algunas de las bases de datos usadas en los diferentes artículos como en
[16].
El resto de este documento está organizado de la siguiente manera: la sección 2 brinda al
lector una descripción del problema a tratar en el proyecto, la sección 3 ofrece la
justificación del proyecto, la sección 4 plantea las preguntas de investigación,
posteriormente la sección 5 presenta los objetivos, la sección 6 presenta un marco teórico
de los conceptos a tratar en el proyectos, la sección 7 determina la metodología, para
finalmente, en las secciones posteriores, desarrollar lo propuesto anteriormente.
1. Definición del problema
En problemas de aprendizaje de máquina supervisado, el objetivo es determinar una
función que relacione el espacio de entrada y el espacio de salida [18]. Para determinar
dicha función, usualmente se supone que se dispone de un experto (también conocido
como oráculo o profesor), el cual provee la etiqueta verdadera (ground truth, gold standard
o valor verdadero) a cada una de las muestras presentes en el conjunto de entrenamiento.
Sin embargo, en diversas aplicaciones con conjuntos de datos que incluyen múltiples
fuentes, no se dispone de dicha etiqueta verdadera y, por el contrario, se tienen
anotaciones provistas por múltiples anotadores, donde cada uno de éstos da su versión
personal de la etiqueta verdadera que se desconoce [5]. Lo anterior plantea un desafío
para ejecutar tareas de clasificación y/o regresión bajo este escenario.
El problema relacionado anteriormente, se ha abordado a partir de un área denominada
“Learning from Crowds”, la cual se encarga de solucionar problemas de aprendizaje de
máquina supervisado donde no solo el conjunto de datos reales se desconoce sino también
donde se pueden tener múltiples etiquetas para un mismo experimento. Dentro de los
trabajos desarrollados en esta área se encuentra el modelo propuesto en [4], donde se
aborda el problema de la diferencia de confiabilidad o niveles de experticia que cada uno
de los anotadores aporta al conjunto de datos. Para esto, los autores proponen un modelo
de clasificación multi-clase basado en Deep Learning (aprendizaje profundo) donde
implementan una red neuronal con backpropagation más una capa adicional llamada
Crowd Layer, la cual se encarga de usar la información de los múltiples anotadores con el
fin de estimar la etiqueta verdadera y los errores de cada uno de los anotadores. Por otro
lado, en [7] los autores, extendiendo los modelos de clasificación de único anotador
basados en procesos Gaussianos, proponen un modelo de clasificación de múltiples
anotadores, basado también en procesos Gaussianos, en donde la experticia de los
anotadores es variable y modelada a partir de una distribución binomial. Los autores
4 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
indican que su algoritmo se desempeña mejor que los algoritmos base contra los cuales
fue comparado; esto sin un incremento significativo del costo computacional al evaluarlo
en conjuntos de datos reales de análisis de sentimientos en clasificación de películas y
clasificación del género musical en un conjunto de letra de canciones. En [8], los autores
tratan el tema del desconocimiento de la experticia de los autores y el desbalanceo de
clases en un conjunto de datos de múltiples anotadores en clasificación binaria. Es así
como los autores proponen el algoritmo PLAT (Positive Label Frequency Threshold), el
cual se basa en análisis la diferencia estadística de las probabilidades entre las dos clases
para determinar la frecuencia de la clase positiva; para obtener al final, un conjunto de
datos con un único anotador que representa el conjunto de datos reales o conjunto de
datos de etiquetas estimadas. Los autores realizaron pruebas sobre ocho conjuntos de
datos de la UCI con múltiples anotadores con etiquetas balanceadas y desbalanceadas,
obteniendo resultados positivos en las pruebas realizadas. En [15] los autores abordan el
problema de los múltiples anotadores para problemas de regresión en donde se desconoce
la experticia de los anotadores. Se propone un modelo probabilístico Bayesiano que
genera una función de regresión no lineal que permite determinar a partir de un conjunto
de múltiples anotadores de diferente experticia, un conjunto de datos de etiquetas
estimadas. Los autores realizaron pruebas en seis conjuntos de datos de la UCI con
comportamientos no lineales y un conjunto de datos de regresión lineal, obteniendo
mejores resultados en comparación al método de referencia. Sin embargo, en las
conclusiones se indica que existen problemas de cómputo cuando el número de muestras
es muy superior al número de atributos en problemas no lineales.
Teniendo en cuenta la revisión de la literatura, se puede notar que los problemas de
aprendizaje supervisado con múltiples anotadores tiene gran interés en la comunidad
científica y que existe una cantidad considerable de enfoques que tratan de solucionarlo;
sin embargo, también existen algunas cuestiones sin solución, específicamente se
evidencia que la mayoría de los modelos consideran independencia entre las opiniones de
los anotadores, lo cual, según [20], no se puede asumir explícitamente dado que pueden
existir correlaciones entre los anotadores.
Sin embargo, artículos como [16], abordan esta perspectiva del problema de la posible
correlación entre los anotadores, proponiendo un algoritmo para la estimación de la calidad
de los anotadores, los cuales son posteriormente implementados en un modelo de
Capítulo 1 5
aprendizaje supervisado que realiza la tarea de clasificación. Para la parte de estimación
de la calidad de los anotadores, en [19] proponen un algoritmo basado en KA (Kernel
Alignment) donde se estima el rendimiento de los anotadores a partir de la comparación
entre matices kernel, donde la hipótesis planteada es que mientras más parecido sea el
kernel de un anotador al kernel de las características mayor es su experticia. De esta forma
y para la parte de clasificación, primero se entrena un clasificador basado en procesos
gaussianos para cada anotador y, la predicción se calcula como una combinación lineal de
las predicciones de cada uno de los clasificadores entrenados, donde las ponderaciones
van a estar dadas por los rendimientos de cada anotador.
Se tiene entonces que, en la literatura existen múltiples aproximaciones que abordan,
desde varias perspectivas, el problema de múltiples anotadores, y que por otro lado, como
lo menciona [10], se cuenta con gran cantidad de fuentes y formas de información; lo que
en conjunto, genera el problema de determinar cuál de las soluciones disponibles en la
literatura es la más adecuada para resolver un problema de aprendizaje de máquina con
múltiples anotadores, ya sea desde una perspectiva académica o profesional.
De este modo, conocer y comparar el comportamiento sobre diferentes conjuntos de datos
de los algoritmos de múltiples anotadores más relevantes de la literatura, permitiría a los
investigadores y profesionales tomar mejores decisiones a la hora de seleccionar alguno
de estos algoritmos, no solo por las métricas comparativas, sino que al conocer y tener
disponible su código fuente en Python, su implementación en proyectos académicos y
empresariales Open Source, podría generar un gran impacto en esta área del
conocimiento.
Es así como teniendo en cuenta lo anterior, en este trabajo se plantean el problema y la
posible hipótesis de investigación como: ¿Es posible desarrollar pruebas comparativas
sobre algunos de los algoritmos de clasificación binaria con múltiples anotadores más
relevantes en la literatura?, ¿Es posible desarrollar un comparativo básico entre las
diferentes técnicas de clasificación binaria con múltiples anotadores que le ayuden a un
potencial usuario a tener una mejor visión del comportamiento de estas técnicas en
diferentes métricas y conjuntos de datos?, ¿Es posible implementar en Python algunas de
técnicas de clasificación binaria con múltiples anotadores?.
2. Justificación
Como lo mencionan los autores en [2], [3] y [4], el área de aprendizaje de máquina con
múltiples anotadores es una línea que viene en auge y que presenta grandes retos, los
cuales pueden brindar soluciones a problemas reales en diferentes áreas del
conocimiento, pudiendo mejorar parámetros como costo económico, velocidad de
resultados o incrementar veracidad o precisión en las predicciones basadas en conjuntos
de datos con múltiples anotadores.
Adicionalmente la implementación de los diferentes modelos matemáticos descritos en los
artículos seleccionados de la literatura evaluados en este trabajo, aportarían al área de
conocimiento al usar los avances y propuestas novedosas en códigos e implementaciones
reales, las cuales pueden ser usadas en aplicaciones académicas o industriales; ayudando
así que estos artículos no solo aporten a la investigación básica, sino que trasciendan a la
comunidad de software y todos los interesados en el tema, de una manera más cómoda y
fácil de aprender.
Por otro lado, el realizar una implementación en código y su posterior comparativo entre
algunas de las diferentes técnicas de aprendizaje de máquina supervisado con múltiples
anotadores, presentes en la literatura, permitirá a los investigadores o profesionales del
sector, conocer las debilidades y fortalezas de cada una de las técnicas comparadas,
pudiendo así guiarse en cuál situación se recomienda el uso de una u otra técnica para el
trabajo con múltiples anotadores.
3. Preguntas de Investigación
De este modo, surgen las siguientes preguntas de investigación sobre las cuales se busca
determinar u orientar el trabajo hacia ofrecer a la comunidad un análisis comparativo entre
las diferentes técnicas de clasificación binaria con múltiples anotadores:
• ¿Es posible replicar en código algunos de los algoritmos de clasificación binaria
con múltiples anotadores más relevantes en la literatura?
• ¿Es posible implementar en Python algunas de técnicas de clasificación binaria con
múltiples anotadores disponibles en la literatura?
• ¿Es posible desarrollar un comparativo básico entre las diferentes técnicas de
clasificación binaria con múltiples anotadores, que ofrezcan al usuario una visión
general de cuál técnica podría implementar según su problema de múltiples
anotadores?
4. Objetivos
4.1 General
• Evaluar comparativamente los algoritmos más relevantes del estado del arte con
respecto a la clasificación binaria con múltiples anotadores.
4.2 Específicos
• Seleccionar e implementar los algoritmos más relevantes de aprendizaje
supervisado con múltiples anotadores del estado del arte.
• Seleccionar las bases de datos que se van a usar en la evaluación comparativa.
• Evaluar el rendimiento de los métodos implementados en términos de precisión y
área bajo la curva (ROC).
5. Marco teórico
5.1 Aprendizaje de máquina con múltiples anotadores
Como lo definen en [2], [3] y [4] el aprendizaje de máquina con múltiples anotadores es un
área de investigación orientada a encontrar algoritmos, procesos, técnicas y/o métodos
para el procesamiento de conjuntos de datos con más de una etiqueta (binaria o multi-
clase) por cada uno de las muestras o datos dentro del conjunto.
Esta área de investigación aprovecha los conceptos de múltiples anotadores y
herramientas como AMT para elaborar o trabajar con conjuntos de datos en donde una
misma muestra 𝑋𝑖 tiene 𝑁 posibles etiquetas 𝐶𝑖 obtenidas o generadas a partir N diferentes
fuentes o anotadores.
Como lo mencionan [2], [3] y [4] el reto consiste en cómo abordar conjuntos de datos con
estas características y determinar cuál es la única y verdadera etiqueta 𝑌𝑖 entre las N
etiquetas 𝐶𝑖 .
Como lo mencionan los autores en [2], [3] y [4], el área de aprendizaje de máquina con
múltiples anotadores es una línea que viene en auge y que presenta grandes retos, los
cuales pueden brindar soluciones a problemas reales en diferentes áreas del
conocimiento, pudiendo mejorar variables como costo económico, velocidad de resultados
o incrementar veracidad o precisión en las predicciones basadas en conjuntos de datos
con múltiples anotadores.
5.2 Amazon Mechanical Turk
Según [5], es un servicio ofrecido y operado por Amazon Web Services, el cual ofrece
ejecución de tareas programadas en donde se requiere o es más efectivo el uso de
inteligencia humana. AMT ofrece la posibilidad de crear tareas como clasificación de
11
objetos en imágenes y videos, realizar transcripciones y otras tareas realizables por
personal humano; todo esto ofreciendo un costo y escalabilidad accesible para las
empresas o desarrolladores.
6. Marco metodológico
6.1 Selección de los algoritmos de clasificación binaria con múltiples anotadores
Teniendo en cuenta el alcance seleccionado previamente de cinco algoritmos a evaluar en
este trabajo, se decidió seleccionar a [16] como el primer algoritmo a implementar, ya que
es una nueva técnica que aborda la relación entre los anotadores y, además, la publicación
es parte del trabajo de una tesis doctoral que viene cursando uno de los autores. Los otros
cuatro algoritmos serán seleccionados bajo los criterios de relevancia en el estado del arte
como lo son el número de citaciones y revista de publicación.
6.2 Selección de las bases de datos de pruebas
Se utilizarán algunas de las bases utilizadas en [16], dado que se tiene fácil acceso a éstas
permiten realizar un comparativo directo con los resultados expuestos en la publicación y
además realizar un comparativo con las otras técnicas seleccionadas. En el caso de los
conjuntos de datos con un solo anotador, se utilizaron las bases de datos de la UCI Breast
Cancer, Vertical Column, Parkinson e Ionosphere, las cuales se trataron posteriormente
para generar bases de datos sintéticas con múltiples anotadores; y por el lado de las bases
de datos con múltiples anotadores, se utilizó la base de datos Sentiment Polarity, la cual
fue generada utilizando AMT.
6.3 Evaluación comparativa entre los algoritmos
• Se evaluarán las técnicas con las mismas bases de datos.
• Se utilizarán los mismos indicadores de rendimiento para todos los algoritmos.
• Se desarrollarán en el mismo lenguaje de programación.
• Se ejecutarán en la misma máquina y por separado.
13
• Se desarrollarán los archivos de pruebas bajo una metodología de programación
de funciones y métodos compartidos y genéricos, lo que permitirá reutilizar código
en las distintas implementaciones de los algoritmos, garantizando que todos los
métodos probados ejecuten las mismas funciones inicialización, entrenamiento y
evaluación.
7. Selección de algoritmos
Como se indicó anteriormente en el marco metodológico, uno de los objetivos de este
trabajo es seleccionar un conjunto de algoritmos de clasificación binaria con múltiples
anotadores para realizar su implementación en Python y pruebas de rendimiento con
diferentes métricas sobre bases de datos reales y sintéticas.
Para la selección de cuatro de los cinco algoritmos con los que realizó este trabajo, se
utilizó el número de citas en Google Scholar del artículo donde se presenta el algoritmo,
esto como indicador de impacto o relevancia en el estado del arte. Finalmente, el quinto
algoritmo fue proporcionado por el director de este trabajo, el cual fue descrito en el artículo
[16].
Tabla 7-1: Artículos seleccionados del estado del arte para ser evaluados en este
trabajo.
Artículos seleccionados del estado del arte
Artículo Citaciones en
Google Scholar
Lenguajes
Disponibles
Raykar, V. C., Yu, S., Zhao, L. H., Valadez, G.
H., Florin, C., Bogoni, L., & Moy, L. (2010).
Learning from crowds. Journal of Machine
Learning Research, 11(Apr), 1297-1322.
976 MatLab y Julia
Rodrigues, F., Pereira, F., & Ribeiro, B. (2013).
Learning from multiple annotators:
distinguishing good from random labelers.
Pattern Recognition Letters, 34(12), 1428-
1436.
62 MatLab y Julia
15
Yan, Y., Rosales, R., Fung, G., Schmidt, M.,
Hermosillo, G., Bogoni, L., … & Dy, J. (2010,
March). Modeling annotator expertise:
Learning when everybody knows a bit of
something. In Proceedings of the Thirteenth
International Conference on Artificial
Intelligence and Statistics (pp. 932-939).
190 MatLab
Zhang, J., Wu, X., & Shengs, V. S. (2015).
Active learning with imbalanced multiple noisy
labeling. IEEE transactions on cybernetics,
45(5), 1095-1107.
33 MatLab
Gil-Gonzalez, J., Alvarez-Meza, A., & Orozco-
Gutierrez, A. (2018). Learning from multiple
annotators using kernel alignment. Pattern
Recognition Letters, 116, 150-156.
1 MatLab
7.1 Algoritmo de referencia 1 - Límite Inferior
Con el objetivo de tener un algoritmo de referencia, en este caso, el algoritmo de múltiples
anotadores más simple entre los diferentes algoritmos estudiados en este trabajo, se
decide implementar un modelo de regresión logística con voto de mayoría como algoritmo
de generación de única etiqueta o gold standard como solución al problema de múltiples
anotadores. Para seleccionar la única etiqueta para una muestra, este algoritmo selecciona
de las múltiples anotaciones de esa muestra, la etiqueta con más votos o repeticiones, de
este modo, se condensa la opinión de n anotadores en una sola versión o etiqueta.
Este algoritmo de referencia permite crear una marca o una referencia, la cual se espera
por lo menos que sea igualada o superada por los otros algoritmos de múltiples anotadores
a evaluar, dado que el algoritmo de voto de mayoría es bastante simple y presenta una
serie de desventajas, ya que asume que todos los anotadores presentan el mismo nivel de
experticia.
16 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
7.2 Algoritmo de referencia 2 - Límite Superior
Con el objetivo de tener un algoritmo de referencia, en este caso, el mejor resultado posible
entre los diferentes algoritmos estudiados en este trabajo, se decide implementar una
regresión logística utilizando las etiquetas reales o gold standard; de este modo podemos
tener como referencia un modelo que se entrena con un único anotador que se considera
la única verdad posible para cada muestra.
Este algoritmo de referencia permite crear un punto de referencia a alcanzar por los otros
algoritmos de múltiples anotadores a evaluar, ya que el objetivo a grandes rasgos de estos
algoritmos es tratar de inferir las etiquetas reales o generar un modelo que se acerque lo
más posible a las etiquetas reales o al modelo generado en este punto.
7.3 Modeling annotator expertise: Learning when everybody knows a bit of something - MAE
7.3.1 Tipo de salida
Modelo entrenado con el conjunto de datos de etiquetas estimadas listo para trabajar con
nuevas muestras.
7.3.2 Descripción general
[12] presenta su propia solución al problema conjuntos de datos con múltiples anotadores,
esta vez bajo un enfoque probabilístico. Los autores describen que existe un problema
cuando los anotadores pueden no ser confiables (etiquetas con ruido), pero también su
experiencia varía según los datos que observan, es decir, los anotadores pueden tener
conocimiento sobre diferentes partes del espacio de entrada.
Los autores exponen que, en problemas de múltiples etiquetas, implementar un
clasificador tradicional de un solo experto, sin tener en cuenta las propiedades del
anotador, puede no ser muy efectiva en general. [12] indican que las razones para esto
pueden ser: "algunos anotadores pueden ser más confiables que otros, algunos pueden
ser maliciosos, algunos pueden estar correlacionados con otros, puede existir un
17
conocimiento previo diferente sobre los anotadores y, en particular, la efectividad del
anotador puede variar dependiendo de la instancia de datos presentada.".
7.3.3 Descripción del modelo propuesto
Teniendo como insumo un conjunto de datos de entrenamiento con múltiples etiquetas,
[12] generan una serie de resultados, los cuales son: un nuevo conjunto de datos con
etiqueta única estimada, un clasificador pre entrenado usando el conjunto de datos
anteriormente descrito listo para ser usado con nuevos datos y finalmente, un modelo de
la experticia de cada uno de los anotadores del conjunto de datos.
Figura 7-1: Diagrama de bloques del modelo propuesto por [12]. 𝑿 son los datos de
entrada, 𝒚 son las etiquetas dadas por 𝑻 distintos anotadores y 𝒛 es la etiqueta verdadera
(desconocida).
[12] indica que en su implementación: "la anotación proporcionada por el anotador t
depende tanto de la etiqueta verdadera desconocida z como de la entrada x." Es decir, no
asumen una experticia fija de cada anotador para etiquetar todos los datos, sino que cada
anotador tendrá variación en su calidad dependiendo de la entrada x que evalúe.
Adicionalmente [12] indica que su experiencia con aplicaciones reales, notaron que la
calidad de las etiquetas de los anotadores no es solo depende su experticia, sino también
del tipo de datos que se les presentan.
7.3.4 Estimación de máxima verosimilitud
Al igual que [9], en esta propuesta, los autores implementan el algoritmo de Expectation –
Maximization (EM) para la estimación de los parámetros del modelo. En este caso los
18 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
autores utilizaron el método LBFGS Quasi-Newton para resolver el problema de
optimización del paso M.
7.3.5 Clasificación
[12] describe que después de estimar los parámetros 𝛼, 𝛽 del modelo en la fase de
entrenamiento, el modelo puede clasificar un nuevo dato 𝑥 simplemente dejando que:
𝑝(𝑧 = 1 |𝑥) = (1 + exp(−𝛼𝑇𝑥 − 𝛽))−1 (1)
donde (1) corresponde a la estimación de la etiqueta de interés después de estimar los
parámetros del modelo y donde 𝑧 = 1 corresponde a la etiqueta de clase de interés.
Para efectos de este trabajo, el resultado de la implementación del algoritmo propuesto en
[12] consiste en un clasificador basado en regresión lineal pre entrenado con un conjunto
de datos de etiquetas estimadas.
7.3.6 Pruebas
Para realizar sus pruebas [12] utilizaron varios conjuntos de datos simulados y reales para
comparar el rendimiento de su propuesta contra otros métodos de referencia. [12] indica
que estas pruebas fueron divididas en tres partes: "(I) Simulaciones de rendimiento en
datos UCI: probamos nuestro algoritmo en cuatro conjuntos de datos disponibles
públicamente del Depósito de aprendizaje automático UCI (Asunción y Newman, 2007):
Ionosphere, Cleveland Heart, Glass y Housing. Dado que no hay múltiples anotaciones
(etiquetas) para estos conjuntos de datos, generamos artificialmente 5 etiquetadoras
simuladas con diferentes conocimientos de etiquetado y consideramos las etiquetas
proporcionadas como la verdad dorada.".
7.3.7 Conclusiones
Finalmente [12] indican que su modelo propuesto no solo estima las etiquetas verdaderas,
sino que también permite manejar el nivel de experticia de cada anotador en su área de
dominio. Con respecto al rendimiento de su modelo [12] concluye que: "Nuestros
19
experimentos sobre datos de referencia y datos reales sobre el cáncer cardíaco y de mama
muestran que la experiencia de los anotadores varía según los datos y que nuestro modelo
proporciona un mejor rendimiento de clasificación sobre varias formas de pre-
procesamiento de datos (voto mayoritario o concatenación de las etiquetas proporcionadas
por todos los anotadores), y lo que es más importante, mejora los resultados sobre el
modelo que ignora el efecto de la experiencia variable en todas las instancias.".
7.4 Learning from multiple annotators using kernel alignment - KA
7.4.1 Tipo de salida
Modelo entrenado con un conjunto de datos de etiquetas estimadas listo para trabajar con
nuevas muestras.
7.4.2 Descripción general
Los autores en [16] presentan un nuevo enfoque para el análisis de importancia de cada
anotador para algoritmos de clasificación de múltiples anotadores basado en la alineación
del núcleo (KAAR) en situaciones donde el conjunto de datos reales no se encuentra
disponible. De este modo, [16] indica que se predice una nueva etiqueta como una
combinación convexa de clasificadores que adoptan la codificación basada en KAAR
lograda. Los autores mencionan que sus resultados experimentales muestran que su
metodología puede estimar el rendimiento de los anotadores, incluso si el conjunto de
datos reales no está disponible.
7.4.3 Descripción del modelo propuesto
[16] describen su implementación como "...a diferencia de trabajos anteriores, nuestro
enfoque estima el rendimiento de los anotadores utilizando un modelo no paramétrico, lo
que le permite ser más flexible con respecto a la distribución de las etiquetas. Además,
nuestra metodología relaja la suposición de independencia entre los anotadores, lo que
resalta las posibles correlaciones entre las opiniones para codificar su experiencia. Nuestro
20 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
enfoque es similar al propuesto en [13] en el sentido de que realizamos la tarea de
clasificación utilizando una combinación ponderada de clasificadores. Sin embargo, a
diferencia de este trabajo, estimamos los pesos mediante el uso de un enfoque basado en
la alineación del núcleo para cuantificar la correspondencia entre las características de
entrada y la experiencia del anotador."
Figura 7-2: Diagrama de bloques del modelo de aprendizaje de máquina de múltiples
anotadores propuesto por [16].
Los autores mencionan que la mayoría de los trabajos de aprendizaje de máquina con
múltiples anotadores se basan en modelos paramétricos, lo que, según ellos, lleva a los
siguientes problemas: " i) si la cantidad de parámetros es comparable con la cantidad de
muestras disponibles para capacitación, el modelo puede caer rápidamente en sobreajuste
[8]. ii) Las restricciones lineales o gaussianas se imponen comúnmente para calcular las
soluciones óptimas analíticamente [11], sin embargo, los conjuntos de datos del mundo
real no pueden cumplir tales supuestos. iii) La mayoría de las obras asumen independencia
entre los anotadores; Si bien es conveniente considerar que los rotuladores toman sus
decisiones de manera independiente, no es cierto que estas opiniones sean
independientes, ya que existen posibles correlaciones entre las opiniones de los expertos
[12]."
21
En la parte de pruebas, [16] utilizaron ocho bases de datos para la clasificación binaria del
repositorio UCI2, entre las cuales se encuentran Wisconsin Base de datos sobre el cáncer
de seno, base de datos de la Universidad Johns Hopkins ionosfera de- (ionosfera) y
conjunto de datos de columna vertebral- (vertebral); las cuales, fueron utilizadas también
en este trabajo. Adicionalmente se realizaron pruebas sobre una base de datos real de
múltiples anotadores sobre problema de calidad de voz, la cual fue creada usando AMT.
Tabla 7-1: Descripción general de las bases de datos usadas por [16] para sus
pruebas.
Descripción general de las bases de datos
Nombre Número de atributos Número de muestras
Iris 4 150
Ionosphere 34 351
Pima 8 168
Parkinson 22 195
Bupa 6 345
Breast 9 683
Tic-tac-toe 9 950
Vertebral 6 310
Para la generación de los anotadores sintéticos, [16] utiliza diferentes metodologías al igual
que otros artículos estudiados en este trabajo, sin embargo [16] implementa también la
técnica de la moneda sesgada. [16] describe entonces que esta técnica consiste en
generar una distribución de probabilidad de Bernoulli con un factor de probabilidades
variable 𝑝𝑚 ∈ [0,1], lo cual permite generar un conjunto de anotadores sintéticos con
diferentes niveles de experticia.
Para generar un nuevo anotador con su respectivo conjunto de etiquetas de la base de
datos a procesar, se genera una distribución de probabilidad utilizando un factor de
probabilidad 𝑝𝑚 ∈ [0,1] único para cada anotador y el conjunto de etiquetas reales de la
22 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
base de datos. Es así como un 𝑝𝑚 = 0 indica que las etiquetas generadas, en todas las
oportunidades, son las etiquetas contrarias o inversas a las etiquetas reales de la base
datos; y con un 𝑝𝑚 = 1, indica que las etiquetas generadas son iguales a las etiquetas
reales de la base de datos.
7.4.4 Pruebas
En la parte de implementación y validación, los [16] compararon su implementación frente
a diferentes técnicas de la literatura con el objetivo de medir su rendimiento frente a las
propuestas más novedosas de la literatura. Entre las varias comparaciones que se llevaron
a cabo, [16] implementaron en MatLab el algoritmo de umbral de frecuencia de etiqueta
positiva PLAT [19], el cual también es implementado usando Python en este trabajo.
7.4.5 Conclusiones
Finalmente, en la parte de conclusiones generales, los autores indican que "…los
resultados muestran que el método propuesto se puede utilizar para tratar problemas de
clasificación binaria con múltiples etiquetadoras. De hecho, en la mayoría de los casos,
nuestro enfoque logra resultados competitivos o incluso mejores en comparación con los
diferentes modelos de vanguardia [1,8,18,19]." Por otro lado, y como conclusión de su
implementación sobre bases de datos reales, los autores indican que: "Del mismo modo,
en los conjuntos de datos del mundo real, se evidencia que KAAR no se ve
significativamente afectado cuando la experiencia de los rotuladores disminuye
drásticamente. Sorprendentemente, KAAR lidera con etiquetas faltantes y puede
extenderse fácilmente a problemas de varias clases."
7.5 Active learning with imbalanced multiple noisy labeling - PLAT
23
7.5.1 Tipo de salida
Conjunto de datos de entrenamiento de etiquetas integradas o etiquetas estimadas del
conjunto de datos de múltiples anotadores.
7.5.2 Descripción general
Como se ha mencionado anteriormente y como [7] también lo indica, adquirir datos para
etiquetados es algo que puede tomar bastante tiempo, esfuerzo o recursos debido a la
naturaleza del problema; por lo cual, se puede hacer complicado conseguir un conjunto de
datos lo suficientemente grande y completamente etiquetado para entrenar un modelo de
aprendizaje supervisado. De este modo, [7] menciona que, para atacar este tipo de
problemas, surgió el Aprendizaje Activo, en donde la idea clave es que un algoritmo de
aprendizaje puede ir adquiriendo poco a poco y activamente los datos para ir mejorando
su objetivo de aprendizaje o rendimiento.
7.5.3 Descripción del modelo propuesto
En este artículo, los autores proponen un nuevo algoritmo para el aprendizaje de máquina
activo con múltiples anotadores el cual básicamente genera un umbral adaptativo que se
determina teniendo en cuenta la distribución de etiquetas positivas que los anotadores
hayan indicado para el conjunto de datos de entrenamiento.
Los autores proponen la combinación de los procedimientos de Integración de Etiquetas y
de Selección de Instancias en un solo método, que como ellos lo mencionan en el artículo,
no ha sido investigado en estudios anteriores referentes al aprendizaje de máquina activo
con múltiples anotadores.
7.5.4 Algoritmo PLAT
Se encuentra entonces que [7] propone en la Integración de Etiquetas un algoritmo para
el cálculo adaptativo de un umbral de etiqueta positiva PLAT (Positive Label Threshold, por
sus siglas en inglés) que indica la pertenencia de cada una de las muestras del conjunto
24 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
de datos de entrenamiento con múltiples anotadores a una clase determinada, siendo en
este caso una etiqueta positiva o negativa, es decir, una clasificación binaria.
Cuando se usa Voto Mayoritario (MV por su abreviación en inglés) como algoritmo de para
integración de etiquetas, al menos la mitad de las múltiples etiquetas de cada instancia
debe ser negativa para que se tome la decisión de que la clase de la instancia es negativa;
y del mismo modo, pero inverso, es positivo. Esto indica implícitamente que el umbral de
decisión es 0.5. Sin embargo, cuando el etiquetado está desbalanceado, un umbral
estático o de 0.5 ya no es ideal para manejar este tipo de distribuciones de múltiples
etiquetas
Por lo tanto, PLAT logra el objetivo de aumentar el número de ejemplos positivos en el
conjunto de capacitación mediante la estimación dinámica de un umbral determinista T
para la integración de etiquetas.
Figura 7-2: Diagrama bloques del algoritmo propuesto en [7].
En general, se puede describir el modelo propuesto por [7] como que una propuesta para
abordar el problema del aprendizaje de máquina activo con múltiples anotadores con
ruidos y de múltiples fuentes, con la combinación de los procedimientos de Integración de
Etiquetas y Selección de Instancias en un solo método, modelo que no ha sido investigado
en estudios anteriores como lo mencionan [7]. Adicionalmente los autores propusieron y
25
evaluaron tres nuevas estrategias de Selección de Instancias, que consideran diferentes
métricas como la incertidumbre o el desbalanceo de clases; esto con el objetivo de mejorar
el rendimiento del aprendizaje activo; y finalmente [7] considera los conjuntos de datos
desbalanceados y etiquetado desbalanceado al mismo tiempo, lo cual, como lo mencionan
los autores, es el primer esfuerzo para considerar los dos tipos de desbalance juntos en el
aprendizaje de máquina con múltiples anotadores bajo los paradigmas de aprendizaje
activo.
7.5.5 Pruebas
En la parte de pruebas y resultados, los autores evaluaron su implementación en 12
conjuntos de datos con diferentes distribuciones de clase, evaluando las tres estrategias
de Selección de Instancias, donde encontraron que estas estrategias mejoran
significativamente el rendimiento de aprendizaje.
La solución propuesta por [7] genera dos resultados utilizables. Por un lado, se genera un
conjunto de datos de entrenamiento de etiquetas integradas D', el cual proviene del
proceso de Integración de Etiquetas (PLAT) y se puede tomar como el conjunto de datos
de etiquetas reales que el algoritmo entrega después de analizar y condensar la
información de los múltiples anotadores; y por otro lado, esta solución entrega un modelo
pre entrenado con este conjunto de datos de etiquetas integradas, el cual también se
puede usar para predecir las etiquetas de las instancias no etiquetadas en el conjunto de
datos de entrenamiento, lo que se denomina aprendizaje semi-supervisado.
Para [7] y para este trabajo, la implementación principal es el algoritmo PLAT, dado que
como se mencionó anteriormente, es el encargado de la Integración de Etiquetas, el cual
genera un conjunto de datos de entrenamiento con etiquetas integradas o etiqueta única
estimada; el cual es utilizado, tanto en [7] como en este trabajo, para entrenar un modelo
y comparar su rendimiento contra el mismo modelo, pero entrenando con el conjunto de
datos de valores reales.
Los autores justifican la implementación de PLAT en su trabajo para realizar el
procedimiento de Integración de Etiquetas argumentando que: "...un algoritmo de
26 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
inferencia de verdad debe tener la capacidad de explotar ejemplos más positivos, incluso
permitir un sacrificio tolerable en la verdadera tasa de precisión negativa hasta cierto punto.
Para lograr este objetivo, utilizamos el algoritmo heurístico PLAT [32]...".
7.5.6 Conclusiones
De este modo, los autores exponen el funcionamiento del algoritmo PLAT como una
función llamada EstimateThresholdPosition, la describen en [7] como:
"EstimateThresholdPosition es procedimiento heurístico para estimar el umbral óptimo T.
EstimateThresholdPosition analiza la distribución de las etiquetas positivas de todas las
muestras y obtiene la estimación (denotado por t) del umbral T. Después de que T se
estima como t, PLAT induce la etiqueta integrada del conjunto de etiquetas múltiples de
cada instancia en el conjunto de entrenamiento basado en el umbral T. Los ejemplos con
f+ > t se asignan con una etiqueta positiva integrada. Para aquellos ejemplos con f+ ≤ t,
pueden asignarse con etiquetas negativas integradas con una probabilidad muy alta.
Durante este procedimiento, PLAT intenta mantener la relación de los números de
ejemplos integrados positivos y negativos cerca de la verdadera distribución de clase
subyacente del conjunto de entrenamiento".
Para efectos de este trabajo, el resultado de la implementación del algoritmo propuesto en
[7] consiste en conjunto de datos de entrenamiento con etiquetas integradas o etiqueta
única estimada del conjunto de datos de múltiples anotadores.
7.6 Learning from multiple annotators: distinguishing good from random labelers – DLGR
7.6.1 Tipo de salida
Modelo entrenado con el conjunto de datos de etiquetas estimadas listo para trabajar con
nuevas muestras.
27
7.6.2 Descripción general
Los autores en [2] proponen un nuevo modelo probabilístico para el aprendizaje
supervisado con múltiples anotadores donde la confiabilidad de los diferentes anotadores
se trata como una variable latente. Se expone en el artículo que [2] demostraron
empíricamente, utilizando tanto anotadores simulados como anotadores reales de AMT,
que, para varias tareas, su nueva propuesta, basada en un regresor logístico, puede ser
competitiva contra otras propuestas de la literatura.
[2] exponen que contrariamente a lo que varios autores expresan en la literatura, donde
"...ha habido una tendencia a incluir etiquetas verdaderas no observadas como variables
latentes en un marco probabilístico...", ellos proponen que "el enfoque debe estar en los
anotadores, y también incluir las confiabilidades desconocidas de los anotadores como
variables latentes puede ser mejor, ya que no solo conduce a modelos más simples que
son menos propensos al sobreajuste, sino que también pasa por alto el problema de la
gran cantidad de posibles etiquetas para eliminar."
7.6.3 Descripción del modelo propuesto
De nuevo, en [2], los autores proponen un modelo donde su principal algoritmo se baja en
la estimación de la máxima verosimilitud entre los anotadores, y es allí donde [2] usan el
algoritmo Expectation-Maximization (EM), donde se indica que "...para optimizar este
problema de maximización que de otro modo sería intratable. El algoritmo EM es un
método iterativo para encontrar soluciones de máxima verosimilitud para modelos
probabilísticos con variables latentes, y consta de dos pasos: el paso E y el paso M. En el
paso E, la distribución posterior de las variables latentes se calcula en función de los
parámetros del modelo actual. Esta distribución posterior se utiliza para estimar los nuevos
parámetros del modelo (M-step). Estos dos pasos se repiten hasta la convergencia."
Figura 7-4: Representación de platos del modelo propuesto por [2].
28 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
7.6.4 Pruebas
Para el trabajo con anotadores simulados y con el objetivo de comparar los enfoques
presentados en diferentes tareas de clasificación, [2] utilizaron seis bases de datos de del
repositorio UCI5, el cual, como lo mencionan los autores "...es una colección de bases de
datos, teorías de dominio y generadores de datos que son utilizados por la comunidad de
aprendizaje automático para el análisis empírico de algoritmos de aprendizaje automático."
Tabla 7-2: Descripción general de las bases de datos usadas por [2] para sus pruebas.
Bases de datos usadas por [2] para sus pruebas
Nombre Número de atributos Número de muestras Número de clases
Annealing 38 798 6
Image segmentation 19 2310 7
Ionosphere 34 351 2
Iris 4 150 3
Parkinson 23 197 2
Wine 13 683 3
Al igual que en este trabajo, las bases de datos usadas por [2] no tienen etiquetas de varios
anotadores; así que [2] generó los anotadores sintéticos usando el conjunto de datos
reales, donde mediante la implementación de dos métodos: "El primer método,
29
denominado '' volteos de etiqueta '', que consiste en voltear aleatoriamente la etiqueta de
una instancia con una probabilidad uniforme para simular un anotador con una
confiabilidad promedio; y el segundo método, denominado "ruido modelo", busca
simuladores de anotaciones que sean más consistentes en sus opiniones." Por otro lado,
ya en la parte de pruebas, [2] indica que, para todas las pruebas, el algoritmo EM se
inicializó con votación mayoritaria.
7.6.5 Conclusiones
Finalmente [2] concluye que su propuesta es "...de fácil implementación y extensión a otros
clasificadores, donde en la mayoría de las condiciones, el enfoque propuesto logra
resultados comparables o incluso mejores en comparación con un modelo de vanguardia
(Raykar et al., 2009, 2010) a pesar de su conjunto de parámetros mucho más pequeño
para modelar la experiencia de los anotadores..." y que como trabajo futuro "explorará el
comportamiento del modelo propuesto cuando relajemos la suposición de que la
confiabilidad de los anotadores no depende de las instancias que están etiquetando, de
manera similar a lo que se hace en Yan et al. (2010) Además, también se investigará la
generalización de las tareas de etiquetado de secuencia.".
7.7 Learning from crowds - LFC
7.7.1 Tipo de salida
Modelo entrenado con el conjunto de datos de etiquetas estimadas listo para trabajar con
nuevas muestras.
7.7.2 Descripción general
Como se ha venido mencionando en este trabajo y en los artículos previamente descritos,
el problema principal es el manejo de conjuntos de datos con múltiples anotadores. Los
autores en [9] presentan este problema donde su motivación nace del área del diagnóstico
asistido por computadora (CAD, Computer Assisted Diagnosis, por sus siglas en inglés.),
30 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
donde la tarea es construir un clasificador para predecir si una región sospechosa en una
imagen médica es maligna (cancerosa) o benigna y donde cada muestras es evaluada por
un panel médico (anotadores) que emiten la etiqueta correspondiente, la cuales son
inherentemente subjetivas y habrá una variación sustancial entre los diferentes anotadores
debido a múltiples factores como formación profesional, experiencia, entre otros.
7.7.3 Descripción del modelo propuesto
Es así como [9] opta por un enfoque probabilístico para abordar el problema de aprendizaje
supervisado con múltiples anotadores que proporcionan etiquetas (posiblemente
ruidosas), todo sin contar con los valores reales de las etiquetas. Adicionalmente, el
algoritmo propuesto por los autores evalúa a los diferentes expertos y proporciona una
estimación de las etiquetas ocultas reales.
Al igual que los otros artículos descritos en este trabajo, [9] indica que la votación por
mayoría asume que todos los expertos son de igual experticia; sin embargo, por ejemplo,
si solo hay un experto y el resto son novatos, y los novatos emiten la misma etiqueta
incorrecta a una instancia en especial; el método de votación por mayoría favorece a los
novatos ya que son mayoría y dejaría relegada la opinión del experto por ser minoría.
[9] aborda este problema utilizando un estimador de máxima verosimilitud que, en un
mismo algoritmo o función, entrena el clasificador, calcula la precisión de cada anotador y
calcula conjunto de datos de única etiqueta estimada, de este modo, el algoritmo propuesto
descubre automáticamente a los mejores expertos y les asigna un mayor peso.
7.7.4 Algoritmo EM
El núcleo de la propuesta de [9] es el algoritmo EM (Expectation-Maximization, por sus
siglas en inglés) el cual está diseñado para encontrar la máxima verosimilitud de un modelo
cuando se tiene datos faltantes o con ruido. EM funciona básicamente generando
iterativamente un conjunto de datos de única etiqueta estimada, para posteriormente medir
el desempeño de los expertos dado ese conjunto de datos y finalmente, refina este
conjunto de datos en función de las medidas de desempeño obtenidas.
31
[9] describe el algoritmo EM en general como: "...cada iteración del algoritmo EM consta
de dos pasos: un paso de Expectation (E) y un paso de Maximization (M). El paso M implica
la maximización de un límite inferior en la probabilidad logarítmica que el paso E refina en
cada iteración. Estos dos pasos pueden repetirse hasta la convergencia. La probabilidad
logarítmica aumenta monotónicamente después de cada iteración, lo que en la práctica
implica convergencia a un máximo local. El algoritmo EM solo garantiza la convergencia a
un máximo local. En la práctica, los reinicios múltiples con diferentes inicializaciones
pueden mitigar el problema máximo local. En este artículo usamos el voto mayoritario como
la inicialización para iniciar el algoritmo EM".
[9] indica que se puede utilizar cualquier tipo de clasificador para ser implementado dentro
de su algoritmo, sin embargo, en el artículo, los autores implementaron un modelo de
regresión logística, el cual sirve perfectamente para el problema de clasificación binaria
expuesto en el artículo.
7.7.5 Pruebas
[9] realizó diferentes pruebas utilizamos dos conjuntos de datos CAD y uno de texto. Los
conjuntos de datos CAD incluyen un conjunto de datos de mamografía digital y un conjunto
de datos de resonancia magnética de mama, ambos probados por biopsia, por lo que se
cuenta con el conjunto de datos reales. Para el conjunto de datos de mamografía digital,
[9] simuló a los radiólogos para verificar el algoritmo propuesto. [9] adicionalmente indica
que los datos de la RM de mama tienen anotaciones de cuatro radiólogos.
7.7.6 Conclusiones
Finalmente, los autores indican que su algoritmo propuesto "...establece iterativamente un
ground truth estimado particular, mide el rendimiento de los anotadores dado ese ground
truth estimado, y luego refina el ground truth estimado basado en las medidas de
rendimiento." Sin embargo [9] menciona que se hicieron las siguientes suposiciones: "(1)
el rendimiento de cada anotador no depende del vector de característica para un caso
dado y (2) está condicionado a la verdad: los expertos son independientes, es decir,
32 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
cometen sus errores de forma independiente." lo cual puede generar algunos problemas,
ya que, en ciertos ámbitos, la calidad de las etiquetas proporcionadas por un anotador
puede depender del experimento que se esté evaluando.
Para efectos de este trabajo, el resultado de la implementación del algoritmo propuesto en
[9] consiste en un clasificador basado en regresión lineal pre entrenado con un conjunto
de datos de etiquetas estimadas.
8. Descripción de las bases de datos
En esta sección se describirán las características generales de cada una de las bases de
datos que serán usadas en este trabajo, con el objetivo de conocer un poco más sobre la
procedencia y cuales son los datos que cada una de ellas almacena.
Por otro lado, una de las razones de tener varias bases de datos con diferentes
características y de diferentes ámbitos es de que las pruebas sean ejecutadas bajo
diferentes ambientes, permitiendo así, evaluar mejor el rendimiento de los algoritmos bajo
diferentes condiciones.
8.1 Bases de datos generales
8.1.1 Parkinson
Como lo menciona [21] "Esta base de datos fue creada por Max Little, de la Universidad
de Oxford, en colaboración con el National Centre for Voice and Speech en Denver,
Colorado, que grabó las señales de voz. El estudio original publicó los métodos de
extracción de características para los trastornos generales de la voz.".
Adicionalmente, [22] indica que las columnas representan diferentes medidas de voz y
cada fila o experimento corresponde a la grabación individual de la voz de un paciente,
donde el objetivo de los datos es discriminar entre personas sanas y personas con
Parkinson de acuerdo con las diferentes características medidas de la voz.
Es así como este conjunto de datos cuenta con 197 muestras, con 23 atributos de tipo real,
los cuales tiene por clase, en la columna “status”, una respuesta binaria, Sano:0 y No
34 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Enfermo:1. En la siguiente tabla se listan las características principales de esta base de
datos:
Tabla 8-1: Descripción general de los atributos de la base de datos Parkinson.
Descripción general base de datos Parkinson
Total muestras Total atributos Tipo de atributos Datos faltantes? Número de clases
197 23 Real - 2
8.1.2 Breast Cancer
Como lo menciona [23], este conjunto de datos fue creado por el Dr. William H. Wolberg,
del Departamento General de Cirugía del Hospital de la Universidad de Wisconsin en
Madison, Wisconsin, Estados Unidos. Esta base de datos describe cada muestra con
atributos relativos a las características de núcleos celulares de muestras de tejido mamario,
las cuales fueron analizadas por el programa Xcyt, el cual es capaz de realizar el análisis
de características citológicas basado en un escáner digital.
Es así como este conjunto de datos cuenta con 569 muestras, con 32 atributos de tipo real,
los cuales tiene por clase una respuesta binaria, Tiene Cáncer: 1 y No Tiene Cáncer: 0. En
la siguiente tabla se listan las características principales de esta base de datos:
Tabla 8-2: Descripción general de los atributos de la base de datos Breast Cancer.
Descripción general base de datos Breast Cancer
Total muestras Total atributos Tipo de atributos Datos faltantes? Número de clases
569 32 Real No 2
35
8.1.3 Vertebral Column
[24] describe que esta base de datos biomédica fue construida por el Dr. Henrique da Mota
en el Grupo de Investigación Aplicada en Ortopedia (GARO) del Centre Médico-
Chirurgical de Réadaptation des Massues, Lyon, Francia.
[24] indica que este conjunto de datos puede ser usado o implementado de dos maneras;
primero, en la clasificación de tres tipos de lesiones de la columna vertebral, normal, hernia
discal y espondilolistesis; y segundo, la cual será usada en este trabajo, en la clasificación
de dos categorías, paciente con lesión y paciente normal.
Es así como este conjunto de datos cuenta con 310 muestras, con 6 atributos de tipo real,
los cuales tiene por clase una respuesta binaria, Tiene Lesión: 1 y No Tiene Lesión: 0. En
la siguiente tabla se listan las características principales de esta base de datos:
Tabla 8-3: Descripción general de los atributos de la base de datos Vertebral Column.
Descripción general base de datos Vertebral Column
Total muestras Total atributos Tipo de atributos Datos faltantes? Número de clases
310 6 Real - 2
8.1.4 Ionosphere
Para esta base de datos, [25] describe que estos datos de radar fueron recogidos por un
sistema en Goose Bay, Labrador, el cual consiste en un conjunto de 16 antenas de alta
frecuencia. [25] indica que el objetivo eran electrones libres en la ionosfera, donde
"buenos" retornos de radar son aquellos que muestran evidencia de algún tipo de
estructura en la ionosfera y los retornos "malos" son aquellos que demuestran algún tipo
de estructura.
Es así como este conjunto de datos cuenta con 351 muestras, con 34 atributos de tipo real,
los cuales tiene por clase una respuesta binaria, Buen Retorno: “good” y No Mal Retorno:
“bad”. En la siguiente tabla se listan las características principales de esta base de datos:
36 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Tabla 8-4: Descripción general de los atributos de la base de datos Ionosphere.
Descripción general base de datos Ionosphere
Total muestras Total atributos Tipo de atributos Datos faltantes? Número de clases
351 34 Entero, real No 2
8.2 Bases de datos reales
Con el objetivo de probar los diferentes algoritmos sobre una base de datos real, obtuvimos
de [19] la base de datos Sentiment Polarity Dataset [BD-6], que como indica [19], es una
base de datos que originalmente consistía en más de diez mil frases, cada una etiquetada
como positiva o negativa, donde posteriormente alrededor de cinco mil frases fueron
puestas en AMT para ser evaluadas por varias personas reales y así, generar una base
de datos con múltiples anotadores. Finalmente [19] menciona esta base de datos sufrió un
post-procesamiento de texto y atributos donde finalmente resulta una base de datos con
1200 características de 5000 muestras.
Tabla 8-5: Descripción general de los atributos de la base de datos Sentiment Polarity.
Descripción general base de datos Sentiment Polarity
Total
muestras
Total
atributos
Tipo de
atributos
Datos
faltantes?
Número de
clases Anotadores
5000 1200 Entero, real Si 2 203
9. Obtención y preparación de las bases de datos.
Este paso consiste es obtener y realizar un corto pero importante pre procesamiento para
poder empezar a trabajar con las bases de datos anteriormente mencionadas. De este
modo, los siguientes pasos fueron aplicados para cada una de las bases de datos que se
trabajarán aquí.
▪ Obtener la base de datos del repositorio de la UCI o del repositorio web público del
autor del artículo que permite su uso.
▪ Programar un algoritmo en Python para leer los datos correctamente y separar los
atributos de las etiquetas.
▪ Generar un arreglo para los atributos y otro arreglo para las etiquetas, dejando así
listas las variables para el siguiente paso.
9.1 Generación sintética de anotadores
Después de realizar el paso anterior, se proceden a utilizar las etiquetas reales de las
bases de datos para generar cinco anotadores sintéticos y de este modo, generar nuevas
bases de datos de múltiples anotadores. Las razones de realizar este procedimiento se
explican en que: i) utilizar bases de datos populares y ampliamente reconocidas en el
ámbito académico como las del repositorio de la UCI, las cuales no solo permiten realizar
comparaciones con los resultados de los artículos aquí citados, sino que permiten contar
con las etiquetas reales. ii) simular múltiples anotadores con bases de datos de etiqueta
única verdadera conocida, permite comparar el rendimiento de los algoritmos entre sus
resultados y el valor real.
38 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Por otro lado, la generación sintética de anotadores, implementada en este trabajo, busca
imitar el conocimiento dispar o distribuido entre los diferentes integrantes de un panel de
expertos, etiquetadores o fuentes de información que etiquetan cada muestra en los
conjuntos de datos [16]. Es así como se decidió utilizar la Distribución de Bernoulli como
herramienta estadística que permitiese que, basados en las etiquetas reales, generar cinco
anotadores sintéticos con etiquetas con precisión variable con respectos a las etiquetas
reales; es decir, cada anotador simulado se le asigna un grado de precisión el cual varía
entre 1, siendo exactamente igual a las etiquetas reales y 0 siendo completamente
opuesto. Esto lo que finalmente permite es simular, en cierto grado, la variabilidad de
conocimiento de los anotadores y no asumir directamente que todos los anotadores tienen
el mismo conocimiento sobre los datos evaluados.
9.2 Generación de la distribución de probabilidad
Se desea generar entonces una distribución de probabilidad que simule la precisión en
cuanto a aciertos y errores en la clasificación binaria de un anotador real; de este modo, la
Distribución de Bernoulli permite generar un vector de valores aleatorios B de tamaño m,
donde m es la cantidad de muestras o pruebas de la base de datos a muestrear; con una
asimetría 𝑌1, donde 𝑌1 representa la precisión de cada anotador; y valores entre 0 y 1,
donde 0 indica que el anotador se equivoca y 1 indica que el anotador acierta en la
predicción de clase del experimento 𝑋𝑖 .
De este modo, se definió una precisión 𝑌1 diferente para cada uno de los cinco anotadores
con el objetivo de simular, como se mencionó anteriormente, la variabilidad de
conocimiento entre los integrantes de un panel de expertos o evaluadores. Se definió
entonces un vector de precisión de anotadores 𝑌a = [0.9, 0.7, 0.5, 0.4, 0.3]
9.3 Generación del vector de anotaciones sintéticas
Teniendo ya lista la Distribución de Bernoulli para cada uno de los anotadores, se procede
a crear el vector de anotaciones sintéticas para cada anotador. Este procedimiento
consiste básicamente en que si para el experimento 𝑋𝑖 , el vector de la Distribución de
Bernoulli en la posición 𝐵𝑖 indica 1, la anotación sintética será igual a 𝑌𝑖 y, si el vector de la
39
Distribución de Bernoulli en la posición 𝐵𝑖 indica 0, la anotación sintética será la clase
opuesta de 𝑌𝑖.
9.4 Pre procesamiento base de datos Sentiment Polarity
Con el objetivo de realizar las diferentes pruebas de los algoritmos seleccionados en este
trabajo sobre una base de datos real y poder comparar su rendimiento frente a las otras
bases de datos con múltiples anotadores generados sintéticamente, se procedió a realizar
un pre procesamiento de la base de datos Sentiment Polarity, el cual incluyó las siguientes
partes:
9.4.1 Selección de características
La base de datos original cuenta con 1200 características diferentes para cada una de las
muestras; número que indica una alta dimensionalidad del conjunto de datos y que
empíricamente comprobamos que estaba afectando el rendimiento de todos los
algoritmos; incluso el algoritmo de referencia Límite Superior, que utiliza una regresión
lineal con las etiquetas reales de la base de datos. De este modo se realizó un análisis de
Selección de Características utilizando la técnica de Embedded Model para entrenar un
modelo ensamblado de Arboles Binarios para seleccionar el conjunto de 50 características
principales.
9.4.2 Selección de muestras y anotadores.
La mayoría de los algoritmos seleccionados para implementar en este trabajo soportan el
manejo de etiquetas faltantes, sin embargo, para llevar a cabo esto, se deben realizar
ajustes de implementación en los códigos de todos los algoritmos, lo cual excedería los
objetivos trazados para este trabajo. Por tal motivo, para trabajar con muestras con todas
sus etiquetas, se procedió a realizar un pre procesamiento en esta base datos donde se
seleccionaron las pruebas etiquetados por la mayor cantidad de anotadores posible.
Después de pasar por los dos procesos anteriormente descritos, la base de datos de
Sentiment Polarity que se usó en este trabajo, tiene las siguientes características:
40 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Tabla 9-1: Descripción de la base de datos Sentiment Polarity después del pre
procesamiento con selección de características y selección de anotadores.
Total
muestras
Total
atributos
Tipo de
atributos
Datos
faltantes?
Número
clases Anotadores
347 50 Entero, real No 2 3
10. Implementación de los algoritmos
Uno de los objetivos principales de este trabajo es implementar los algoritmos de
aprendizaje de máquina con múltiples anotadores que han sido seleccionados del estado
del arte, más dos algoritmos de referencia. Es así como en esta sección se describirán
brevemente cómo fue la implementación de cada uno de los algoritmos de este trabajo y
las funciones auxiliares que se implementaron.
Adicionalmente a completar los objetivos de este trabajo y con el ánimo de compartir con
toda la comunidad los productos y conclusiones generados en el desarrollo de este
proyecto; todos los algoritmos y procedimientos se pueden encontrar en
https://github.com/FelipeGarcia911/LearningFromCrowds de manera publica.
10.1 Descripción general
Todos los algoritmos implementados en este trabajo se implementaron sobre Python 3.7 y
usando como IDE los notebooks de Jupyter.
10.2 Conjunto de funciones generales
Al realizar la implementación, se encontró que varias tareas debían realizar varias veces a
través de los diferentes notebooks de bases de datos o de los algoritmos, por lo cual se
decidió implementar una serie de archivos que exportan diferentes funciones para ser
utilizadas por otros archivos. Lo que esto permite es reutilización y centralización del código
de funciones recurrentes, lo que generar un mejor orden en la implementación. Los grupos
de funciones generados son:
42 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Database.py: Conjunto de funciones que permite extraer la URI las bases de datos a
procesar por los algoritmos de múltiples anotadores.
Evaluation.py: Conjunto de funciones que permiten evaluar y graficar el rendimiento de los
algoritmos de múltiples anotadores.
Functions.py: Conjunto de funciones que permite almacenar las bases de datos después
de su pre procesamiento.
Preprocessing.py: Conjunto de funciones que permite realizar algunas tareas básicas de
pre procesamiento a las bases de datos.
10.3 Bases de datos de la UCI
Para el pre procesamiento de cada una de las bases de datos, se generaron una serie de
notebooks en los cuales básicamente se separaron las columnas de los atributos de la
columna de la clase predictora, luego se generaron los anotadores sintéticos usando el
algoritmo mencionado anteriormente que usa la Distribución de Bernoulli para generar
cinco anotadores diferentes; y finalmente se almacenaron por separado los datos de los
atributos y los datos de los anotadores en archivos CSV.
En general, la única transformación realizada a los datos fue cambiar la clase predictora
de cada experimento, que normalmente estaba expresada como una cadena de texto (ej.
pos, neg.) por una variable booleana del tipo True o False. Esto se realizó con el objetivo
de estandarizar el tipo de variable en la clase de todas las bases de datos.
10.4 Bases de datos Sentiment Polarity de AMT
Esta base de datos, a diferencia de las usadas anteriormente, pasó por un pre
procesamiento más avanzado, dado que al ser datos reales de AMT y ser usados en los
algoritmos aquí implementados, se requería de una estructura especial.
43
Al igual que las anteriores bases de datos, se separan las columnas de los atributos de la
columna de la clase predictora, donde se procedió a realizar el procedimiento de Selección
de Características con el fin de reducir su alta dimensionalidad de 1200 características a
un número más manejable de 50 características. Posteriormente se procede a realizar el
proceso de selección de anotadores donde fundamentalmente se busca obtener el máximo
número de muestras etiquetadas por el mismo grupo de anotadores; lo cual da como
resultado un conjunto de datos de 347 muestras con 3 anotadores. A continuación se
procede a construir el conjunto de datos de las etiquetas por muestra de cada anotador y
finalmente se almacenaron por separado los datos de los atributos y los datos de los
anotadores en archivos CSV.
10.5 Implementación de los algoritmos
Se procedió a implementar cada uno de los siete algoritmos (cinco del estado del arte y
dos de referencia) en su propio notebook, utilizando las funciones de apoyo anteriormente
descritas y algunas librerías de aprendizaje de máquina de Python como SkitLearn.
En general, los autores de los algoritmos elegidos tienen sitios web o repositorios donde
se puede acceder y descargar sus implementaciones de manera gratuita y libre, sin
embargo se encontró que muchos de los autores utilizaban lenguajes como MatLab o Julia,
los cuales tienen inconvenientes como los costos de uso fuera de entornos académicos o
baja popularidad entre la comunidad de código abierto.
Para efectos de este trabajo, se utilizaron las implementaciones de algunos de los
algoritmos que [16] realizó para su trabajo, esto como objetivo de tener un solo lenguaje
del cual traducir y por otro lado, de tener cierto grado de confiabilidad de que los códigos
en los cuales nos estamos basando provengan de una fuente confiable.
10.6 Diseño y programación de los algoritmos implementados
El trabajo principal de este documento consiste en la implementación y pruebas sobre
Python de una selección de algoritmos de clasificación binaria con múltiples anotadores.
Es así como en esta sección se describirá como fue el diseño y programación del proyecto
de software que implementó estos algoritmos y el cual se puede consultar online en [26].
44 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
10.6.1 Configuración entorno de desarrollo
El entorno de desarrollo se configuró un MacBook Air 2013 con 8GB RAM y Core i7, al
cual se le instaló Anaconda Navigator como plataforma para la administración de los
paquetes y programas que se usaron para el desarrollo. En la parte de software, se utilizó
Python 3.7.4 como lenguaje de programación y Jupyter Notebooks como IDE de
programación.
10.6.2 Software de control de versiones
Con el objetivo de manejar las diferentes versiones de los códigos implementados, generar
un entorno de desarrollo moderno, seguro, escalable y compartir los algoritmos aquí
desarrollados con toda la comunidad, se decidió implementar el software de control de
versiones GIT, en donde la plataforma online seleccionada fue GitHub, la cual es bastante
popular y ampliamente conocida en la comunidad de desarrollo de software. Es así como
en el repositorio online de GitHub de [26] se puede consultar todo el proyecto.
10.6.3 Estructura del proyecto de software
Básicamente el proyecto fue dividido en tres partes o módulos principales con el objetivo
de separar las diferentes funcionalidades o etapas y mantener un entorno de desarrollo
limpio y organizado.
El primer módulo se llama Python y es una carpeta que contiene diferentes archivos de
Python, los cuales tienen funciones generales y usadas a través de todo el proyecto. Aquí
se pueden encontrar funciones para leer y guardar archivos CSV, generar gráficas y
evaluar los algoritmos entre otras. El objetivo de este módulo es agrupar funciones usadas
en más de un archivo y así evitar duplicar código en cada libro de Jupyter que lo necesitara.
El segundo módulo se llama Databases y es una carpeta que contiene los libros de Jupyter
que los que se realizaron el pre procesamiento de la base de dato de AMT y la generación
de los anotadores sintéticos para las bases de datos de la UCI. El objetivo de este módulo
es agrupar todos los libros de Jupyter relacionados con las bases de datos. Finalmente, el
tercer y último módulo se llama Algoritmos, donde se encuentran en carpetas individuales,
45
todos los libros de Jupyter con las implementaciones de cada uno de los algoritmos aquí
evaluados.
10.7 Algoritmos seleccionados del estado del arte
La implementación de los cinco algoritmos del estado fue básicamente la misma, en donde
la única diferencia entre uno y otro es el tipo de resultado que entrega cada uno, donde,
como se mencionó en la descripción de cada uno de los artículo a implementar, unos
modelos entregan un clasificador listo para ingresar nuevas muestras con múltiples
anotadores, mientras que otros entregan un conjunto de datos de etiquetas estimadas, el
cual se ingresa a un modelo de Regresión Lineal el cual se entrena con estos datos y
posteriormente se evalúa su rendimiento con el conjunto de datos de pruebas.
De este modo, para los algoritmos que entregan un modelo pre entrenado, los pasos de
su implementación fueron:
1. Requerir librerías de Python.
2. Requerir funciones de ayuda propias.
3. Codificar las funciones relativas al algoritmo de múltiples anotadores.
4. Cargar las bases de datos de prueba.
5. Obtener el modelo pre entrenado con los múltiples anotadores.
6. Predecir nuevas etiquetas con el conjunto de pruebas.
7. Evaluar los resultados del algoritmo.
Y, para los algoritmos que entregan un conjunto de datos de única etiqueta estimada, los
pasos de su implementación fueron:
1. Requerir librerías de Python.
2. Requerir funciones de ayuda propias.
3. Codificar las funciones relativas al algoritmo de múltiples anotadores.
4. Cargar las bases de datos de prueba.
5. Obtener el conjunto de datos de única etiqueta estimada.
46 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
6. Entrenar el modelo de referencia con el conjunto de datos de etiquetas reales.
7. Predecir nuevas etiquetas con el conjunto de pruebas.
8. Evaluar los resultados del algoritmo.
10.8 Algoritmos de referencia
Para los algoritmos de referencia Límite Inferior - Voto Mayoritario y el Límite Superior -
Regresión Lineal con conjunto de datos reales, su implementación fue diferente a los
algoritmos seleccionados del estado del arte, esto debido a que de cierta forma, son más
sencillos y requería de un procedimiento diferente.
Para implementar el algoritmo de Límite Inferior - Voto Mayoritario, primero se debe
generar la etiqueta estimada, la cual se generó usando un Hard Voting, es decir, se asigna
la etiqueta más popular entre los anotadores como la etiqueta de salida, construyendo así
el conjunto de datos de única etiqueta estimada. Finalmente se entrena el modelo de
regresión lineal con este conjunto de datos y se evalúa el modelo.
10.9 Estimación de las etiquetas para Límite Inferior - Voto Mayoritario:
1. Requerir librerías de Python.
2. Requerir funciones de ayuda propias.
3. Cargar la base de datos de las etiquetas de múltiples anotadores
4. Estimar las etiquetas utilizando hard voting.
5. Guardar el nuevo conjunto de datos de única etiqueta estimada.
Finalmente, en la parte de implementación del algoritmo como tal, los modelos de Límite
Inferior - Voto Mayoritario y Límite Superior - Regresión Lineal con el conjunto de datos de
valores reales, siguen los mismos pasos, con la única diferencia que el primero usa las
etiquetas estimadas por Hard Voting mientras que el segundo utiliza las etiquetas reales
de las bases de datos.
1. Requerir librerías de Python.
47
2. Requerir funciones de ayuda propias.
3. Cargar las bases de datos de atributos y etiquetas.
4. Entrenar el modelo con el conjunto de datos de entrenamiento.
5. Predecir nuevas etiquetas con el conjunto de datos de pruebas.
6. Evaluar el rendimiento del modelo.
11. Resultados
En este capítulo se mostrarán los resultados tabulados de la evaluación de los algoritmos
en las bases de datos seleccionadas del estado del arte. Los resultados abordan diferentes
métricas de rendimiento como precisión, f1 score, Recall y ROC, las cuales nos permiten
evidencia de manera más detallada el comportamiento de cada uno de los algoritmos sobre
las diferentes bases de datos, y que posteriormente, servirán para analizar y concluir sobre
el rendimiento de cada uno de los algoritmos en atacar el problema de múltiples
anotadores.
11.1 Bases de datos con anotadores sintéticos
Posterior a la implementación de los algoritmos, se procedió a realizar las pruebas de
rendimiento de cada uno de ellos sobre las cuatro bases de datos seleccionadas, las
cuales, como se mencionó anteriormente, contienen el conjunto de datos reales y se les
aplicó un algoritmo para la generar cinco anotadores sintéticos con diferente experticia, lo
cual permite que se puedan usar para las pruebas en este caso de estudio.
11.2 Resultados generales
A continuación se mostrarán los resultados agrupados por métrica de rendimiento. El
objetivo es visualizar más claramente las diferencias entre algoritmos con respecto a una
misma métrica evaluada en las bases de datos.
49
11.2.1 Resultados generales: precisión
Tabla 11-1: Resultados generales de la precisión de los algoritmos frente a las bases de
datos seleccionadas.
Resultados generales de la precisión de los algoritmos
Algoritmo / Base de Datos Breast
Cancer
Vertical
Column Parkinson Ionosphere
Sentiment
Polarity
KA 0,92 0,75 0,90 0,82 0,41
LFC 0,89 0,81 0,77 0,73 0,42
MAE 0,92 0,81 0,88 0,79 0,63
PLAT 0,88 0,67 0,88 0,35 0,54
DGLR 0,63 0,60 0,63 0,85 0,43
Voto Mayoritario 0,61 0,57 0,56 0,56 0,55
Ground truth 0,95 0,77 0,92 0,92 0,56
11.2.2 Resultados generales: Recall
Tabla 11-2: Resultados generales de la métrica recall de los algoritmos frente a las
bases de datos seleccionadas.
Resultados generales de la métrica Recall
Algoritmo / Base de Datos Breast
Cancer
Vertical
Column Parkinson Ionosphere
Sentiment
Polarity
KA 0,92 0,75 0,90 0,82 0,41
LFC 0,89 0,80 0,78 0,73 0,42
MAE 0,92 0,81 0,88 0,79 0,62
PLAT 0,88 0,67 0,88 0,35 0,54
DGLR 0,63 0,60 0,63 0,85 0,43
Voto Mayoritario 0,61 0,57 0,63 0,56 0,55
Ground truth 0,95 0,77 0,92 0,92 0,56
50 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
11.2.3 Resultados generales: F1 score
Tabla 11-3: Resultados generales de la métrica F1 Score de los algoritmos frente a las
bases de datos seleccionadas.
Resultados generales de la métrica F1 Score
Algoritmo / Base de Datos Breast
Cancer
Vertical
Column Parkinson Ionosphere
Sentiment
Polarity
KA 0,92 0,74 0,90 0,82 0,39
LFC 0,89 0,81 0,78 0,74 0,42
MAE 0,92 0,81 0,88 0,79 0,62
PLAT 0,87 0,68 0,88 0,18 0,48
DGLR 0,63 0,61 0,65 0,85 0,42
Voto Mayoritario 0,60 0,53 0,58 0,54 0,55
Ground truth 0,95 0,76 0,91 0,92 0,55
11.2.4 Resultados generales: ROC
Tabla 11-4: Resultados generales de la métrica ROC de los algoritmos frente a las bases
de datos seleccionadas.
Resultados generales de la métrica ROC
Algoritmo / Base de Datos Breast
Cancer
Vertical
Column Parkinson Ionosphere
Sentiment
Polarity
KA 0,97 0,81 0,91 0,81 0,40
LFC 0,91 0,91 0,74 0,79 0,42
MAE 0,97 0,91 0,80 0,80 0,68
PLAT 0,94 0,78 0,88 0,77 0,66
DGLR 0,59 0,69 0,65 0,86 0,43
51
Voto Mayoritario 0,62 0,57 0,64 0,57 0,61
Ground truth 0,99 0,83 0,92 0,95 0,63
11.3 Resultados específicos por algoritmo
A continuación se mostrarán los resultados individuales para cada uno de los siete
algoritmos implementados. El objetivo es visualizar las diferentes métricas de rendimiento
de cada algoritmo frente a las bases de datos, permitiendo posteriormente en la sección
de discusión de resultados, un análisis más profundo y detallado de los resultados.
Adicionalmente en esta sección se mostrarán los resultados de rendimiento de los
algoritmos al ser expuestos a la base de datos real con múltiples anotadores Sentiment
Polarity. El objetivo es visualizar el rendimiento de los algoritmos sobre una aplicación real
donde se cuentan con las etiquetas reales, lo cual permite realizar una comparación del
rendimiento entre esta base de datos y las generadas sintéticamente. Los resultados se
mostrarán tabulados para cada uno de los algoritmos.
11.3.1 Algoritmo de referencia 1: Límite Inferior - Voto Mayoritario
Tabla 11-5: Resultados generales del rendimiento del modelo Límite Inferior - Voto
Mayoritario en las diferentes bases de datos seleccionadas
Resultados generales del rendimiento del modelo
Límite Inferior - Voto Mayoritario
Base de Datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,608 0,61 0,60 0,62
Vertical Column 0,569 0,57 0,53 0,57
Parkinson 0,628 0,63 0,58 0,64
Ionosphere 0,562 0,56 0,54 0,57
Sentiment Polarity 0,552 0,55 0,55 0,61
52 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Figura 11-1: Curvas ROC del modelo Límite Inferior para las bases de datos Breast
Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda)
y Ionosphere (Abajo Derecha).
11.3.2 Algoritmo de referencia 2: Límite Superior - Gold standard
Tabla 11-6: Resultados generales del rendimiento del modelo de Límite Superior en las
diferentes bases de datos seleccionadas
Resultados generales del rendimiento del modelo
de Límite Superior
53
Base de Datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,947 0,95 0,95 0,99
Vertical Column 0,774 0,77 0,76 0,83
Parkinson 0,915 0,92 0,91 0,92
Ionosphere 0,923 0,92 0,92 0,95
Sentiment Polarity 0,561 0,56 0,55 0,63
Figura 11-2: Curvas ROC del modelo Límite Superior para las bases de datos Breast
Cancer (Arriba-Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda)
y Ionosphere (Abajo Derecha).
54 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
11.3.3 Algoritmo KA
Tabla 11-7: Resultados generales del rendimiento del modelo [16] en las diferentes
bases de datos seleccionadas.
Resultados generales del rendimiento del modelo
KA
Base de Datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,918 0,92 0,92 0,97
Vertical Column 0,752 0,75 0,74 0,81
Parkinson 0,898 0,90 0,90 0,91
Ionosphere 0,819 0,82 0,82 0,81
Sentiment Polarity 0,409 0,41 0,39 0,40
Figura 11-3: Curvas ROC del modelo [16] para las bases de datos Breast Cancer (Arriba-
Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere
(Abajo Derecha).
55
11.3.4 Algoritmo MAE
Tabla 11-8: Resultados generales del rendimiento del modelo de [12] en las diferentes
bases de datos seleccionadas.
Resultados generales del rendimiento del modelo
MAE
Base de Datos / Algoritmo Precisión Recall F1 Score ROC
Breast Cancer 0,918 0,92 0,92 0,97
Vertical Column 0,806 0,81 0,81 0,91
Parkinson 0,881 0,88 0,88 0,80
Ionosphere 0,794 0,79 0,79 0,80
Sentiment Polarity 0,628 0,62 0,62 0,68
Figura 11-4: Curvas ROC del modelo [12] para las bases de datos Breast Cancer (Arriba-
Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere
(Abajo Derecha).
56 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
11.3.5 Algoritmo DLGR
Tabla 11-9: Resultados generales del rendimiento del modelo [2] en las diferentes bases
de datos seleccionadas.
Resultados generales del rendimiento del modelo
DLGR
Base de Datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,625 0,63 0,63 0,59
Vertical Column 0,602 0,60 0,61 0,69
Parkinson 0,627 0,63 0,65 0,65
Ionosphere 0,847 0,85 0,85 0,86
57
Sentiment Polarity 0,428 0,43 0,42 0,43
Figura 11-5: Curvas ROC del modelo [2] para las bases de datos Breast Cancer (Arriba-
Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere
(Abajo Derecha).
11.3.6 Algoritmo PLAT
Tabla 11-10: Resultados generales del rendimiento del modelo [7] en las diferentes bases
de datos seleccionadas.
Resultados generales del rendimiento del modelo
PLAT
58 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
Base de datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,877 0,88 0,87 0,94
Vertical Column 0,666 0,67 0,68 0,78
Parkinson 0,881 0,88 0,88 0,88
Ionosphere 0,352 0,35 0,18 0,77
Sentiment Polarity 0,542 0,54 0,48 0,66
Figura 11-6: Curvas ROC del modelo [7] para las bases de datos Breast Cancer (Arriba-
Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere
(Abajo Derecha).
59
11.3.7 Algoritmo LFC
Tabla 11-11: Resultados generales del rendimiento del modelo [9] en las diferentes bases
de datos seleccionadas.
Resultados generales del rendimiento del modelo
LFC
Base de datos / Métrica Precisión Recall F1 Score ROC
Breast Cancer 0,888 0,89 0,89 0,91
Vertical Column 0,806 0,80 0,81 0,91
Parkinson 0,770 0,78 0,78 0,74
Ionosphere 0,733 0,73 0,74 0,79
Sentiment Polarity 0,419 0,42 0,42 0,42
Figura 11-7: Curvas ROC del modelo [9] para las bases de datos Breast Cancer (Arriba-
Izquierda), Vertical Column (Arriba-Derecha), Parkinson (Abajo Izquierda) y Ionosphere
(Abajo Derecha).
60 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
12. Análisis de resultados
En esta sección se analizarán y discutirán los resultados obtenidos en la sección anterior
con el objetivo de evaluar los rendimientos en las diferentes métricas a través de las bases
de datos.
12.1 Análisis por algoritmo
En esta sección se analizarán los resultados de la métrica precisión de cada algoritmo,
esto, discutiendo de manera general cuáles han sido sus fortalezas y posibles debilidades
frente a las métricas y bases de datos evaluadas.
12.1.1 Algoritmo KA
Este modelo tuvo un rendimiento muy destacado con la base de datos Breast Cancer,
teniendo un resultado de 91.8% en precisión, resultado muy similar al 94.7% presentado
por el modelo entrenado con el conjunto de datos reales y evidentemente muy superior al
60.8% del modelo de majority voting. Un punto que valida estos resultados es que a pesar
de tener muy buenos resultados con esta base de datos, estos no superan el rendimiento
del conjunto de datos reales, lo que indica que modelo realiza un buen trabajo al
aproximarse al valor ideal y no se está sobre ajustando o sesgando en una sola clase.
Por otro lado, el peor rendimiento obtenido de este modelo con una base de datos de
anotadores sintéticos fue con la Ionosphere, en la cual obtuvo una precisión de 81.9%
frente a una precisión del 92,3% del conjunto de datos reales, sin embargo y a pesar de
ser los peores resultados para este tipo de base de datos, son mucho mejores que el 56.2%
obtenido por el modelo de majority voting.
62 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
En general este modelo propuesto por [16] presenta un rendimiento destacable entre todos
los algoritmos implementados, ya que presenta resultados consistentes en todas las
métricas evaluadas para todas las bases de datos, eso sí, a excepción de su rendimiento
con la base de datos Sentiment Polarity, el cual, por mucho, es la peor base de datos entre
todas los evaluados, no solo para este modelo, sino para la mayoría de los modelos
evaluados en este trabajo.
12.1.2 Algoritmo LFC
Al igual que KA, este modelo tuvo su mejor rendimiento con la base de datos Breast
Cancer, teniendo un resultado de 88.8% en precisión, sin embargo, al contrario del KA,
este modelo si se aleja un poco del resultado de 94.7% presentado por el modelo
entrenado con el conjunto de datos reales. Sin embargo, continúa siendo muy superior al
rendimiento del 60.8% presentado por el modelo de Límite Inferior - Voto Mayoritario, lo
cual lo perfila como una mejor opción que solo utilizar el algoritmo de Voto Mayoritario.
Por otro lado, el peor rendimiento obtenido de este modelo con una base de datos de
anotadores sintéticos fue con la Ionosphere, en la cual obtuvo una precisión de 73.3%
frente a una precisión del 92,3% del conjunto de datos reales, sin embargo y a pesar de
ser los peores resultados para este tipo de base de datos, son mucho mejores que el 56.2%
obtenido por el modelo de Voto Mayoritario.
Este modelo, en general, presenta un comportamiento aceptable teniendo en cuenta el
modelo base Límite Inferior - Voto Mayoritario, ya que en todas las bases de datos de
anotadores sintéticos, LFC se comporta mejor que el algoritmo Límite Inferior - Voto
Mayoritario. Al igual que KA, su peor rendimiento general se encuentra con la base de
datos Sentiment Polarity, comportamiento que será analizado posteriormente.
Finalmente se puede analizar que en los resultados obtenidos en este trabajo, se
encontraron algunas inconsistencias, donde el rendimiento de este modelo supera el
rendimiento del modelo entrenado con el conjunto de datos reales, lo cual teóricamente no
puede ser posible, lo cual también será analizado posteriormente.
63
12.1.3 Algoritmo MAE
De nuevo, al igual que KA y PLAT, este modelo tuvo su mejor rendimiento con la base de
datos Breast Cancer, teniendo un resultado de 91.8%, el cual es bastante cercano al 94.7%
presentado por el modelo entrenado con el conjunto de datos reales. De nuevo, este
modelo es muy superior al rendimiento del 60.8% presentado por el modelo Límite Inferior
- Voto Mayoritario, lo cual lo perfila también como una mejor opción que usar Voto
Mayoritario.
De otro modo, el peor rendimiento obtenido de este modelo con una base de datos de
anotadores sintéticos fue con Parkinson, en la cual obtuvo una precisión de 88,1% frente
a una precisión del 91,5% del conjunto de datos reales, sin embargo y a pesar de ser los
peores resultados para este tipo de base de datos, son mucho mejores que el 62.8%
obtenido por el modelo de Voto Mayoritario.
En general, este modelo presenta un comportamiento bueno teniendo como base el
modelo de Voto Mayoritario, ya que en todas las bases de datos de anotadores sintéticos,
MAE se comporta mejor que Voto Mayoritario. Por otro lado y como elemento de posterior
análisis, se encuentra que el peor rendimiento de este modelo no es con la base de datos
Sentiment Polarity y que, de nuevo, como en PLAT, se encuentra que su rendimiento es
superior al gold standard.
12.1.4 Algoritmo PLAT
Este modelo tuvo un rendimiento destacado en la base de datos Parkinson, teniendo un
resultado de 88.1% en precisión, resultado muy similar al 91.5% presentado por el modelo
entrenado con el conjunto de datos reales y evidentemente muy superior al 62.8% del
modelo de Voto Mayoritario. Al igual que KA, un punto que valida estos resultados, es que
a pesar de tener buenos resultados con las bases de datos, todos ellos no superan el
rendimiento del conjunto de datos reales, lo que podría indicar que modelo realiza un buen
trabajo estimando las etiquetas.
64 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
Por otro lado, el peor rendimiento obtenido de este modelo con una base de datos de
anotadores sintéticos fue con Ionosphere, en la cual obtuvo una precisión de 35.2% frente
a una precisión del 92,3% del conjunto de datos reales, lo que puede indicar que el modelo
está prediciendo la etiqueta invertida, ya que tener un rendimiento inferior al 50% en una
tarea de clasificación binaria indica peores resultados que predecir al azar, por lo cual,
consideramos que en este caso, el modelo está invirtiendo los resultados. De este modo,
en este caso especial, para la base de datos Ionosphere, si es mejor utilizar el modelo de
Voto Mayoritario con una precisión del 56.2%.
En general, este modelo presenta un rendimiento poco aceptable, ya que presenta
resultados no muy consistentes en todas las métricas evaluadas para todas las bases de
datos, lo que puede indicar que el balanceo de etiquetas puede estar influyendo.
12.1.5 Algoritmo DLGR
Este modelo tuvo su mejor rendimiento en la base de datos Ionosphere, teniendo un
resultado de 84.7% en precisión, resultado cercano al 92.3% presentado por el modelo
entrenado con el conjunto de datos reales y evidentemente muy superior al 56.2% del
modelo de Voto Mayoritario. Al igual de KA y PLAT todos los resultados de precisión con
este modelo no superan el rendimiento del conjunto de datos reales, evitando el fenómeno
encontrado en los anteriores modelos que superan el rendimiento del conjunto de datos
reales.
De otro modo, y al contrario de otros modelos, el peor rendimiento obtenido de este modelo
con una base de datos de anotadores sintéticos fue con la Breast Cancer, en la cual obtuvo
una precisión de 62.5% frente a una precisión del 94,7% del conjunto de datos reales. Es
así como utilizar este modelo para esta base de datos no representa mejoras significativas
frente a implementar un modelo con Voto Mayoritario, ya que este ofrece un rendimiento
del 60.8% de precisión.
65
12.1.6 Algoritmo Upper bound - Gold standard
Como se ha venido mencionando, este algoritmo se basa en una Regresión Lineal
entrenada con el conjunto de datos reales de la base de datos a probar. El objetivo era
tener un límite superior de comparación, donde todos los modelos implementados en este
trabajo se pueden comparar, ya que teóricamente, este seria el limite superior. Sin
embargo y como se discutido en este capítulo, se han encontrado resultados donde los
algoritmos superan el rendimiento de este modelo, lo cual será discutido en el punto de
inconsistencias.
12.1.7 Algoritmo Límite Inferior - Voto Mayoritario
Del mismo modo que el anterior modelo, este modelo fue implementado sobre una
Regresión Lineal entrenado con las etiquetas generadas con el algoritmo de Voto
Mayoritario. El objetivo era tener un límite inferior de comparación donde los todos los
modelos implementados en este trabajo se puedan comparar con un modelo muy básico
y sencillo. Se ha encontrado igualmente, resultados en diferentes métricas que son
inferiores a las planteadas por este modelo, las cuales fueron discutidas previamente en
los modelos que las dieron como resultado.
12.2 Análisis por base de datos
A continuación se mostrarán los mejores algoritmos por métrica y base de datos, el objetivo
es visualizar el rendimiento según la base de datos. Para esta clasificación se omitieron
los resultados de métricas en discusión (rendimientos mejores que el del conjunto de datos
reales) ya que consideramos que las causas de su mejor rendimiento son defectos en las
respuestas del modelo.
Tabla 12-1: Mejores modelos por bases de datos y por métrica.
Mejores modelos por bases de datos y por métrica
Base de Datos / Modelo Precisión Recall F1 Score ROC
Breast Cancer KA - MAE KA - MAE KA - MAE KA - MAE
66 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
Vertical Column LFC - MAE KA KA KA
Parkinson KA KA KA KA
Ionosphere DLGR DLGR DLGR DLGR
Sentiment Polarity PLAT MV MV MV
12.2.1 Breast Cancer
Indiscutiblemente los mejores algoritmos fueron KA y MAE abarcando todas las métricas
evaluadas.
12.2.2 Vertical Column
Esta base de datos tiene resultados mixtos, donde tres modelos aparecieron como los
mejores en diferentes métricas. Sin embargo, se podría considerar como el mejor el
modelo KA ya que las métricas donde fue el ganador son más robustas que las donde
ganaron LFC y MAE.
12.2.3 Parkinson
En este caso, el mejor modelo indiscutiblemente fue KA siendo el mejor en todas las
métricas evaluadas.
12.2.4 Ionosphere
Como se mencionó anteriormente DLGR presentó un rendimiento notable en esta base de
datos, sin embargo presentó un rendimiento muy pobre en las demás.
12.2.5 Sentiment Polarity
Por un lado, está fue la base de datos con peor rendimiento de la mayoría de los algoritmos,
a lo cual podemos suponer un par de causas: primeramente, la cantidad de muestras no
es suficiente para que el clasificador pueda determinar la pertenencia a una clase de un
67
experimento y segundo, posiblemente que la base de datos no sea linealmente separable,
por lo cual cualquier implementación de un modelo de Regresión Lineal no sería adecuada.
Por otro lado, esta base de datos fue la que más presentó resultados inconsistentes con
los esperados para su límite superior, donde MAE y PLAT presentaron rendimientos
superiores a los esperados. Para este caso, se decidió construir la matriz de confusión
para ambos casos con el objetivo de visualizar cómo el modelo estaba clasificando. Se
encontró entonces que PLAT está sesgado hacia la clase negativa, donde gran cantidad
de muestras fueron clasificados como negativos, lo cual puede explicar su rendimiento
superior al gold standard; y finalmente, del mismo modo que PLAT, MAE presenta un leve
sesgo hacia la clase positiva. Cabe aclarar que la base de datos está balanceada en
muestras positivas y negativas, por lo cual, cualquier desbalanceo de los modelos, puede
repercutir en un incremento del rendimiento, sin ser necesariamente una predicción
correcta del modelo.
12.3 Análisis por métrica
Con el objetivo de visualizar de una mejor manera las diferencias de las métricas evaluadas
entre los modelos implementados y el modelo de referencia superior Límite Superior, se
procedió a calcular las siguientes tablas.
12.3.1 Precisión
La siguiente tabla mide la diferencia entre la precisión obtenida por cada algoritmo y la
obtenida por el Límite Superior.
Tabla 12-2: Diferencias de la métrica precisión por base de datos y algoritmo contra el
modelo de referencia superior Límite Superior.
Diferencias de la métrica precisión por base de datos y
algoritmo contra el modelo de referencia
68 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
Base de Datos / Modelo KA LFC MAE PLAT DLGR MV
Breast Cancer 2,90% 5,90% 2,90% 7,00% 32,20% 33,89%
Vertical Column 2,20% -3,20% -3,20% 10,80% 17,20% 20,50%
Parkinson 1,70% 14,50% 3,40% 3,40% 28,79% 28,70%
Ionosphere 10,40% 19,00% 12,90% 57,10% 7,60% 36,11%
Sentiment Polarity 15,20% 14,20% -6,70% 1,90% 13,30% 0,90%
12.3.2 Recall
La siguiente tabla mide la diferencia entre el Recall obtenido por cada algoritmo y la
obtenida por el Límite Superior.
Tabla 12-3: Diferencias de la métrica Recall por base de datos y algoritmo contra el
modelo de referencia superior Límite Superior
Diferencias de la métrica precisión por base de datos y
algoritmo contra el modelo de referencia
Base de Datos / Modelo KA LFC MAE PLAT DLGR MV
Breast Cancer 3,00% 6,00% 3,00% 7,00% 32,00% 34,00%
Vertical Column 2,00% -3,00% -4,00% 10,00% 17,00% 20,00%
Parkinson 2,00% 14,00% 4,00% 4,00% 29,00% 29,00%
Ionosphere 10,00% 19,00% 13,00% 57,00% 7,00% 36,00%
Sentiment Polarity 15,00% 14,00% -6,00% 2,00% 13,00% 1,00%
12.3.3 F1 score
La siguiente tabla mide la diferencia entre el F1 Score obtenido por cada algoritmo y la
obtenida por el Límite Superior.
Tabla 12-4: Diferencias de la métrica F1 Score por base de datos y algoritmo contra el
modelo de referencia superior Límite Superior.
69
Diferencias de la métrica F1 Score por base de datos y
algoritmo contra el modelo de referencia.
Base de Datos / Modelo KA LFC MAE PLAT DLGR MV
Breast Cancer 3,00% 6,00% 3,00% 8,00% 32,00% 35,00%
Vertical Column 2,00% -5,00% -5,00% 8,00% 15,00% 23,00%
Parkinson 1,00% 13,00% 3,00% 3,00% 26,00% 33,00%
Ionosphere 10,00% 18,00% 13,00% 74,00% 7,00% 38,00%
Sentiment Polarity 16,00% 13,00% -7,00% 7,00% 13,00% 0,00%
12.3.4 ROC
La siguiente tabla mide la diferencia entre el ROC obtenido por cada algoritmo y la obtenida
por el Límite Superior.
Tabla 12-5: Diferencias de la métrica ROC por base de datos y algoritmo contra el
modelo de referencia superior Límite Superior.
Diferencias de la métrica ROC por base de datos y
algoritmo contra el modelo de referencia.
Base de Datos / Modelo KA LFC MAE PLAT DLGR MV
Breast Cancer 2,40% 8,40% 2,40% 5,20% 40,00% 37,80%
Vertical Column 2,10% -7,90% -8,00% 4,96% 14,50% 25,90%
Parkinson 1,00% 18,10% 12,00% 4,50% 27,40% 28,10%
Ionosphere 14,30% 15,80% 14,70% 18,30% 8,80% 37,50%
Sentiment Polarity 22,30% 20,80% -5,80% -3,50% 19,80% 1,90%
70 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
12.4 Análisis general
Según los resultados y análisis anteriores, se tiene que la mayoría de los algoritmos
presentan un rendimiento aceptable en la evaluación con las bases de datos de la UCI con
múltiples anotadores sintéticos, no solo sus resultados en la métrica de precisión se
mantienen cercanos a la precisión del modelo entrenado los valores de referencia; sino
que en la mayoría de los casos, resultan ser una mejor opción que optar por el método de
referencia de límite inferior majority voting.
Por otro lado, la mayoría de los algoritmos tuvieron problemas con la base de datos de
AMT Sentiment Polarity dado que la precisión estuvo muy por debajo del modelo entrenado
los valores de referencia y en ocasiones estuvo incluso peor que el algoritmo de referencia
límite inferior majority voting.
La siguiente tabla muestra la clasificación de los algoritmos según su rendimiento
promedio, en la cual se tiene que algoritmos como MAE y KA se presentan como las
mejores opciones entre los algoritmos evaluados.
Tabla 12-6: Clasificación de los algoritmos según su rendimiento promedio.
Clasificación de los mejores algoritmos según su promedio de rendimiento en las cinco bases de datos.
Orden Algoritmo Promedio Precisión
1 Ground truth 0,82
2 MAE 0,81
3 KA 0,76
4 LFC 0,72
5 PLAT 0,66
6 DGLR 0,63
7 Voto Mayoritario 0,57
De otro modo, en la siguiente tabla y utilizando el F1 Score promedio como medida de
rendimiento, se obtiene que los algoritmos, aparte del Ground truth, MAE y KA de nuevo,
presentan el mejor rendimiento entre todos los algoritmos evaluados en este trabajo. Cabe
resaltar que el F1 Score es una medida más robusta para evaluar el rendimiento de un
71
algoritmo de aprendizaje de maquina ya que evalúa el promedio ponderado entre la
precisión y el recall, lo que estima de mejor manera el comportamiento del algoritmo en los
casos de seleccionar correctamente una u otra clase.
Tabla 12-7: Clasificación de los algoritmos según su F1 score promedio.
Clasificación de los mejores algoritmos según su F1 Score promedio en las cinco bases de datos
Orden Algoritmo Promedio F1 Score
1 Ground truth 0,82
2 MAE 0,80
3 KA 0,75
4 LFC 0,73
5 DGLR 0,63
6 PLAT 0,62
7 Voto Mayoritario 0,56
13. Conclusiones
En este trabajo presentamos la selección, implementación, evaluación y análisis de
resultados de cinco técnicas del estado del arte sobre aprendizaje de máquina con
múltiples anotadores. Cada uno de los algoritmos aquí tratados fue descrito
detalladamente con el objetivo de entender y exponer de manera resumida el
funcionamiento planteado por los autores. Posteriormente, se implementaron los
algoritmos en Python, utilizando como base los códigos liberados de los autores en
lenguajes como MatLab o Julia; los cuales posteriormente se evaluaron utilizando las
métricas de precisión, Recall, F1 Score y ROC, las cuales permitieron conocer desde
diferentes puntos de vista el rendimiento de cada uno de los algoritmos propuestos.
De este modo, se puede concluir que es posible desarrollar un comparativo no solo básico,
sino utilizando métricas más robustas, las cuales ofrecen al usuario una visión general del
rendimiento, bajo múltiples métricas de rendimiento, de las diferentes técnicas de
clasificación binaria con múltiples anotadores. Por otro lado, y más allá del tema principal
de este trabajo y como elemento importante a resaltar, se recomienda no evaluar la calidad
de un modelo o método de aprendizaje de máquina con sólo una métrica de rendimiento,
esto debido a que métricas como la precisión hacen un resumen general del
comportamiento del modelo y no permiten visualizar detalles que pueden indicar que el
modelo está sesgado hacia una clase u otra.
En general se pudo observar de primera mano que los autores citados en este documento
han presentado diferentes soluciones a los diferentes problemas que puede acarrear el
manejo de múltiples anotadores; algunos han presentados modelos de variables latentes
que modelan la experticia variante entre muestras de cada anotador, mientras que otros
presentan propuestas con algunas relajaciones de estas suposiciones.
74 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores Título de la tesis o trabajo de investigación
Según los resultados obtenidos, autores como [9] y [12], que implementan modelos que
usan algoritmos como el EM para solucionar problemas de optimización donde se busca
la máxima verosimilitud de una matriz de coeficientes y de este modo, determinar la
experticia de cada uno de los anotadores, han probado tener mejores resultados que
implementaciones más heurísticas como [7], donde se asumen supuestos que hacen que
el modelo propuesto sea sensible al balanceo de clases
En general se observa según la cantidad de artículos disponibles en la literatura y la
cantidad de citas de ellos, que los modelos de aprendizaje de máquina con múltiples
anotadores han venido aumentados su popularidad e importancia a través de los años y
más ahora con el crecimiento de la información de múltiples fuentes y nacimiento de
plataformas como Amazon Mechanical Turkey, que permiten de manera sencilla, ágil y
económica la recolección de información de muchas personas.
Bibliografía
[1] U. Fayyad, G. Piatetsky-Shapiro and P. Smyth, "The KDD process for extracting useful
knowledge from volumes of data", Communications of the ACM, vol. 39, no. 11, pp. 27-34,
1996.
[2] F. Rodrigues, F. Pereira and B. Ribeiro, "Learning from multiple annotators:
Distinguishing good from random labelers", Pattern Recognition Letters, vol. 34, no. 12, pp.
1428-1436, 2013.
[3] R. Filipe, "Probabilistic Models for Learning from Crowdsourced Data.", ResearchGate,
2016.
[4] Rodrigues, Filipe, and Francisco Pereira. "Deep learning from crowds." arXiv preprint
arXiv:1709.01779 (2017).
[5] "Amazon Mechanical Turk", Mturk.com, 2018. [Online]. Available:
https://www.mturk.com/. [Accessed: 29- Sep- 2018].
[6] D. Brabham, "Crowdsourcing as a Model for Problem Solving", Convergence: The
International Journal of Research into New Media Technologies, vol. 14, no. 1, pp. 75-90,
2008.
[7] RODRIGUES, Filipe; PEREIRA, Francisco; RIBEIRO, Bernardete. Gaussian process
classification and active learning with multiple annotators. En International Conference on
Machine Learning. 2014. p. 433-441.
78 Estudio comparativo de técnicas de clasificación binaria con múltiples anotadores
[8] ZHANG, Jing; WU, Xindong; SHENG, Victor S. Imbalanced multiple noisy labeling. IEEE
Transactions on Knowledge and Data Engineering, 2015, vol. 27, no 2, p. 489-503.
[9] RAYKAR, Vikas C., et al. Learning from crowds. Journal of Machine Learning Research,
2010, vol. 11, no Apr, p. 1297-1322.
[10] ZHANG, Jing; WU, Xindong; SHENG, Victor S. Learning from crowdsourced labeled
data: a survey. Artificial Intelligence Review, 2016, vol. 46, no 4, p. 543-576.
[11] GROOT, Perry; BIRLUTIU, Adriana; HESKES, Tom. Learning from multiple annotators
with Gaussian processes. En International Conference on Artificial Neural Networks.
Springer, Berlin, Heidelberg, 2011. p. 159-164.
[12] Yan, Y., Rosales, R., Fung, G., Schmidt, M., Hermosillo, G., Bogoni, L., ... & Dy, J.
(2010, March). Modeling annotator expertise: Learning when everybody knows a bit of
something. In Proceedings of the Thirteenth International Conference on Artificial
Intelligence and Statistics (pp. 932-939).
[13] RODRIGUES, Filipe, et al. Learning supervised topic models for classification and
regression from crowds. IEEE transactions on pattern analysis and machine intelligence,
2017, vol. 39, no 12, p. 2409-2422.
[14] RODRIGUES, Filipe Manuel Pereira Duarte. Probabilistic models for learning from
crowdsourced data. 2016. Tesis Doctoral.
[15] RISTOVSKI, Kosta, et al. Regression Learning with Multiple Noisy Oracles. En ECAI.
2010. p. 445-450.
[16] J. Gil-Gonzalez, A. Alvarez-Meza and A. Orozco-Gutierrez, "Learning from multiple
annotators using kernel alignment", Pattern Recognition Letters, vol. 116, pp. 150-156,
2018.
Bibliografía 79
[18] "Pattern Recognition and Machine Learning", Journal of Electronic Imaging, vol. 16,
no. 4, p. 049901, 2007. Available: 10.1117/1.2819119 [Accessed 14 January 2019].
[19] Howe, J., 2008. Crowdsourcing: Why the Power of the Crowd is Driving the Future of
Business, 1st Edition. Crown Publishing Group, New York, NY, USA.
[20] M. Esmaeily, H.S. Yazdi, S. Abbassi, R. Monsefi, Hierarchical cooperation of ex-
perts in learning from crowds, in: ICCKE, IEEE, 2016, pp. 211–217.
[21] Little, M. (2019). UCI Machine Learning Repository: Parkinsons Data Set. [online]
Archive.ics.uci.edu. Available at: https://archive.ics.uci.edu/ml/datasets/parkinsons
[Accessed 3 Aug. 2019].
[22] Little, M., McSharry, P., Roberts, S., Costello, D. and Moroz, I. (2007). Exploiting
Nonlinear Recurrence and Fractal Scaling Properties for Voice Disorder Detection. Nature
Precedings.
[23] H. Wolberg, W. (2019). UCI Machine Learning Repository: Breast Cancer Wisconsin
(Diagnostic) Data Set. [online] Archive.ics.uci.edu. Available at:
https://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Diagnostic) [Accessed
3 Aug. 2019].
[24] Barreto, G. and da Rocha Neto, A. (2019). UCI Machine Learning Repository: Vertebral
Column Data Set. [online] Archive.ics.uci.edu. Available at:
http://archive.ics.uci.edu/ml/datasets/vertebral+column [Accessed 3 Aug. 2019].
[25] Sigillito, V. (2019). UCI Machine Learning Repository: Ionosphere Data Set. [online]
Archive.ics.uci.edu. Available at: https://archive.ics.uci.edu/ml/datasets/ionosphere
[Accessed 3 Aug. 2019].
[26] Garcia Maya, A. (2019). FelipeGarcia911/LearningFromCrowds. [online] GitHub.
Available at: https://github.com/FelipeGarcia911/LearningFromCrowds [Accessed 16 Aug.
2019].