¿Qué son los clasificadores Naïve Bayes?

¿Qué son los clasificadores Naïve Bayes?

El clasificador Naïve Bayes es un algoritmo de aprendizaje automático supervisado que se utiliza para tareas de clasificación, como la clasificación de texto. Utiliza principios de probabilidad para realizar tareas de clasificación.

Naïve Bayes es parte de una familia de algoritmos de aprendizaje generativo, lo que significa que busca modelar la distribución de entradas de una clase o categoría determinada. A diferencia de los clasificadores discriminativos, como la regresión logística, no aprende qué características son más importantes para diferenciar entre clases.

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA 


Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

Una breve revisión de las estadísticas bayesianas

El clasificador Naïve Bayes (Bayes ingenuo) también se conoce como clasificador probabilístico, ya que se basa en el teorema de Bayes. Sería difícil explicar este algoritmo sin esclarecer primero los conceptos básicos de las estadísticas bayesianas. Este teorema, también conocido como regla de Bayes, nos permite “invertir” las probabilidades condicionales. Como recordatorio, las probabilidades condicionales representan la probabilidad de que suceda un evento dado que ha ocurrido otro evento, y se representan con la siguiente fórmula:

El teorema de Bayes se distingue por el uso de eventos secuenciales, en los que la información adicional adquirida posteriormente afecta la probabilidad inicial. Estas probabilidades se denominan probabilidad previa y probabilidad posterior. La probabilidad previa es la probabilidad inicial de que suceda un evento antes de que sea contextualizado en virtud de una determinada condición, o la probabilidad marginal. La probabilidad posterior es la probabilidad de que ocurra un evento después de observar determinada información.

Un ejemplo popular en la literatura de estadística y aprendizaje automático (enlace externo a ibm.com) para demostrar este concepto son las pruebas médicas. Por ejemplo, imagine que hay una persona, llamada Jane, que se somete a una prueba para determinar si padece diabetes. Digamos que la probabilidad general de padecer diabetes es del 5 %; esta sería nuestra probabilidad previa. No obstante, si obtiene un resultado positivo de su prueba, se actualiza la probabilidad previa para dar cuenta de esta información adicional, y entonces se convierte en nuestra probabilidad posterior. Este ejemplo se puede representar con la siguiente ecuación, usando el teorema de Bayes:

Sin embargo, dado que no es probable que nuestro conocimiento de las probabilidades previas sea exacto dadas otras variables, como la dieta, la edad, los antecedentes familiares, etc., normalmente aprovechamos las distribuciones de probabilidad de muestras aleatorias, simplificando la ecuación a P(Y|X) = P(X|Y)P(Y) / P(X)

El regreso a Naïve Bayes

Los clasificadores Naïve Bayes funcionan de manera diferente en el sentido de que operan bajo un par de suposiciones clave, lo que les valió el título de "naïve" o "ingenuos". Asume que los predictores en un modelo Naïve Bayes son condicionalmente independientes o no están relacionados con ninguna de las otras características del modelo. También supone que todas las características contribuyen por igual al resultado. Si bien estas suposiciones a menudo se violan en escenarios del mundo real (por ejemplo, una palabra posterior en un correo electrónico depende de la palabra que la precede), simplifica un problema de clasificación al hacerlo más manejable desde el punto de vista computacional. Es decir, ahora solo se requerirá una única probabilidad para cada variable, lo que, a su vez, facilita el cálculo del modelo. A pesar de esta suposición de independencia poco realista, el algoritmo de clasificación funciona bien, especialmente con tamaños de muestra pequeños.

Con esa suposición en mente, ahora podemos reexaminar más de cerca las partes de un clasificador Naïve Bayes. Al igual que el teorema de Bayes, este utilizará probabilidades condicionales y previas para calcular las probabilidades posteriores mediante la siguiente fórmula:

