¿Qué es un clasificador ‘codicioso’?

Un algoritmo “codicioso” es aquel que toma las mejores soluciones posibles en cada paso con el resultado de que a veces no se encuentra la mejor solución real. Por ejemplo, suponga que tiene un gráfico de red y está tratando de ir del punto A al punto B con los puntos X, Y y Z entre A y B. Digamos que ir del punto A al X cuesta 1, A a Y cuesta 2, A a Z cuesta 3, X a B cuesta 10, Y a B cuesta 1 y Z a B cuesta 5. Mirando la red general, la mejor ruta (de menor costo) es de A a Y a B (costo de 3). Un algoritmo codicioso tomaría el costo más bajo en cada paso y comenzaría eligiendo X y luego iría a B con un costo total de 11 (mucho más alto que el 3). Este es un algoritmo “codicioso”.

Un clasificador “codicioso” sería un algoritmo similar que da como resultado la clasificación de un objeto en particular. Por lo tanto, no creo que el clasificador en sí sea “codicioso”, sino que el algoritmo utilizado para crear / construir el clasificador se consideraría “codicioso”. Por ejemplo, si está construyendo un árbol de decisión, debe decidir qué variable dividir en cada nodo. Una forma de hacer esto es una métrica de “ganancia de información” y elegirá la variable que resulte en la mayor ganancia de información (esta es la parte codiciosa). Esto podría conducir a un clasificador menos que óptimo (cualquiera que sea el criterio que esté optimizando). Hay varias técnicas disponibles para ayudar a combatir este problema (a menudo basadas en algún tipo de aleatoriedad de elegir variables o fusionar múltiples modelos).