Estudio comparativo entre algoritmos de clasificación ”Naive Bayes, Desicion Tree, SVM and Neural Network”.

Abstract

Este artículo se basa en la comparación entre algoritmos de clasificación ”Naive Bayes, Desicion Tree, SVM and Neural Network”, acerca de cual es funcionamiento básico, algunas ventajas y desventajas, y ejemplos de aplicaciones en la vida real. En la segunda parte, se experimenta ejercicios practicos sobre la clasificaciones de imagenes usando el software KNIME Analytics Platform y realizando la muestra con distintos tipos de algoritmos. Posteriormente se muestran los resultados obtenidos acompañado de un analisis y conclusión del mini estudio comparativo.

Introducción

La necesidad de crear cada vez más, softwares y computadoras en general que tomen las mejores desiciones de forma autónoma, así optimizando ciertos procesos o evitando perdidas etc. ha hecho que los algoritmos involucrados en el desarrollo vayan adquiriendo un grado de complejidad mayor, incluso los días de hoy, creando máquinas casi 100% autónomas en la toma de desiciones respecto a ciertos valores de entrada. Estos avances relativamente nuevos, han hecho que comiencen a aparecer nuevos términos en el área de la tecnología. Uno de esos es ”Machine Learning”, no existe definición clara pero una de las más acertadas y populares es: ”El aprendizaje automático es el proceso que le da a las computadoras la habilidad de aprender sin ser explícitamente programadas.” (A.L Samuel), o sea, que las computadoras sean capaces de tomar algo del exterior, y de acuerdo a diferentes variables y/o condiciones, dar como salida la mejor opción para cierto problema.

Existe una serie de problemas y tareas a resolver dentro de ”Machine Learning”. Aunque las dos más conocidas son el Aprendizaje Supervisado, y el No Supervisado. Nos enfocaremos en el primero para que el entendimiento del resto del artículo se haga de forma correcta.

En palabras simples, el aprendizaje supervisado es cuando se cuenta con un conjunto de datos en donde conocemos exactamente la respuestas, (llamado datos de prueba o de test). Lo que queremos hacer es formular algún tipo de correspondencia que nos permita aproximar una respuesta para cualquier otro dato que después sea de entrada. Por ejemplo, queremos saber si una imagen corresponde o no a un bosque, para eso le damos como entrada datos de prueba para encontrar algunos parametros que nos permitan saber como diferenciar un bosque de otra cosa.

Dentro de este tipo de aprendizaje, nos enfocaremos en cuatro, Navie Bayes, Desicion Tree, Suport Vector Machine (SVM) y Neural Network.

Algoritmos de clasificación en aprendizaje supervisado

Navie Bayes

Algoritmo basado en probabilidades condicionadas con datos conocidos, rápido y simple de usar, por lo que es uno de los clasificadores más usados. Su funcionamiento se basa en calcular probabilidades de datos conocido y de acuerdo a os resultados y una formula, se puede calcular la probabilidad de que la entrada sea de una u otra clase.

”Supongamos que un ingeniero está buscando agua en un terreno. A priori, se sabe que la probabilidad de que haya agua en dicha finca es del 60%. No obstante, el ingeniero quiere asegurarse mejor y decide realizar una prueba que permite detectar la presencia o no de agua. Dicha prueba tiene una fiabilidad del 90%, es decir, habiendo agua, la detecta en el 90% de los casos. También, cuando realmente no hay agua, la prueba predice que no hay agua en el 90% de los casos. Por tanto, pudiendo hacer uso de dicha prueba ¿qué es más probable, que haya agua o que no?”

Se conoce que la probabilidad de que haya agua es del 60%, pero esta se ve afectada por la probabilidad de que la prueba sea fiable de un 90%. Por lo tanto hay que calcular la probabilidad de que haya agua saliendo el resultado de la muestra positivo, y que haya agua sabiendo que el resultado fue negativo, además de calcular las probabilidades de que haya agua y no. Aplicando la siguiente formula se tienen los siguientes resultados.