Está en la página 1de 7

____________________________________________________________________________________

ANÁLISIS DE TÉCNICAS DE CLASIFICACIÓN


Aplicación de métodos de clasificación para determinar potabilidad del agua
PROYECTO 2 MINERÍA DE DATOS
____________________________________________________________________________________

Marcelo Alvarado Salazar Tabita Maldonado Espinoza Oscar Valderrama Martínez


Universidad de Talca, Facultad de Universidad de Talca, Facultad de Universidad de Talca, Facultad de
Ingeniería, Campus Curicó Ingeniería, Campus Curicó Ingeniería, Campus Curicó
Malvarado17@alumnos.utalca.cl Tmaldonado15@alumnos.utalca.cl Ovalderrama17@alumnos.utalca.cl

Abstract: In this report an investigation of the museum.org/water/html/es/Treatment/Water-


"Water Quality" database is carried out in order to Related-Diseases.html
predict the class attribute of said base, referring to [3] OMS. (2019). Agua. https://www.who.int/es/news-
the potability of the water. For this, the algorithms room/fact-sheets/detail/drinking-water
C4.5, C5.0, KNN and Neural Networks were
[4] IBM. (2021). Data mining techniques.
applied. The main R libraries studied in the course https://www.ibm.com/cloud/learn/data-
were implemented to study and process information mining#toc-data-minin-mIX76RvV
through the application of data mining. Then, the
precision and error of each algorithm are observed. [5] Tan, P. N., Steinbach, M., & Kumar, V. (2006).
Introduction to data mining. Pearson Education.
Finally, these results are compared and in this way,
it is defined which algorithm is more assertive. .
Keywords: classification, water quality, KNN, ANN, Las enfermedades vinculadas con el agua
decision tree. son uno de los problemas de salud más
significativos en el mundo. El cólera y otras
I. INTRODUCCIÓN enfermedades diarreicas por sí solas son
responsables de casi 1,8 millones de muertes todos
La calidad del agua que se suministra a las los años como consecuencia de la insalubridad del
comunidades es una consideración importante en la agua ¡Error! No se encuentra el origen de la referencia..Sin
protección de la salud y el bienestar humano: “todos embargo, también existen otros riesgos, como la
los pueblos, cualesquiera que sean su etapa de esquistosomiasis, una enfermedad grave y crónica
desarrollo de condición social y económica, tienen provocada por lombrices parasitarias contraídas por
derecho a tener acceso a agua potable en la la exposición a agua infestada, y que en 2019 afectó
cantidad y en la calidad que corresponde a sus a 240 millones de personas ¡Error! No se encuentra el origen
de la referencia..
necesidades básicas” [1] OMS. (1998). Guías para la
calidad del agua potable. Vigilancia y control de los En este contexto, aplicar técnicas o métodos
abastecimientos de agua a la comunidad - OMS. Segunda
que ayuden a determinar la potabilidad del agua
Edición, 3, 271.
https://www.who.int/es/publications/i/item/9241545038 resulta beneficioso para la sociedad. Las técnicas de
minería de datos se adaptan ampliamente en
[2] National Academy of Sciences. (2021). El agua diversas aplicaciones de análisis de datos,
potable segura es esencial. https://www.koshland- permitiendo extraer conocimiento. Una técnica de
science-
clasificación es un enfoque sistemático para