Ahora, imaginemos un caso de uso de clasificación de texto para ilustrar cómo funciona el algoritmo Naïve Bayes. Imagine un proveedor de correo electrónico que busca mejorar su filtro de spam. Los datos de entrenamiento consistirían en palabras de correos electrónicos que se han clasificado como "spam" o "no spam". A partir de ahí, se calculan las probabilidades condicionales de clase y las probabilidades previas para obtener la probabilidad posterior. El clasificador Naïve Bayes operará devolviendo la clase que tiene la máxima probabilidad posterior de un grupo de clases (es decir, “spam” o “not spam”) para un correo electrónico determinado. Este cálculo se representa con la siguiente fórmula:

Dado que cada clase se refiere al mismo fragmento de texto, podemos, de hecho, eliminar el denominador de esta ecuación, simplificándola a:

Luego, la precisión del algoritmo de aprendizaje basado en el conjunto de datos de entrenamiento se evalúa según el rendimiento del conjunto de datos de prueba.

Probabilidades condicionales de clase

Para desglosar esto un poco más, profundizaremos un nivel más en las partes individuales que componen esta fórmula. Las probabilidades condicionales de clase son las probabilidades individuales de cada palabra en un correo electrónico. Se calculan determinando la frecuencia de cada palabra para em categoría, es decir, “spam” o “not spam”, que también se conoce como estimación de máxima verosimilitud (MLE). En este ejemplo, si estuviéramos examinando la frase "Estimado señor", simplemente calcularíamos la frecuencia con la que esas palabras aparecen en todo el correo electrónico spam y no spam. Esto se puede representar mediante la siguiente fórmula, donde y es "Estimado señor" y x es "spam".

Probabilidades previas

Las probabilidades previas son exactamente lo que describimos anteriormente con el teorema de Bayes. Con base en el conjunto de entrenamiento, podemos calcular la probabilidad general de que un correo electrónico sea “spam” o “no spam”. La probabilidad previa de la etiqueta de clase “spam” se representaría mediante la siguiente fórmula:

La probabilidad previa actúa como “peso” de la probabilidad condicional de la clase cuando se multiplican los dos valores y se obtienen las probabilidades individuales posteriores. A partir de ahí, se calcula la estimación máxima a posteriori (MAP) para asignar una etiqueta de clase de “spam” o “no spam”. La ecuación final de la ecuación bayesiana ingenua se puede representar de las siguientes formas:

Alternativamente, se puede representar en el espacio logarítmico dado que el clasificador Bayes ingenuo se usa comúnmente en esta forma: 

Evaluación del clasificador Naïve Bayes

Una forma de evaluar su clasificador es trazar una matriz de confusión, que trazará los valores reales y predichos dentro de una matriz. Las filas generalmente representan los valores reales, mientras que las columnas representan los valores previstos. Muchas guías ilustrarán esta figura como un gráfico de 2 x 2, como el siguiente:

Sin embargo, si estuviera prediciendo imágenes del cero al 9, tendría una gráfica de 10 x 10. Si quisiera saber la cantidad de veces que ese clasificador “confundió” imágenes de 4 con otras de 9, solo necesitaría verificar la cuarta fila y la novena columna.

Tipos de clasificadores Naive Bayes

No hay un solo tipo de clasificador Naïve Bayes. Los tipos más populares difieren en función de las distribuciones de los valores de las características. Por ejemplo:

  • Naïve Bayes gaussiano (GaussianNB): esta es una variante del clasificador Naïve Bayes, que se utiliza con distribuciones gaussianas, es decir, distribuciones normales, y variables continuas. Este modelo se ajusta encontrando la media y la desviación estándar de cada clase.
  • Naïve Bayes multinomial (MultinomialNB): este tipo de clasificador Naïve Bayes supone que las características provienen de distribuciones multinomiales. Esta variante es útil cuando se utilizan datos discretos, como recuentos de frecuencia, y normalmente se aplica dentro de casos de uso de procesamiento de lenguaje natural, como la clasificación de spam.
  • Naïve Bayes para modelos Bernoulli (BernoulliNB): esta es otra variante del clasificador Naïve Bayes, que se utiliza con variables booleanas, es decir, variables con dos valores, como Verdadero y Falso o 1 y 0.

