¿Puede un modelo de aprendizaje automático tener exactamente un 100% de especificidad?

Minimizar la tasa de falsos positivos y falsos negativos es un problema desafiante bien conocido en ML. En el caso de datos no balanceados, se vuelve más difícil. Clasificamos las muestras en función de la noción de umbral (probabilidad, puntuación, etc.). Este umbral actúa como un control deslizante, es decir, si nos movemos en una dirección, podemos tener una alta especificidad con un aumento de falsos negativos o de otro modo al aumentar la sensibilidad con un aumento de falsas alarmas. En su situación, si la clase positiva es muy diferente de la clase negativa, entonces es posible obtener una especificidad del 100% y cero falsas alarmas; sin embargo, en un escenario del mundo real que no sucede. Hay diferentes estrategias para manejar este tipo de situación que puede probar: la respuesta de Shehroz Khan a Tengo un conjunto de datos desequilibrado con dos clases. ¿Se consideraría correcto si sobremuestreo la clase minoritaria y también cambio los costos de clasificación errónea en el conjunto de capacitación para crear el modelo?

Una respuesta trivial a la pregunta es un clasificador que clasifica cada muestra como negativa. Tiene 100% de especificidad y 0% de sensibilidad. Pero dudo que sea lo que quieres.

Ciertamente, puede entrenar a varios clasificadores para lograr una especificidad del 100% y una sensibilidad distinta de cero … en un conjunto de datos de prueba dado . No puede certificar que el clasificador siempre tendrá una especificidad perfecta en otros datos. Depende de qué tan cerca estén los datos del conjunto de datos de entrenamiento de acuerdo con lo que sea relevante para clasificarlos.

De manera más general, todos los sistemas de aprendizaje automático realizan generalizaciones. No puede predecir el comportamiento de su clasificador en datos arbitrarios con una precisión del 100% a priori, de lo contrario, no habría ningún punto de entrenamiento para comenzar con ese clasificador. Sus datos de entrenamiento contienen un conjunto de muestras clasificadas como positivas o negativas, pero el mundo real siempre puede contener datos ambiguos o ruidosos que se ubicarán exactamente en el límite de decisión. ¿Qué harás cerca de ese límite, inclinar la escala hacia positivo o negativo? La primera favorece la sensibilidad, la segunda especificidad. Debe encontrar un equilibrio que se adapte a su aplicación.

El objetivo de un modelo de aprendizaje automático es generalizar los datos al máximo de su capacidad. Un clasificador perfecto es aquel con 100% de especificidad (sin falsos positivos) y 100% de sensibilidad (sin falsos negativos). Este no es un escenario práctico con datos del mundo real. Desea desarrollar un modelo que generalice mejor sus datos, sin sobreajustar.

El mejor modelo sería el que intente alcanzar el valor de Área bajo curva, AUC = 1. AUC es área bajo curvas ROC. En lo que respecta a su modelo, es un buen modelo.

Sí, lo he visto antes; típicamente, estos problemas tienen predictores muy fuertes de un resultado particular. Dada su situación con solo 1% de instancias positivas en el entrenamiento, me aventuraría a que su modelo predice que todos son una instancia negativa (por lo tanto, el modelo no es útil pero no incluye ningún falso positivo). Pruebe el muestreo estratificado para aumentar la fracción de instancia positiva en su conjunto de entrenamiento. Esto debería dar como resultado un modelo que pueda encontrar instancias positivas y negativas.

Hola, estamos trabajando en aprendizaje automático y clasificación de texto durante casi 5 años, principalmente en clasificación de texto de comercio electrónico.

Utilizando los modelos tradicionales, Naive Bayes y sus variantes, o red neuronal, como hemos experimentado, el nivel de precisión típico es del 55 al 60% para la clasificación de los primeros 1.

Cuando tiene un mayor número de categorías y errores en el conjunto de datos de entrenamiento, el nivel esperado es inferior al 60%. El falso positivo aumenta.

Usando Slamby API y sus algoritmos incorporados, la precisión esperada es de alrededor del 90-95% para los primeros 1. Todavía hay flase positivos, pero el número es mucho menor que el uso de algoritmos regulares.

Puede descargar e instalar desde aquí: slamby / slamby-api

Y mira los videos tutoriales aquí: