Esto depende mucho del dominio. Usaré el dominio de identificación de spam como un ejemplo en ejecución, pero los detalles son diferentes según el dominio y el objetivo. Primero, comience con los objetos que desea clasificar, en nuestro caso, mensajes de correo electrónico. Naive Bayes es un método de aprendizaje supervisado, por lo que necesita un conjunto de capacitación etiquetado, es decir, un conjunto de mensajes de spam y un conjunto de mensajes de jamón.
En segundo lugar, necesita una representación de los objetos como características, por ejemplo, un vector de las palabras (tokens) utilizadas en cada mensaje. Para esto, debe tokenizar los mensajes adecuadamente.
Una lista de vectores de características para los mensajes no deseados y no deseados, junto con sus etiquetas, le brinda datos de capacitación.
¿Cómo se obtienen las etiquetas? Idealmente de un corpus preexistente de objetos de dominio. Alternativamente, debe pagar el etiquetado, ya sea contratando etiquetadoras (por ejemplo, a través de Amazon Mechanical Turk), utilizando su equipo para etiquetar o utilizando un juego para etiquetar (un juego ESP).
¿Cuántos datos de entrenamiento son suficientes? Nuevamente, esto depende del dominio. Intentaría obtener 100 instancias por etiqueta posible, y luego probar, expandir el conjunto y reiterar.
¿Cuáles son los mejores métodos para recopilar datos de entrenamiento para el algoritmo Naive Bayes?
Related Content
¿En qué casos debo usar TensorFlow, PyTorch y Caffe2?
¿Por qué Bayes ingenuo se considera un modelo generativo?
Aquí hay algunas ideas:
1. Hice esta pregunta hace unos meses:
¿Cuáles son algunos buenos conjuntos de datos basados en correo electrónico para probar algoritmos de clasificación de spam?
Puede intentar trabajar con conjuntos de datos de código abierto. Esto puede o no ser útil, dependiendo de lo que intente lograr.
2. Descargue sus correos electrónicos de la cuenta de Gmail y capacite a un modelo con estos datos. Lo bueno de este enfoque es que su gmail probablemente tenga una combinación de etiquetas manuales (cada vez que haga clic en SPAM) y etiquetas automáticas (filtros de spam de Google). Esta combinación probablemente reduce la cantidad de ruido en la verdad del suelo y conducirá a un aumento en el rendimiento de su modelo (con suerte). Aquí hay un código fuente abierto para descargar correos electrónicos de una cuenta de Gmail. También hay una implementación de Naive Bayes:
Al construir y probar nuestro clasificador Naive Bayes, hemos utilizado una plataforma de monitoreo de medios sociales escuchable, producida por una empresa asociada para recopilar datos. Luego, hemos utilizado la aplicación de opinión dentro de escuchable para clasificar a mano una sección de las publicaciones (por ejemplo, publicaciones de un día). Estos se descargan y se introducen en el clasificador como conjunto de entrenamiento.
No sé qué está utilizando para construir su clasificador, pero el libro Python nltk ( http://www.nltk.org/book ) utiliza un método similar para eliminar una parte del conjunto de datos completo para el conjunto de entrenamiento.
More Interesting
¿La IA y el aprendizaje automático implican mucha codificación?
¿Cómo determina Quora a quién poner en mi sección "mejorar su alimentación"?
¿Cuáles son las aplicaciones HOT de Machine Learning para las ciencias biológicas?
Cómo construir un generador de lenguaje natural
¿Qué es la agrupación de datos?
¿Cómo implementaría el servicio de noticias de Quora?
¿Cuál es una explicación intuitiva del algoritmo wake-sleep?
¿Cuál es la mejor y más fácil forma de aprender el aprendizaje automático?