7

Estoy tratando de crear mi propio y simple algoritmo de selección de funciones. El conjunto de datos con el que voy a trabajar es here (conjunto de datos muy famoso). ¿Alguien puede darme un puntero sobre cómo hacerlo?Algoritmo de selección de características más simple

Estoy planeando escribir un algoritmo de rango de características para una clasificación de texto. Esto es para un análisis del sentimiento de las reseñas de películas, clasificándolas como positivas o negativas.

Así que mi pregunta es sobre cómo escribir una selección de funciones simples para un conjunto de datos de texto.

+0

Ese es un gran tema. ¿Hay algo específico con lo que tenga problemas o necesita ideas de dónde empezar? –

+0

Solo quiero eliminar las características que agregan ruido a la clasificación. Pero, ¿cómo elijo este tipo de palabras sistemáticamente? ¿Cuál es el número apropiado de características que me da la mejor precisión y qué palabras ... Supongo que eso es lo que quiero que mi resultado final del algoritmo sea – aherlambang

Respuesta

3

Los métodos de selección de funciones son un gran tema. Puede comenzar con lo siguiente: plaza

  1. Chi

  2. información mutua

  3. frecuencia de los términos

etc. Lea este documento si tiene tiempo: Comparative study on feature selection in text categorization esto ayudará que mucho.

La implementación real depende de cómo preprocesa los datos. Básicamente es mantener los recuentos, ya sea una tabla hash o una base de datos.

+0

Entre todo eso, la frecuencia de los términos parece ser el derecho menos poderoso? – aherlambang

+0

No. Desea eliminar un término ruidoso. Y supongamos que un término aparece solo una vez, entonces muy probablemente su ruido (tal vez un nombre mal escrito). Debe ejecutar algunas pruebas antes de poder decidir. – Xolve

+0

Algunas pruebas como? ¿Quite los términos que están en el rango inferior de 50 en frecuencia y luego pruebe la precisión y continúe hasta que la frecuencia disminuya? – aherlambang

0

Aquí hay una opción: Use pointwise mutual information. Sus características serán tokens, y la información se medirá con la etiqueta de sentimiento. Tenga cuidado con las palabras frecuentes (detener las palabras), porque en este tipo de tareas, en realidad pueden ser útiles.

2

Las características aleatorias funcionan bien cuando se están construyendo conjuntos. Se lo conoce como ensacado de funciones.

0

Actualmente uso de este enfoque:

calcular el valor medio y la varianza de los datos para cada clase. Una buena característica candidata debe tener una varianza pequeña y el valor medio debe ser diferente de los valores medios de otras clases.

Actualmente solo tengo < 50 funciones, las selecciono manualmente. Para la automatización de este proceso, se podrían calcular las varianzas de los valores promedio entre todas las clases y dar la prioridad más alta a aquellas, teniendo mayor varianza. Luego, seleccione primero aquellos que tengan una varianza menor dentro de una clase.

Esto no elimina las funciones redundantes.

Cuestiones relacionadas