Todo esto se puede implementar a través de Scikit Learn (enlace externo a ibm.com) Biblioteca Python (también conocida como sklearn).

Mixture of Experts | Podcast

Decodificación de la IA: Resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

Ventajas y desventajas del clasificador Naïve Bayes

Ventajas

  • Menos complejo: en comparación con otros clasificadores, Naïve Bayes se considera un clasificador más simple, ya que los parámetros son más fáciles de estimar. En consecuencia, es uno de los primeros algoritmos que se aprenden en los cursos de ciencia de datos y aprendizaje automático.
  • Se escala bien: en comparación con la regresión logística, Naïve Bayes se considera un clasificador rápido y eficiente que es bastante preciso cuando se cumple el supuesto de independencia condicional. Requiere poco almacenamiento.
  • Puede manejar datos multidimensionales: los casos de uso, como la clasificación de documentos, pueden tener un gran número de dimensiones, lo que puede ser difícil de manejar para otros clasificadores.

Desventajas:

  • Sujeto a frecuencia cero: la frecuencia cero ocurre cuando una variable categórica no existe dentro del conjunto de entrenamiento. Por ejemplo, imagine que estamos tratando de encontrar el estimador de máxima verosimilitud para la palabra “señor” a la que se le atribuyó la clase “spam”, pero la palabra “señor” no existe en los datos de entrenamiento. La probabilidad en este caso sería cero, y dado que este clasificador multiplica todas las probabilidades condicionales, esto también significa que la probabilidad posterior será cero. Para evitar este problema, se puede aprovechar el suavizado de Laplace.
  • Suposición básica poco realista: si bien el supuesto de independencia condicional en general funciona bien, el supuesto no siempre se mantiene, lo que conduce a clasificaciones incorrectas.

Aplicaciones del clasificador Naïve Bayes

Junto con otros algoritmos, Naïve Bayes pertenece a una familia de algoritmos de minería de datos que convierten grandes volúmenes de datos en información útil. Algunas aplicaciones de Naïve Bayes incluyen:

  • Filtrado de spam: la clasificación de spam es una de las aplicaciones más populares del Naive Bayes citadas en la literatura. Para obtener una lectura más profunda sobre este caso de uso, consulte este capítulo de O'Reilly (enlace externo a ibm.com).
  • Clasificación de documentos: la clasificación de documentos y textos van de la mano. Otro caso de uso popular de Naïve Bayes es la clasificación de contenidos. Imagine las categorías de contenido de un sitio web de medios de noticias. Todas las categorías de contenido se pueden clasificar en una taxonomía temática basada en cada artículo del sitio. A Federick Mosteller y David Wallace se les atribuye la primera aplicación de la inferencia bayesiana en su artículo de 1963 (enlace externo a ibm.com).
  • Análisis de opiniones:: si bien esta es otra forma de clasificación de textos, el análisis de opiniones se aprovecha comúnmente dentro del marketing para comprender y cuantificar mejor las opiniones y actitudes en torno a productos y marcas específicos. 
  • Predicciones del estado mental: utilizando datos de fMRI, se ha aprovechado el Naïve Bayes para predecir diferentes estados cognitivos entre los seres humanos. El objetivo de esta investigación (enlace externo a ibm.com) era ayudar a comprender mejor los estados cognitivos ocultos, especialmente entre los pacientes con lesiones cerebrales.
Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Conozca los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida del desarrollo de IA. Produzca potentes soluciones de IA con interfaces fáciles de usar, flujos de trabajo y acceso a API y SDK estándar de la industria.

Explore watsonx.ai Reserve una demostración en vivo