1
construir modelos de clasificación a partir de un • Sólidos (sólidos disueltos totales o TDS):
conjunto de datos de entrada, dentro de las cuales se el agua tiene la capacidad de disolver una
encuentran árboles de decisión, clasificadores amplia gama de minerales o sales
basados en reglas, redes neuronales, entre otros. inorgánicos y algunos orgánicos, como
Cada técnica emplea un algoritmo de aprendizaje potasio, calcio, sodio, bicarbonatos,
que permite identificar el modelo que mejor se cloruros, magnesio, sulfatos, etc. Estos
adapta a la relación entre el conjunto de atributos y minerales producen un sabor no deseado y
la clase de los datos de entrada . un color diluido en apariencia de agua. Es un
En el presente documento, se realiza un análisis atributo numérico y se mide en miligramos
supervisado, técnica que se ocupa para asignar de sólidos por litro (𝑚𝑔⁄𝑙 ).
objetos a una categoría a partir de un conjunto de • Cloraminas: el cloro y la cloramina son los
datos de entrenamiento. Para este proyecto, se principales desinfectantes que se utilizan en
utiliza la base de datos previamente seleccionada, y los sistemas públicos de agua. Las
diversos algoritmos con el objetivo de predecir la cloraminas se forman con mayor frecuencia
potabilidad del agua, analizando las características cuando se agrega amoníaco al cloro para
del agua, como el pH, la dureza y presencia de tratar el agua potable. Es un atributo
sólidos, entre otros. numérico y se mide en miligramos de
cloramina por litro (𝑚𝑔⁄𝑙 ).
II. CONTEXTO DE LA BASE DE DATOS • Sulfato: Los sulfatos son sustancias
naturales que se encuentran en minerales,
En el proyecto se realiza un análisis a la base de
suelo y rocas. Están presentes en el aire
datos “Water Quality” [6] la cual se obtuvo del
ambiente, el agua subterránea, las plantas y
repositorio “Kaggle”. La base de datos posee un
los alimentos. Es un atributo numérico y se
total de 3.276 instancias y 10 atributos, donde el
mide en miligramos de sulfato por litro
último atributo corresponde a la etiqueta de clase
(𝑚𝑔⁄𝑙 ).
indicando para cada registro si clasifica como agua
potable o no potable. La proporción de las instancias • Conductividad: la conductividad eléctrica
con relación al tipo de clase al que pertenecen posee (EC) mide el proceso iónico de una solución
los siguientes porcentajes: que le permite transmitir corriente. El
aumento de la concentración de iones
• 39% de los datos corresponde a agua potable
mejora la conductividad eléctrica del agua.
• 61% de los datos corresponde a agua no Es un atributo numérico y se mide en
potable microsiemens por centímetro (𝜇𝑆⁄𝑐𝑚).
A continuación, se describen los atributos • Carbono orgánico: el carbono orgánico
presentados en la base de datos. total es una medida de la cantidad total de
• pH: es el indicador de la condición ácida o carbono en compuestos orgánicos en agua
alcalina del estado del agua, es un parámetro pura. Es un atributo numérico y se mide en
importante en la evaluación del equilibrio miligramos de carbono orgánico por litro
ácido-base del agua. Es un atributo numérico (𝑚𝑔⁄𝑙 ).
en un rango de 0 a 14. • Trihalometanos (THM): son sustancias
• Dureza: es la concentración de compuestos químicas que se pueden encontrar en el agua
minerales que hay en una determinada tratada con cloro. La concentración de THM
cantidad de agua, en particular sales de en el agua potable varía según el nivel de
magnesio y calcio. Es un atributo numérico material orgánico en el agua, la cantidad de
y se mide en miligramos de carbonato de cloro necesaria para tratar el agua y la
calcio (CaCO3) por litro. temperatura del agua que se está tratando. Es
un atributo numérico y se mide en partes por
millón (ppm).

2
• Turbidez: es la medida del grado de • Escalar los datos: para la aplicación de las
transparencia que pierde el agua por la distintas técnicas que se aplicarán a la base
presencia de partículas en suspensión. de datos, se decide escalar los datos. Los
Cuanto mayor sea la cantidad de sólidos datos fueron normalizados, es decir, se
suspendidos en el líquido, mayor será el escalan los datos a través del método “min-
grado de turbidez. Es un atributo numérico y max” dejando todos los valores en un rango
se mide en unidades Nefelométricas de de 0 a 1.
turbidez (NTU).
• PCA: es un método para reducir el número
• Potabilidad: es la calidad que ha de tener el de atributos de una base de datos. El objetivo
agua para que pueda ser consumida por el es realizar una transformación, pero
hombre sin peligro para la salud. 1 si el agua conservando las propiedades. Para esta base
es potable, 0 en caso contrario. de datos, se consideró una cantidad de 6
atributos, los cuales contemplaban el 85% de
III. OBJETIVOS la varianza. Cabe destacar que además se
El caso de estudio tiene como objetivo aplicar incluyó el atributo referido a la clase. Esto se
diferentes algoritmos de clasificación que permitan hace a modo de comparación de resultados,
predecir la potabilidad del agua y determinar cuál es para verificar si estos 6 atributos representan
el mejor método. correctamente el comportamiento de toda la
base de datos y además, observar la
IV. PRE-PROCESAMIENTO precisión al momento de aplicar este método
y compararla con los datos originales
La base de datos contiene inconsistencias y considerando los 10 atributos iniciales.
presencia de ruido, lo que genera errores y valores V. TÉCNICAS DE CLASIFICACIÓN
atípicos. Sin un preprocesamiento de datos, estos UTILIZADAS
errores disminuirían la calidad de la minería de
datos. Debido a lo anterior, se realiza el A. Árboles de Decisión
preprocesamiento de los datos de esta base: Esta técnica de minería de datos utiliza métodos de
• Missing values: para desarrollar el clasificación o regresión para clasificar o predecir
tratamiento de los datos faltantes, se utilizó los resultados potenciales en función de un conjunto
la librería “MICE”. Inicialmente se procedió de decisiones. Tal como dice su nombre, utiliza una
a determinar el total de datos faltantes de la visualización en forma de árbol para representar los
base de datos, que corresponde a 1.434. A posibles resultados de estas decisiones ¡Error! No
través de la función “complete” de la misma se encuentra el origen de la referencia.. Se han
librería, fue posible agregar los datos desarrollado algoritmos eficientes para inducir un
faltantes imputados en la base de datos. De árbol de decisiones razonablemente precisos en un
esta forma se logra completar la base de período de tiempo razonable. Uno de los primeros
datos con instancias que se encuentran métodos utilizados es el algoritmo de Hunt, que es
dentro de los límites. la base de muchas implementaciones actuales de
clasificadores de árboles de decisión, incluidos ID3,
• Tratamiento de outliers: para llevar a cabo C4.5 y CART ¡Error! No se encuentra el origen
este tratamiento se utilizó un enfoque de la referencia..
univariado. Mediante gráficas “Boxplot” se
identifican los datos atípicos • C4.5: el algoritmo puede ser utilizado con la
correspondientes a cada atributo de la base librería RWeka o caret. Inicialmente, se
de datos. Tras un análisis de dichos datos realiza un muestreo aleatorio para asignar
atípicos, se concluyó que estos si estaban datos al conjunto de entrenamiento y prueba
entre los márgenes permitidos de cada (75% train, 25% test). Generados estos
atributo, por lo que se decide mantener todos datos, se aplica el método J48 a los datos de
los valores sin ninguna modificación. entrenamiento para luego evaluar el

