Funcionamiento Matemático del Clasificador Naive Bayes
Clase 21 de 26 • Curso de Algoritmos de Clasificación de Texto
Contenido del curso
- 4

Modelos Marcovianos Latentes en PLN: Fundamentos y Aplicaciones
10:18 - 5

Matemáticas de Cadenas de Markov y su Aplicación en Modelos Latentes
08:43 - 6

Modelos Marcovianos Latentes: Etiquetado Gramatical Automático
13:25 - 7

Implementación de Modelos Marcovianos Latentes en Python con Google Colab
07:51 - 8

Entrenamiento de Modelos Marcobianos Latentes en Python
12:19
- 9

Decodificación de Secuencias con el Algoritmo de Viterbi
07:19 - 10

Cálculo de Probabilidades en el Algoritmo de Viterbi
09:08 - 11

Implementación del Algoritmo de Viterbi en Python con NumPy
14:45 - 12

Implementación del Algoritmo Viterbi para Modelos Ocultos de Markov
17:50 - 13

Implementación de Modelos Ocultos de Markov en NLTK y Python
12:55
- 21

Funcionamiento Matemático del Clasificador Naive Bayes
10:44 - 22

Preparación de Datos para Modelo Naive Bayes en Python
07:43 - 23

Implementación del Algoritmo Naive Bayes en Python con spaCy
17:02 - 24

Implementación del Método Predict en Naive Bayes Clasificador
13:40 - 25

Métricas de Evaluación en Modelos de Clasificación: Accuracy, Precision y Recall
07:32 - 26

Clasificación de Sentimientos con Reviews de Amazon
07:02
¿Cómo funciona matemáticamente Naive Bayes?
Naive Bayes es un algoritmo de clasificación probabilística basado en la teoría de probabilidad de Bayes. Se utiliza para predecir la categoría de un documento dado, evaluando la probabilidad de pertenencia a diferentes categorías. La clave es identificar la categoría con la mayor probabilidad y asignársela al documento. Ahora, profundicemos en su funcionamiento y lógica matemática.
¿Qué es un clasificador probabilístico?
Un clasificador probabilístico asigna una probabilidad a cada posible categoría de un documento. Esto significa que cada documento tiene una probabilidad calculada de pertenecer a varias categorías como deportes, política o videojuegos. La categoría con la mayor probabilidad será la predicción del modelo.
¿Cómo se aplica la regla de Bayes?
El clasificador de Naive Bayes utiliza la regla de Bayes, que nos permite calcular la probabilidad de una categoría dada, considerando otras probabilidades. La fórmula base se expresa como:
[ P(c|d) = \frac{P(d|c) \cdot P(c)}{P(d)} ]
Donde:
- (P(c|d)) es la probabilidad condicional de la categoría (c) dado el documento (d).
- (P(d|c)) es la probabilidad de que el documento (d) ocurra en la categoría (c).
- (P(c)) es la probabilidad de observar la categoría (c).
- (P(d)) es la probabilidad de encontrar el documento (d) en el corpus.
¿Cómo se simplifican los cálculos?
La hipótesis de independencia condicional permite reducir la complejidad calculando la probabilidad de características individuales en lugar de todas juntas. Esto se logra asumiendo que los atributos son independientes entre sí dado el conocimiento de la clase:
[ P(d|c) = \prod_{i=1}^{n} P(f_i|c) ]
¿Cómo se evitan problemas computacionales?
Para evitar problemas de precisión computacional al multiplicar muchos números pequeños (que pueden resultar en problemas como el underflow), se utiliza la función logaritmo. Al aplicar logaritmos, la multiplicación de probabilidades se convierte en una suma de logaritmos:
[ \log P(c|d) = \log P(c) + \sum_{i=1}^{n} \log P(f_i|c) ]
Esto ayuda a gestionar mejor números extremadamente pequeños, maximizando la estabilidad computacional.
¿Cómo se calculan las probabilidades?
Para computar las probabilidades necesarias:
- Probabilidad de la categoría: Se determina contando la frecuencia de cada categoría en el corpus.
- Probabilidad condicional de un feature dado una categoría: Se basa en la frecuencia observada de ese feature dentro de la categoría.
¿Qué es el espacio logarítmico?
El cálculo en el espacio logarítmico asegura que mantengamos la precisión numérica al manejar múltiples características, evitando que los valores extremadamente pequeños sean tratados como cero por los sistemas computacionales debido a la precisión finita de las máquinas.
Estos conceptos son fundamentales para implementar el algoritmo de Naive Bayes en Python. En las futuras clases, se enseñará cómo convertir estas fórmulas y conceptos matemáticos en código ejecutable, demostrando la potencia del enfoque probabilístico en la clasificación de texto. ¡Continúa explorando estos conceptos para dominar el procesamiento del lenguaje natural y el aprendizaje automático!