Curva ROC: métodos de dibujo de ejemplos, principios y literatura relacionada
En primer lugar, debemos evaluar si el modelo de predicción establecido tiene capacidades de predicción buenas y precisas. Por ejemplo, todos nos enfadaríamos mucho si el clasificador de spam de nuestro programa de correo electrónico solo detectara el 50% de los correos electrónicos o solicitudes no deseados. Este artículo discutirá cómo evaluar modelos predictivos utilizando una herramienta clásica: la curva característica operativa del receptor (ROC).
Este artículo se divide principalmente en tres partes para clasificar el contenido relevante de la curva ROC. Puede elegir según sus propias necesidades:
1. análisis de curvas.
2. El principio y la historia de la curva ROC.
3. Cómo dibujar una curva ROC
Comenzando con LME: la sensibilidad intrínseca mejorada después del efecto del donante magro en el síndrome del metal está impulsada por la composición intencional de la microbiota inicial.
Este es un documento publicado por el Centro Médico Académico de la Universidad de Ámsterdam en la subdivisión cell 2017. Un punto destacado mencionó que la respuesta al FMT de donantes magros fue impulsada por la composición inicial de la microbiota fecal, utilizando curvas ROC para evaluar la calidad del modelo de predicción.
Para comparar la relación entre la flora bacteriana del FMT alogénico y la eficacia, los pacientes se dividieron en grupos que respondieron y grupos que no respondieron según los cambios en los valores de Rd antes y después del FMT, y las diferencias en Se comparó la flora bacteriana entre los dos grupos. Desde la perspectiva de los cambios en la diversidad de la flora bacteriana, según el índice de Shannon, se encontró que la diversidad de la flora bacteriana de los dos grupos no cambió significativamente, mientras que la diversidad de la flora bacteriana inicial fue significativamente diferente (Figura 5A). , lo que indica la diversidad de la flora bacteriana de los que no responden. Significativamente mayor que la de los que responden. Posteriormente, el autor utiliza el algoritmo de red elástica ¿red elástica? El algoritmo (Zou y Hastie, 2005) distingue a los que responden de los que no responden. Para evitar el sobreajuste, se utiliza una validación cruzada diez veces mayor en la partición de entrenamiento (80%) de los datos y el 20% restante de muestras se utiliza como conjunto de datos de prueba. Los parámetros a elegir son las relaciones entre las normas L1, L2 y el umbral de regularización. La estabilidad se selecciona mediante un muestreo secundario aleatorio del 80%, garantizado 100 veces. Durante el proceso de selección de estabilidad, se calculan todas las características con coeficientes de peso distintos de cero. Estos recuentos se normalizan y transforman en coeficientes estables que oscilan entre 1,0 para valores propios que siempre se seleccionan y 0,0 para valores propios que nunca se seleccionan. La validez estadística de los resultados obtenidos por el algoritmo de red elástica se evalúa mediante experimentos aleatorios. Según este procedimiento, las variables de resultado (p. ej., alogénicas frente a autólogas o respondedores frente a no respondedores) se recombinan aleatoriamente preservando al mismo tiempo los perfiles microbianos correspondientes. Repita 100 veces y calcule la puntuación ROC AUC cada vez. La medida de rendimiento utilizada para las tareas de clasificación binaria es ROC AUC. ROC puede entenderse como el mapa de probabilidad de clasificar correctamente sujetos alogénicos y sujetos autólogos o sujetos válidos e inválidos. La validación cruzada en el conjunto de datos se realiza ocultando aleatoriamente el 20% de los sujetos en el modelo y evaluando la calidad predictiva de este grupo de sujetos. La puntuación ROC AUC mide la precisión de la predicción de un modelo de clasificación utilizando 0,5 AUC, que corresponde a resultados aleatorios. Defina un valor crítico de 0,05 y compare el verdadero AUC del conjunto de datos original con este valor.
Se utilizó la curva ROC para evaluar el modelo para predecir la respuesta metabólica de 6 semanas a partir de la composición microbiana inicial. Los resultados mostraron que el AUC = 0,88, lo que indica un buen modelo.
Se sabe por esta literatura que las curvas ROC se pueden utilizar para evaluar la calidad de los modelos predictivos utilizados para encontrar biomarcadores.
Aprenda del artículo del SCI: Cambios en la microbiología y metalurgia intestinal y la gravedad de la enfermedad de las arterias coronarias.
Este es un artículo publicado en 2019 por nuestro grupo de investigación en colaboración con Peking Union Medical College, centrado en estudiar las diferencias en la flora intestinal en pacientes con diferentes tipos de enfermedad coronaria (EAC). Entre ellos, la evaluación de la curva ROC se realizó en el modelo de bosque aleatorio para distinguir diferentes subtipos de CAD (enfermedad coronaria estable (SCAD), angina inestable (UA), infarto de miocardio (IM)) y logró buenos resultados de predicción.
Identificación y predicción de subgrupos basados en CAG y metabolotipos relacionados con CAD
Para determinar si los CAG y los módulos de metabolitos en la flora intestinal se pueden utilizar para distinguir las diferentes etapas de la enfermedad coronaria de las normales. Para los biomarcadores arteriales, se construyó un modelo de bosque aleatorio para clasificar diferentes etapas de la enfermedad coronaria en función de 24 CAG y 72 tipos metabólicos séricos, y la clasificación se probó mediante curvas ROC (consulte "Materiales y métodos" para obtener más detalles). . Se construyeron un total de cinco modelos de predicción (control versus CAD, control versus scad, scad versus ua, scad versus ACS y UA versus MI).
Luego, los autores utilizaron el modelo para demostrar aún más la capacidad de clasificación potencial del modelo de identificación de subtipos de enfermedad mediante el reclutamiento de una nueva cohorte para la predicción de la clasificación.
Resumen: A partir de estos dos documentos, el autor busca biomarcadores a través de un determinado modelo de predicción de aprendizaje automático de clasificación y luego utiliza la curva ROC para evaluar el modelo. Por tanto, podemos saber que la curva ROC es una medida para probar la calidad del modelo de predicción. Entonces, además de este propósito, ¿qué más puede hacer la curva ROC?
Para comprender y aplicar mejor la curva ROC, primero debemos comprender el principio y el pasado de la curva ROC.
Hay muchos artículos introductorios sobre la curva ROC. Aquí, extraigo un artículo que personalmente creo que es más detallado y útil para su comprensión.
Primero, el método de evaluación de los modelos de predicción
En primer lugar, debemos comprender que los tipos de modelos de predicción se pueden dividir en modelos de regresión y modelos de clasificación (los modelos de clasificación incluyen resultados de clasificación). modelos y modelos de salida de probabilidad), que no se describirán aquí), y los indicadores de evaluación de diferentes modelos también son diferentes. Cómo evaluar la calidad de un modelo, aprendizaje automático (24): un método de evaluación de modelos comúnmente utilizado. Introducción al método de evaluación de modelos de clasificación: primero, debe conocer el tipo de modelo de predicción que construye para determinar el método de evaluación, que no se limita al uso de curvas ROC.
Principio de la curva ROC:
Para conocer el concepto y el significado de la curva ROC, consulte el concepto y el significado de la curva ROC.
Si hablas bien inglés, también puedes mirar esto: Curvas de Roc: ¿qué son y cómo utilizarlas?
Para entender la ROC de forma más intuitiva, también puedes ver este vídeo: ¡ROC y AUC, explicados claramente!
La curva característica de funcionamiento del receptor (curva característica del operador del receptor), utilizada originalmente para evaluar el rendimiento del radar, también se denomina curva característica de funcionamiento del receptor. La curva ROC es en realidad un gráfico derivado de una matriz de confusión, trazada con la tasa de verdaderos positivos (sensibilidad) como ordenada y la tasa de falsos positivos (1-especificidad, 1-especificidad) como abscisa.
Las variables independientes (ítems de prueba) son generalmente variables continuas (como la abundancia o el contenido del factor proteico detectado, cepas, metabolitos, etc.), mientras que las variables dependientes (estándar de oro, como un subtipo de enfermedad Clasificación , respuesta al tratamiento versus falta de respuesta, enfermedad versus no enfermedad) es generalmente una variable binaria.
Gráfico de curva ROC: a medida que el umbral disminuye, más valores caen en la categoría positiva y la sensibilidad y la especificidad 1 también aumentan en consecuencia, por lo que la curva ROC muestra una tendencia creciente. La línea diagonal de 45 grados es la línea de referencia, lo que significa que la curva ROC debe compararse con esta curva. En pocas palabras, si no utilizamos un modelo para clasificar aleatoriamente a los clientes, la curva resultante es la línea de referencia. Pero si usamos un modelo para predecir, debería ser mejor que aleatorio, por lo que cuanto más lejos esté la curva ROC de la línea de referencia, mejor. Cuanto más lejos esté la curva ROC de la línea de referencia, mejor será el efecto de predicción de nuestro. modelo será.
La curva ROC se utiliza para juzgar la exactitud del diagnóstico. El estado ideal es que el área bajo la curva sea 1. El estado ideal es que el área bajo la curva esté entre 0,8 y 0,5 no tiene ningún efecto sobre los resultados experimentales.
Cuando se trata de la curva ROC, es inseparable del AUC (área bajo la curva ROC). El método de juicio es que el AUC debe ser mayor que 0,5. La curva ROC se basa en la comparación con la línea diagonal para juzgar la calidad del modelo, pero esto es sólo un análisis cualitativo intuitivo. Si necesita ser preciso, debe utilizar AUC, que es el área bajo la curva ROC (AUC).
El estándar para juzgar la calidad de un clasificador (modelo de predicción) basado en AUC;
AUC = 1, es un clasificador perfecto. Cuando se utiliza este modelo de predicción, existe al menos un umbral para obtener predicciones perfectas. En la mayoría de situaciones de predicción, no existe un clasificador perfecto.
0.5 & ltAUC & lt1, mejor que adivinar al azar. Si el umbral se establece adecuadamente, el clasificador (modelo) puede tener valor predictivo.
AUC = 0,5, al igual que las conjeturas aleatorias (como lanzar una moneda), el modelo no tiene valor predictivo.
AUC & lt0.5, peor que las conjeturas aleatorias, pero siempre que vaya en contra de la predicción, es mejor que las conjeturas aleatorias.
Mirando la imagen, el área de la línea de referencia es 0,5. Cuanto mayor es la desviación de la curva ROC, más cerca está la curva ROC de la parte superior izquierda y mayor es el área (AUC) debajo de ella, donde el área es 0,869. Podemos evaluar el efecto de predicción de un modelo de clasificación comparando el valor AUC con 0,5.
2. La historia y los valores clave de la curva ROC
Lectura recomendada de este artículo: Conceptos básicos del aprendizaje automático (1) - Comprensión de la curva ROC. A juzgar por la historia original de los soldados de radar que utilizaron la evaluación de la curva ROC, es concisa y completa.
La curva ROC se utilizó originalmente para determinar cómo los "operadores de receptores" de radar estadounidenses no detectaban aviones japoneses. En la predicción y el juicio del modelo, habrá tres situaciones: verdadero positivo, falso positivo, verdadero negativo y falso negativo. Los diferentes soldados de radar pueden tener su propio conjunto de criterios de evaluación. Para cada señal recibida, ya sea un pájaro grande o un bombardero, cada soldado del radar dará su propio resultado de juicio, lo que permitirá a cada soldado del radar calcular un punto clave en la curva ROC (un conjunto de valores FPR, TPR), conectando los de todos. puntos, esta es la primera República de China.
La curva ROC requiere conocer varios valores clave:
Sensibilidad: la proporción de verdaderos positivos que se identifican correctamente. En este caso, la herramienta de diagnóstico identificó correctamente la proporción de pacientes sanos. A esto a veces se le llama "retirada".
SN = verdadero positivo/(verdadero positivo + falso negativo)
Inversa (1 sensibilidad) =? Tasa de falsos negativos. Los pacientes sanos que no fueron detectados por la herramienta fueron identificados incorrectamente como con CAD. Los falsos negativos también se denominan errores de tipo II.
Especificidad: proporción de verdaderos negativos que se identifican correctamente. En este caso, la proporción de pacientes con enfermedad coronaria puede identificarse correctamente mediante herramientas de diagnóstico.
SP = verdadero negativo/(verdadero negativo + falso positivo)
Inversa (1-especificidad)=? Tasa de falsos positivos. Se identificó incorrectamente que los pacientes con CAD no tenían CAD. Los falsos positivos también se denominan errores de tipo I.
Valor predictivo positivo: esta herramienta informa una tasa positiva que en realidad es positiva. Para el grupo de pacientes para quienes la herramienta de diagnóstico informa la ausencia de CAD, el VPP es la proporción de pacientes que en realidad no padecen la enfermedad. A esto a veces se le llama "precisión".
VPP = Verdaderos Positivos/(Verdaderos Positivos + Falsos Positivos)
Valor Predictivo Negativo: La proporción de efectos negativos reportados por esta herramienta que en realidad son negativos. Para el grupo de pacientes para quienes la herramienta de diagnóstico informa la presencia de CAD, el VPN es la proporción de pacientes que en realidad no tienen CAD.
NPV = valor verdadero negativo/(valor verdadero negativo + valor falso negativo)
Esto se puede entender con la ayuda de la matriz de confusión:
TP ( verdadero): verdadero es 0, la predicción también es 0.
FN (falso negativo): el valor verdadero es 0 y el valor predicho es 1.
FP (falso positivo): El valor verdadero es 1 y el valor predicho es 0.
TN (Verdadero Negativo): Verdadero es 0 y la predicción también es 0.
3. Las funciones principales de la curva ROC
1. La curva ROC puede descubrir fácilmente la capacidad de identificar enfermedades en cualquier valor límite.
2. Seleccione el límite de diagnóstico óptimo.
3. Comparación de la capacidad de dos o más pruebas diagnósticas diferentes para identificar enfermedades. Al comparar dos o más métodos de diagnóstico para la misma enfermedad, las curvas ROC de cada experimento se pueden dibujar en las mismas coordenadas para identificar visualmente las ventajas y desventajas. La curva ROC cerca de la esquina superior izquierda representa el trabajo más preciso del sujeto. También se pueden hacer comparaciones calculando el área bajo la curva ROC (AUC) para cada prueba. La prueba que tenga el AUC más grande tiene el mejor valor diagnóstico.
Cuarto, validación cruzada y sobreajuste.
Referencia: ¿Realmente entiendes la validación cruzada y el sobreajuste?
Explicación detallada de la validación cruzada del aprendizaje automático
Validación cruzada 10 veces, exclusión de uno y muestreo estratificado.
Me doy cuenta de que el sobreajuste parece ser un problema difícil, así que me gustaría agregar aquí:
En pocas palabras, cuando el error del conjunto de entrenamiento es pequeño y el error del conjunto de prueba es grande , podemos considerar que el modelo está sobreajustado. Otro significado expresado por esta oración es que la varianza del índice de evaluación del modelo es grande, lo que indica que el modelo está sobreajustado.
Además, tanto el aprendizaje supervisado como el no supervisado tienen el problema del sobreajuste.
Hay una buena analogía, la resumiré aquí:
El profesor de chino le pidió al compañero A que explicara una oración:? Un artículo del Sr. Lu Xun ~ ~ ~ ~ ~ ~ ~ '
No apto: Pobre estudiante: ¿Qué diablos es esto? La proporción es millas y millas ~~~
Sobreadaptación: explicación del profesor chino: 'En la superficie es ~ ~ ~, pero en realidad es ~ ~ ~ ~, en esencia es ~ ~ ~ ~ , que refleja ~ El estado de ánimo de ~ ~ aumentó la atmósfera de ~ ~ ~'
Normal: en ese momento, el Sr. Lu Xun pensó que se estaba haciendo tarde y que era hora de descansar.
Entonces, ¿cómo podemos evitar en cierta medida el sobreajuste? Esto conduce a una validación cruzada:
La forma más sencilla de determinar si un modelo está sobreajustado es determinar visualmente si el modelo está sobreajustado a través de los valores de precisión del entrenamiento y precisión de la prueba. Por ejemplo, si la precisión del conjunto de entrenamiento es del 90% y la precisión del conjunto de prueba es del 70%, entonces podemos considerar que el modelo está sobreajustado. Sin embargo, este método no tiene criterios de juicio claros y se basa completamente en el juicio subjetivo personal: "Siento que la diferencia entre entrenamiento y prueba es un poco grande y puede ser un sobreajuste".
Cómo evitar el sobreajuste ¿A través de validación cruzada?
Los métodos para evitar el sobreajuste del modelo se pueden resumir de la siguiente manera:
-Volver a limpiar los datos (eliminar funciones escasas, procesar datos ruidosos (eliminar/reemplazar))
-Volver a muestrear (cambiar el método de muestreo, etc.)
-Agregar datos de entrenamiento
-Adoptar el modo de entrenamiento de validación cruzada.
-Función de refiltrado
-Reducir la complejidad del modelo (agregar términos regulares: L1, L2)
-Abandono (en redes neuronales, neuronas Funciona con una cierta probabilidad)
Este artículo analiza cómo utilizar la validación cruzada para evitar el sobreajuste del modelo:
La primera función es evaluar el rendimiento del modelo. Cuando entrenamos y probamos el modelo dividiendo la muestra a la vez, nuestra evaluación del modelo será inexacta debido a la posibilidad de división de la muestra. Por lo tanto, puede utilizar la validación cruzada para evaluar el modelo (normalmente 50 % o 10 %, sklearn utiliza el 70 % de forma predeterminada) y el promedio de los resultados de la validación cruzada N veces se puede utilizar como evaluación del rendimiento del modelo.
La segunda función es evitar el sobreajuste. Por ejemplo, cuando realizamos una validación cruzada 10 veces, entrenamos 10 veces y obtuvimos 10 modelos. Los parámetros de cada modelo también son diferentes. Entonces, ¿qué modelo deberíamos utilizar como modelo final? La respuesta es: ¡No! ¡Necesitamos volver a entrenar un modelo final con todos los datos!
Hay muchas formas de dibujar curvas ROC. Las siguientes son algunas plataformas y métodos operativos:
1. SPSS: ¿Cómo utilizar SPSS para el análisis de curvas ROC? ¡Es suficiente leer este artículo!
2. Lenguaje R: regresión logística en lenguaje R, curva ROC, validación cruzada diez veces.
La curva ROC se basa en el lenguaje r-(paquete pROC)
Utilice el paquete pROC del lenguaje r para dibujar la curva ROC
3. Python: Comprender los conceptos básicos del aprendizaje automático (1) -Curva ROC
Introducción al principio ROC e implementación de dos y múltiples tipos de curvas ROC con Python
4.Matlab: Dibujo en Matlab -Dibujo de curva ROC (demostración oficial)
Explicación detallada de la curva ROC y ejemplos de dibujo en Matlab
Esto concluye el estudio preliminar de la curva ROC. Inicialmente aprendimos que la curva ROC se usó originalmente para evaluar la precisión de los soldados de radar al juzgar las señales de los bombarderos. Luego se usó para juzgar los indicadores médicos y se usa ampliamente en la vida. La curva ROC se puede utilizar para determinar la capacidad de identificar enfermedades en cualquier umbral, seleccionar el mejor umbral de diagnóstico y también se puede utilizar para evaluar la calidad de los modelos de predicción de aprendizaje automático (parece que se utiliza más en esta área en la actualidad). ). Por supuesto, todavía hay algunos problemas que vale la pena discutir, como cuándo usar curvas ROC, cómo dibujar curvas ROC promedio mediante validación cruzada S-fold, etc. En el proceso de construcción de un modelo de aprendizaje automático, el establecimiento de conjuntos de entrenamiento y conjuntos de prueba, la combinación de validación cruzada del modelo y evaluación de la curva ROC requieren un aprendizaje continuo.
¿Cuttles, Levine E, Salocchi? rvi J, Smits LP, Hartstra AV, Udayappan SD, Hermes G, Bouter KE, Koopen AM, Holst, Knop, Blaak EE, Zhao J, Smidt H, Harms AC, Hankemeijer T, Bergman JJGHM, Romijn HA, Schaap FG, Olde Damink SWM, Ackermans MT, Dallinga-Thier GM, Zoetendal E, de Vos WM, Serlie MJ, Stroes ESG, Groen AK, Nieuwdorp M Metabolismo de las células. 3 de octubre de 2017; 26 (4): 611-619. PMID: 28978426.
Liu, Chen, Hu, Niu, Tian, Wang, Pang, Jiang, Qiu, Chen, Zhang, Ma, Tang, Li, Feng, Zhang, Zhang. Microbioma. 2019 04 26;7(1):68.doi:10.1186/s 40168-019-0683-9. PMID: 31027508; PMCID: PMC6486680.
Rodríguez-Ruiz A, L? ng K, Gubern-Merida A, Broeders M, Gennaro G, Clauser P, Helbich TH, Chevalier M, Tan T, Mertelmeier T, Wallis MG, Andersson I, Zackrisson S, Mann RM, Sechopoulos I. Mamografía Inteligencia artificial independiente para mama Detección de cáncer: una comparación con 101 radiólogos. Instituto Nacional del Cáncer. 111(9):916-922.doi:10.1093/jnci/djy 222. PMID: 30834436; PMCID: PMC6748773.
Duclos G, Bobbia: Un estudio observacional multicéntrico en unidades de cuidados intensivos. 45(9):1212-1218.doi:10.1007/s 00134-019-05710-1. publicación electrónica del 29 de julio de 2019 PMID: 31359081.