3
desempeño del modelo y aplicarlo a los medio del aprendizaje supervisado ajustándose en
datos de prueba. La efectividad del modelo relación de la función de pérdida a través del
se mide mediante la matriz de confusión proceso de descenso de gradiente. Se puede confiar
obtenida. en la predicción del modelo cuando la función de
costo es cercana o igual a cero ¡Error! No se
• C5.0: el algoritmo utiliza la librería caret. Al encuentra el origen de la referencia..
igual que el algoritmo anterior, primero se
El algoritmo utiliza las librerías neuralnet,
realiza el muestreo para la obtención de los
Ggally y tidyverse. El primer paso es normalizar los
datos de entrenamiento y prueba. Se efectúa
datos, para luego aplicar la función neuralnet
el modelo C5.0 a los datos de entrenamiento
indicando las salidas y las entradas
para luego realizar la predicción. Se realiza
correspondientes, el conjunto de datos de train y las
la matriz de confusión para evaluar el
características de la red neuronal, como las capas
desempeño del modelo.
ocultas y el umbral. Con esta información, la
B. K Vecinos Más Cercanos (KNN) función genera la red en base a las características
También conocido como algoritmo KNN, la señaladas. Para evaluar el funcionamiento de la red,
clasificación del vecino más cercano es parte de una se genera un sub-set eliminando la clase da la base
técnica más general basada en instancias. El de datos, y mediante el complemento compute de la
algoritmo calcula la distancia o similitud entre cada función neuralnet se realiza la predicción.
ejemplo de prueba y todos los ejemplos de Es importante destacar que debido a que los
entrenamiento para determinar su lista de vecinos recursos disponibles para ejecutar este modelo eran
más cercanos. Una vez que se obtiene la lista de limitados, al aplicar la función “neuralnet” se
vecinos más cercanos, la instancia se clasifica según modifica el umbral de 0,01 a 0,1. El aumento en el
la clase de la mayoría de sus vecinos ¡Error! No se umbral genera menos precisión en el modelo, pero
encuentra el origen de la referencia..
permite obtener resultados que no generen un error.
El algoritmo utiliza la librería caret y class.
En primera instancia, los datos se escalan y se VI. RESULTADOS
selecciona la cantidad requerida para el conjunto de
entrenamiento, en este caso fue de 75%, y se realiza A. Árboles de Decisión
un muestreo aleatorio simple para mejorar la calidad • C4.5: tras aplicar esta técnica de
del modelo. Los datos aleatorios se almacenan en la clasificación la base de datos, fue posible
variable train y los restantes pertenecerán al obtener su porcentaje de precisión con y sin
conjunto test. Utilizando el método cross-validation PCA, tal como se muestra a continuación:
k-fold se evalúa el desempeño del KNN. Además, la
Tabla 1: Ratios de exactitud para C4.5
función permite determinar el óptimo de vecinos. C4.5 Accuracy
Generados los datos, se procede a efectuar el Sin PCA 0.93047
modelo KNN con los parámetros obtenidos del Con PCA 0.82823
proceso anterior, y mediante la matriz de confusión Fuente: Elaboración propia
se calcula el porcentaje de precisión del algoritmo. Tal como se observa en la Tabla 1, la
C. Redes Neuronales Artificiales (ANN) metodología más asertiva es no utilizar PCA,
ya que el porcentaje de precisión sin PCA es
Las redes neuronales artificiales (o ANN por sus mayor, entregando un valor de 93,04%.
siglas en inglés) procesan los datos de
entrenamiento imitando la interconectividad del En la Tabla 2 se muestra la matriz de
cerebro humano a través de capas de nodos. Cada confusión obtenida tras aplicar este modelo.
nodo está compuesto por entradas, pesos, un umbral Tabla 2: Matriz de confusión C4.5
y una salida. Si el valor de salida excede el umbral, Agua no potable Agua potable
activa el nodo pasando datos a la siguiente capa en Agua no potable 569 34
Agua potable 34 341
la red. Las redes aprenden la función de mapeo por Fuente: Elaboración propia
4
• C5.0: al igual que en el caso anterior, se Al utilizar este valor de k, se obtuvieron los
obtuvieron los valores para C5.0 con y sin siguientes valores de precisión presentados en la
PCA, los cuales se muestran en la siguiente Tabla 6, donde se observa que el porcentaje de
tabla: precisión con PCA es superior, alcanzando 95,60%.
Tabla 3: Ratios de exactitud para C5.0 Tabla 6: Ratios de exactitud KNN
C5.0 Accuracy KNN Accuracy
Sin PCA 0.95935 Sin PCA 0.95604
Con PCA 0.85212 Con PCA 0.84737
Fuente: Elaboración propia Fuente: Elaboración propia
En este caso, también el porcentaje de Una vez obtenido el número óptimo de vecinos a
precisión es considerablemente mayor al utilizar, se obtuvo la siguiente matriz de confusión:
aplicar el modelo sin PCA, con un 95,93%. Tabla 7: Matriz de confusión de KNN
Además de lo anterior, se obtuvo Agua no potable Agua potable
como resultado la matriz de confusión de Agua no potable 481 10
Agua potable 26 302
este modelo, la cual se muestra en la Tabla
Fuente: Elaboración propia
4.
C. Redes Neuronales Artificiales
Tabla 4: Matriz de confusión C5.0
Agua no potable Agua potable Al aplicar redes neuronales artificiales a esta base de
Agua no potable 494 18 datos, en primera instancia se probaron diferentes
Agua potable 17 332
nodos de redes neuronales para ejecutar la función
Fuente: Elaboración propia
“neuralnet”. Los resultados de esto se presentan a
A modo de resumen, en la Tabla 5 se muestran los continuación:
resultados de ambos modelos correspondientes a Tabla 8: Nodos de redes neuronales
árboles de decisión sin PCA. Nodos hidden Error
Tabla 5:Resumen de resultados árbol de decisión (2,1) 115.670
Método Accuracy (2,2) 129.110
C4.5 0.93047 (3,2) 109.651
C5.0 0.95935 (3,3,3) 107.652
Fuente: Elaboración propia (3,2,1) 109.056
(4,2,2) 111.233
En esta se observa que en cuanto a árboles Fuente: Elaboración propia
de decisión el que obtuvo mejor porcentaje de
precisión es C4.5. Tal como se pudo observar en la Tabla 8, la mejor
combinación obtenida corresponde al considerar 3
B. K Vecinos Más Cercanos capas ocultas, con 3 neuronas en cada capa (3,3,3)
Al aplicar el método KNN, se obtuvo un k óptimo entregando el menor error equivalente a 107,652,
de vecinos más cercanos de 27, tal como se observa respecto de los demás nodos probados.
en la Figura 1 . A partir de lo anterior, se obtuvieron los
Figura 1: Gráfico de K-óptimo siguientes resultados con y sin PCA:
Tabla 9: Ratios de exactitud redes neuronales
Redes neuronales Accuracy
Sin PCA 0.96228
Con PCA 0.85134
Fuente: Elaboración propia
Al igual que en las técnicas de clasificación
aplicadas anteriormente, la metodología sin PCA
obtiene un mayor porcentaje de precisión
equivalente a 96,22%.
Fuente: Elaborado en RStudio
5
Finalmente, en la Tabla 10 se muestra la Si bien el algoritmo KNN no es el mejor
matriz de confusión obtenida a través de redes evaluado, comparando los otros métodos, posee un
neuronales. desempeño muy efectivo al clasificar el agua como
Tabla 10: Matriz de confusión de redes neuronales no potable, cifra que supera a todos los métodos
Agua no potable Agua potable presentados.
Agua no potable 483 15
Además, en todos los modelos aplicados, al
Agua potable 16 308
Fuente: Elaboración propia considerar un análisis de dimensionalidad para
reducir la cantidad de atributos la efectividad de los
VII. ANÁLISIS DE RESULTADOS modelos se reduce, generando una diferencia
negativa de 0.1 en el valor.
Los resultados obtenidos permiten determinar cuál
es el mejor método: se observó que al aplicar el VIII. CONCLUSIÓN
algoritmo de redes neuronales éste obtuvo el mejor
porcentaje de precisión, entregando un accuracy del El simple acceso universal al agua no es suficiente
96,22%, demostrando ser el algoritmo más robusto si no se considera su calidad, si el agua no está
para clasificar la base de datos presentada. En el otro limpia o no es segura para beber, no se está
extremo, el algoritmo C4.5 el cual utiliza arboles de cumpliendo con el derecho de la población de
decisión, obtuvo el valor más bajo con un accuracy acceder a esta necesidad básica en términos de
del 93,05%. Esto se puede observar con mayor calidad. En el trabajo desarrollado se utilizaron
detalle en la Tabla 11. diferentes técnicas de clasificación para determinar
la potabilidad del agua utilizando un conjunto de
Tabla 11: Resumen precisión de las metodologías
datos como entrenamiento y que permitieran
Metodología Accuracy
predecir el conjunto de prueba de manera correcta.
C4.5 0.93047
C5.0 0.95935 Los modelos aplicados en general
KNN 0.95604 obtuvieron una precisión alta, donde los porcentajes
Redes neuronales 0.96228 estuvieron entre el 93% y 96%. Se concluye que es
Fuente: Elaboración propia un excelente indicador, ya que siendo el agua un
elemento de habitual consumo y que afecta
Dentro de los algoritmos de árbol de decisión directamente la salud de las personas, contempla
aplicados, el método C5.0 obtiene un mejor una relevancia significativa que las metodologías
desempeño promedio, donde el 96,48% de los datos tengan ese nivel de asertividad, donde el margen de
que correspondían a agua no potable fueron error debe ser mínimo al identificar a qué tipo de
clasificados correctamente, mientras que el 95,13% clase pertenece cada una de las muestras analizadas.
de los datos pertenecientes a la categoría de agua
potable fueron clasificados como tal. Los Además, se realizó un análisis a la matriz de
porcentajes de asertividad del modelo se sitúan confusión para cada una de las metodologías
sobre el 95%. aplicadas, dando como resultado que el agua no
potable siempre se predecía de mejor forma que el
El método KNN aplicado obtuvo una agua potable, lo que demuestra que los modelos
precisión del 95,6%, donde el 97,96% de los datos utilizados tienen un buen desempeño, ya que,
correspondientes a la clase de agua no potable determinar una asertividad alta en el agua no potable
fueron clasificados correctamente, mientras que el se considera más relevante, por el riesgo que
92,07% de los datos que pertenecían a la categoría significaría clasificar el agua como potable cuando
de agua potable fueron clasificados asertivamente. no lo es.
Por último, el algoritmo de redes neuronales
artificiales obtuvo una precisión de 96,22%, con un
porcentaje de aciertos en la categoría no potable de
REFERENCIAS
96,98%, y un 95,06% de aciertos en la categoría [1] OMS. (1998). Guías para la calidad del agua potable.
potable. Vigilancia y control de los abastecimientos de agua

6
a la comunidad - OMS. Segunda Edición, 3, 271.
https://www.who.int/es/publications/i/item/92415
45038
[2] National Academy of Sciences. (2021). El agua
potable segura es esencial. https://www.koshland-
science-
museum.org/water/html/es/Treatment/Water-
Related-Diseases.html
[3] OMS. (2019). Agua. https://www.who.int/es/news-
room/fact-sheets/detail/drinking-water
[4] IBM. (2021). Data mining techniques.
https://www.ibm.com/cloud/learn/data-
mining#toc-data-minin-mIX76RvV
[5] Tan, P. N., Steinbach, M., & Kumar, V. (2006).
Introduction to data mining. Pearson Education.
[6] Kaggle. (2021). Water Quality, Drinking water
potability.
https://www.kaggle.com/adityakadiwal/water-
potability

También podría gustarte