Por lo tanto, tenemos el potencial para una aplicación de aprendizaje automático que se adapte bastante bien al dominio del problema tradicional resuelto por los clasificadores, es decir, tenemos un conjunto de atributos que describen un elemento y un "cubo" en el que terminan. Sin embargo, en lugar de crear modelos de probabilidades como en Naive Bayes o clasificadores similares, queremos que nuestra salida sea un conjunto de reglas más o menos legibles para el ser humano que pueda ser revisado y modificado por un usuario final.
El aprendizaje de reglas de asociación se parece a la familia de algoritmos que resuelve este tipo de problema, pero estos algoritmos parecen centrarse en identificar combinaciones comunes de características y no incluyen el concepto de un depósito final al que esas características podrían apuntar. Por ejemplo, nuestro conjunto de datos se parece a esto:
Item A { 4-door, small, steel } => { sedan }
Item B { 2-door, big, steel } => { truck }
Item C { 2-door, small, steel } => { coupe }
Solo quiero las reglas que dicen "si es grande y es de 2 puertas, es un camión", no las reglas que dicen "si es de 4 puertas también es pequeño".
Una solución alternativa que se me ocurre es simplemente usar algoritmos de aprendizaje de reglas de asociación e ignorar las reglas que no involucran un segmento final, pero eso parece un poco extraño. ¿Me he perdido alguna familia de algoritmos? ¿O tal vez estoy abordando el problema incorrectamente para empezar?
fuente
En realidad, es incluso más simple que eso, por lo que describe --- solo está buscando un algoritmo de árbol de clasificación básico (por lo que no necesita variantes ligeramente más complejas como C4.5 que están optimizadas para la precisión de la predicción). El texto canónico es:
http://www.amazon.com/Classification-Regression-Wadsworth-Statistics-Probability/dp/0412048418
Esto se implementa fácilmente en R:
http://cran.r-project.org/web/packages/tree/tree.pdf
y Python:
http://scikit-learn.org/stable/modules/tree.html
fuente
Puede echar un vistazo al aprendiz de reglas CN2 en Orange 2 http://orange.biolab.si/orange2/
fuente
Debería probar el paquete arules en R. Le permite crear no solo las reglas de asociación sino también especificar la longitud de cada regla, la importancia de cada regla y también puede filtrarlas, que es lo que está buscando (pruebe el comando rhs () de este paquete).
fuente