$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Esta sección presenta un enfoque integral diseñado para mejorar el diagnóstico y la clasificación de la osteoartritis de rodilla mediante el uso de un modelo XceptionNet modificado. La metodología presentada se basa en un cuidadoso preprocesamiento de datos, una personalización exhaustiva de la arquitectura del modelo y sólidas técnicas de evaluación, todo lo cual está destinado a abordar los complejos problemas asociados con las imágenes de OA de rodilla. En la Figura 2, se ha ilustrado el flujo del modelo.

Figura 2: Flujo de trabajo del modelo. Haga clic aquí para ver una versión más grande de esta figura.
Descripción del conjunto de datos
El conjunto de datos utilizado en esta investigación comprende 9.786 imágenes de rayos X de la rodilla del conjunto de datos OAI a las que se les ha asignado una calificación de OA basada en la técnica de clasificación KL. Este conjunto de datos, que ofrece una amplia gama de instancias que cubren las diversas fases de KOA, es esencial tanto para entrenar como para evaluar el modelo propuesto24. Se utilizó interpolación bilineal para escalar todas las imágenes. Se seleccionó esta técnica porque logra un compromiso entre la efectividad computacional y el mantenimiento de la calidad de la imagen, los cuales son esenciales para mantener las características anatómicas importantes para la categorización de la osteoartritis en la rodilla. En el conjunto de datos, los grados son de 0 a 4, con el grado 0 representando una rodilla sana y el grado 4 denotando osteoartritis grave. Este grado ofrece un rango complejo de evolución de la enfermedad, que es esencial para que el modelo comprenda las variaciones mínimas a lo largo de las etapas.
Además, el conjunto de datos se organizó en conjuntos de pruebas, validación y entrenamiento. Para evaluar el rendimiento del modelo y asegurarse de que aprende a generalizar de manera efectiva sin sobreajustar el conjunto de entrenamiento, esta división fue esencial. El conjunto de pruebas ofrece una evaluación objetiva de la eficacia del modelo finalizado, ya que también se utilizó para modificar los pesos del modelo. Además, un conjunto de validación ayuda a ajustar los hiperparámetros y evaluar los modelos a lo largo de la etapa de entrenamiento. En la Tabla 2 se proporciona un breve resumen de la distribución de datos, y la Figura 3 proporciona una representación visual de los mismos.
| Clase | Prueba automática | Prueba | Tren | Val |
| 0 | 604 | 639 | 2286 | 328 |
| 1 | 275 | 296 | 1046 | 153 |
| 2 | 403 | 447 | 1516 | 212 |
| 3 | 200 | 223 | 757 | 106 |
| 4 | 44 | 51 | 173 | 27 |
Tabla 2: Breve descripción del conjunto de datos.

Figura 3: Distribución del conjunto de datos. El conjunto de datos se organizó en conjuntos de pruebas, validación y entrenamiento. Haga clic aquí para ver una versión más grande de esta figura.
Preprocesamiento de datos
Este paso es crucial y tiene como objetivo mejorar el rendimiento del modelo mejorando la calidad de los datos de entrada. Las etapas involucradas en el preprocesamiento son las siguientes.
Cambio de tamaño de imagen: Se aplica una dimensión estándar a cada imagen de rayos X para proporcionar consistencia en todo el conjunto de imágenes. Esta etapa es esencial para que el modelo procese imágenes de manera consistente y efectiva. En este proceso se utiliza la ecuación 1.
Nuevo tamaño de imagen = Cambiar tamaño (imagen original, dimensión estándar) (1)
Normalización: Los valores de píxeles en las imágenes se han estandarizado para obtener una media de cero y una desviación estándar de uno. Este tipo de normalización garantiza que los valores de entrada caigan en un rango similar, lo que acelera la convergencia del modelo durante el entrenamiento. La ecuación 2 se utiliza para llevar a cabo este paso de normalización.
(2)
Aumento de datos: Se emplearon estrategias de aumento de datos para abordar los problemas debidos a datos insuficientes y mejorar la capacidad de generalización del modelo. Estos métodos incluyen giros, zooms, rotaciones y traslaciones. Introducen nuevas imágenes que se agregan intencionalmente al conjunto de datos de entrenamiento. La ecuación 3 se utiliza en la implementación de este procedimiento de aumento.
Imagen aumentada = Aplicar transformación (imagen original) (3)
Se emplearon una variedad de técnicas de aumento para proporcionar variabilidad al conjunto de entrenamiento con el fin de mejorar la robustez del modelo y minimizar el sobreajuste. Un rango de corte de 0.2, un rango de zoom de 0.8 a 1.2 (correspondiente a un factor de zoom de 0.2) y un rango de rotación aleatoria de -30 ° a + 30 ° se incluyeron en el aumento de datos de entrenamiento. Se permitió el volteo horizontal y vertical con una probabilidad de 0,5 para mejorar la generalización del modelo. Para el cizallamiento vertical y horizontal, también se empleó un factor de cizallamiento de 0,1, o ± 10% de distorsión.
Equilibrio de clases: Se utilizaron algoritmos de ponderación de clases debido al posible desequilibrio de clases del conjunto de datos (con más imágenes de algunas clases de OA que de otras). Para evitar que el modelo muestre un sesgo a favor de las clases más comunes, este método otorga mayores pesos a las clases subrepresentadas. En este proceso se utiliza la ecuación 4. Se utilizaron los siguientes valores para determinar los pesos: Saludable: 3857, Dudoso: 1770, Mínimo: 2578, Moderado: 1286 y Severo: 295 son las distribuciones por clase de las 9786 muestras totales y 5 clases.
(4)
División de entrenamiento y validación: el conjunto de datos se organizó en conjuntos de validación y entrenamiento utilizando proporciones tradicionales de 80:20. La división de los datos permite que el modelo aprenda de los datos de entrenamiento y evalúe su rendimiento de forma regular utilizando el conjunto de validación. Esto permite identificar el sobreajuste y evaluar la capacidad de generalización del modelo.
Optimización de la canalización de datos: se configuró una canalización de datos mejorada para garantizar un manejo eficaz de los datos durante el entrenamiento del modelo. Para reducir los cuellos de botella de entrada/salida y aumentar el rendimiento informático, esta canalización utiliza técnicas de procesamiento por lotes, captura previa y extracción de datos en paralelo. Para mejorar la eficiencia y el rendimiento del entrenamiento, se desarrolló la canalización de datos de entrada. Para garantizar una utilización equilibrada de la memoria y la carga computacional, se empleó un tamaño de lote de 32. Para aumentar la eficiencia de entrada de datos, se utilizó num_parallel_calls=4 en la función de mapa para paralelizar la carga y el preprocesamiento de datos. Además, para minimizar la latencia de E/S, se ha utilizado prefetch(buffer_size=tf.data.AUTOTUNE) de TensorFlow para permitir el ajuste automatizado del tamaño del búfer de precarga. Esto superpuso efectivamente el preprocesamiento de datos y la ejecución del modelo
En la Figura 4, se han mostrado algunas instancias de diferentes clases de imágenes después del preprocesamiento básico.

Figura 4: Instancias del conjunto de datos. La figura muestra algunos casos de diferentes clases de imágenes después del preprocesamiento básico. Haga clic aquí para ver una versión más grande de esta figura.
A través de estos meticulosos pasos de preprocesamiento, el conjunto de datos se transforma en una base sólida para entrenar el modelo XceptionNet modificado, preparando el escenario para la detección y clasificación de KOA precisa y confiable.
Arquitectura del modelo
Modelo base: Con su diseño distintivo que utiliza convoluciones separables en profundidad para lograr el mejor equilibrio posible entre la eficiencia computacional y la complejidad del modelo, el modelo XceptionNet creado por François Chollet se destaca25. La ecuación 5 se utilizó para implementar las circunvoluciones separables en profundidad.
Convolución separable en profundidad(x) = Puntual(Profundidad(x)) (5)
Es particularmente relevante para este estudio por varias razones. En primer lugar, su arquitectura es conocida por extraer características detalladas y jerárquicas de las imágenes, lo cual es crucial para el análisis de imágenes médicas, donde las características sutiles pueden indicar diferentes etapas de una afección. En segundo lugar, el modelo propuesto se basa en la arquitectura XceptionNet, que ha demostrado una eficacia sobresaliente en varias tareas de clasificación de imágenes, destinadas a detectar y clasificar la artrosis de rodilla26.
El OsteoXceptionNet presentado es una versión personalizada de la arquitectura XceptionNet creada especialmente para clasificar automáticamente la osteoartritis en la rodilla a partir de imágenes de rayos X. Los cambios importantes incluyen la adición de tres bloques convolucionales más (filtros: 512, 256 y 128) para mejorar la extracción de características específicas de las estructuras de la articulación de la rodilla, así como capas convolucionales con tamaños de filtro de 3 x 3 y recuentos de filtros variables que van de 32 a 1024 en los flujos de entrada, medio y salida. La normalización por lotes y la activación de ReLU vienen después de cada capa convolucional, y se agregan capas de abandono para minimizar el sobreajuste. El estándar de 224 x 224 píxeles se utiliza para las entradas del modelo.
Ajuste y modificaciones
Modificaciones: El modelo XceptionNet se ha modificado estratégicamente de varias maneras para que sea adecuado para la clasificación y detección de KOA.
Ajuste: Las capas superiores del modelo XceptionNet preentrenado se descongelaron, lo que permitió que el modelo aprendiera características de alto nivel específicas de las imágenes de rayos X de la rodilla. El ajuste fino del modelo se realizó según la Ecuación 6.
(6)
donde θajustado son los parámetros después del ajuste fino; θpreentrenados son los parámetros preentrenados; λ es la tasa de aprendizaje; ∇θpreentrenadoLa pérdida es el gradiente de la función de pérdida relacionado con los parámetros que se entrenaron previamente.
Capas convolucionales adicionales: Se introdujeron capas convolucionales adicionales en la fase final del modelo. Estas capas tienen un tamaño de grano más pequeño para centrarse en extraer detalles más finos pertinentes a los diferentes grados de OA. Se empleó utilizando la ecuación 7.
Salida convolucional = Convolución (entrada, kernel) (7)
Normalización por lotes: Después de cada capa convolucional agregada, se aplica la normalización por lotes para estabilizar el aprendizaje y mejorar la velocidad de convergencia. Se emplea usando la ecuación 8.
(8)
donde
es la salida normalizada; x es la entrada de la capa de normalización por lotes; μ es la media para el lote de entrada; σ2 es la varianza en el lote de entrada; ε es una constante mínima para la estabilidad numérica.
Funciones de activación: Las funciones de activación de ReLU se utilizan en las capas complementarias para introducir la no linealidad, lo que permite que el modelo adquiera estructuras más intrincadas en los datos. ReLU se calcula utilizando la ecuación 9.
ReLU(x) = max(0,x) (9)
donde, x es la entrada de la función de activación de ReLU.
Abandono: para evitar el sobreajuste, se incorporan capas de abandono, especialmente después de las capas recién agregadas, para garantizar la generalización del modelo incluso en datos no vistos. Se hizo por medio de la ecuación 10.
Salida = Máscara de × de entrada (10)
Configuración de la capa de salida
Capa de salida: El modelo XceptionNet original está estructurado para la clasificación de varias clases con la función de activación Softmax en una capa de salida. En este modelo adaptado, la capa de salida se personaliza para representar los cinco grados de osteoartritis de rodilla, que van desde el Grado 0 hasta el Grado 4, es decir, desde el nivel sano hasta el severo. Precisamente, esta capa comprende cinco neuronas, cada una correspondiente a uno de los grados de OA. La función de activación Softmax se utilizó en esta capa para producir una distribución de probabilidad en cinco clases, lo que permitió que el modelo propuesto pronosticara el grado de OA apropiado para una imagen de rayos X de rodilla determinada. Este enfoque alinea la salida del modelo directamente con la escala de calificación clínica, lo que facilita una interpretación intuitiva y práctica de las predicciones del modelo para los profesionales de la salud.
La arquitectura XceptionNet está diseñada específicamente, que se entrenó previamente por primera vez en el conjunto de datos de ImageNet, para el objetivo del estudio presentado de clasificar la gravedad de la osteoartritis en la rodilla. El modelo aprovechó las características aprendidas de un conjunto de datos grande y diverso mediante el uso de los pesos preentrenados de ImageNet, lo que le dio una base sólida. Para personalizar el modelo fundamental de XceptionNet para la investigación propuesta, se agregaron muchas capas nuevas.
Primero, las capas convolucionales 2D se combinaron con diferentes números de filtros y tamaños de kernel, cada uno de los cuales fue activado por ReLU y la normalización por lotes para agregar no linealidad. Estas capas adicionales estaban destinadas a capturar y amplificar las características relacionadas con la gravedad de la osteoartritis en la rodilla. Luego, el modelo estuvo listo para la última etapa de clasificación al agregar una capa 2D de agrupación promedio global (GAP), que reduce el mapa de características mientras mantiene los datos importantes. En particular, la operación GAP logra una reducción de dimensionalidad con una pérdida mínima de datos al reducir las dimensiones espaciales de cada mapa de características a un solo valor mientras se mantiene la profundidad, que podría variar de 7 x 7 x 1024 a 1 x 1 x 1024. La salida de la capa GAP se introdujo en la función de activación Softmax, que permitió la clasificación de varias clases al convertir logits en probabilidades. Las ecuaciones 11, 12, 13, 14, 15, 16 y 17 se utilizan para el GAP, la activación de Softmax, el cálculo del mapa de características, la reducción de la tasa de aprendizaje, la compilación de modelos, el ajuste de peso de clase y la pérdida de clasificación de varias clases, respectivamente.
(11)
donde, xi,j es la activación de la i-ésima fila y la j-ésima columna del mapa de características; H es la altura del mapa de características; W es el ancho del mapa de características.
(12)
donde, xi es la entrada a la función Softmax para la clase i; n es el número de clases.
Mapa de características = σ(Convolución(Entrada,Kernel) + Sesgo) (13)
donde, Convolución es una operación de convolución; i es la función de activación; Input es el tensor de entrada de la capa; Kernel es el kernel convolucional; Sesgo es el término de sesgo.
Nueva tasa de aprendizaje = Factor de la tasa de aprendizaje × (14)
Modelo = Compilar(Arquitectura,Pérdida,Optimizador,Métricas) (15)
(16)
donde,Clase de peso es el peso asignado a una clase; Total Samples es el total_number_of_samples del conjunto de datos; Number_of_Classes es el número de clases distintivas dentro del conjunto de datos; Muestra en clase es el recuento de muestras en una clase específica.
(17)
donde, yi es la distribución de probabilidad real para la clase i; pi es la predicción de distribución de probabilidad de clase i ; N es el número de clases.
Finalmente, el modelo, que ahora comprende la arquitectura XceptionNet modificada con las capas personalizadas, se compiló para predecir las probabilidades de cada clase. A través de estas modificaciones, el objetivo era aumentar la capacidad del modelo para discernir las características matizadas asociadas con diferentes grados de gravedad de la osteoartritis de rodilla, mejorando su rendimiento de clasificación para la tarea específica.
Para una convergencia estable y efectiva, se utilizó el optimizador Adam para entrenar el modelo con una tasa de aprendizaje de 0,0001, con 0,5 utilizado como tasa de abandono para minimizar el sobreajuste. Para limitar la complejidad del modelo y mejorar la generalización, se utilizaron estrategias de regularización L1 y L2. Para problemas de clasificación de múltiples clases con etiquetas enteras, la crossentropía categórica dispersa era la función de pérdida adecuada. El entrenamiento se llevó a cabo durante 50 épocas. Softmax, la función de activación final, se utilizó para generar distribuciones de probabilidad de clase. Además, se utilizó un tamaño de 64 pasos para el entrenamiento.
Formación: El proceso de formación fue una etapa muy importante. En esta etapa, el modelo XceptionNet modificado aprende la detección y clasificación precisas de KOA en imágenes radiográficas. Se utilizaron la versión 2.6.0 de Keras y la versión 2.6.0 del backend de TensorFlow para implementar el modelo XceptionNet. A continuación se muestran los detalles de los componentes clave de la fase de entrenamiento, incluida la función de pérdida, el optimizador, las devoluciones de llamada, el tamaño del lote y las épocas.
Loss_Function: Para la tarea de clasificación multiclase, se utilizó cross_entropy categórica. Esta función de pérdida es especialmente adecuada para problemas en los que se espera que cada instancia se asigne a una y solo una etiqueta de un conjunto de categorías27. Evalúa el rendimiento del modelo produciendo una puntuación de probabilidad entre cero y uno. Esta pérdida se utilizó como un indicador para entrenar eficazmente este modelo para la predicción precisa de la gravedad de KOA, ya que aumenta cuando la probabilidad predicha difiere de la etiqueta real.
Optimizador: Se empleó el optimizador Adam, que es bien conocido por su efectividad y características de tasa de aprendizaje dinámica. Adam amalgama las características ventajosas de los algoritmos AdaGrad y RMSProp, proporcionando un algoritmo de optimización experto en la gestión de gradientes dispersos en entornos de problemas ruidosos28.
Parámetros clave para el optimizador de Adam
Tasa de aprendizaje: Se empleó una tasa de aprendizaje de 0.0001, lo que permitió al optimizador realizar ajustes sustanciales en los pesos inicialmente, optimizando así el proceso de aprendizaje.
Beta1 y Beta2: Estos parámetros regulan las velocidades a las que disminuyen el gradiente cuadrático y las medias móviles de gradientes anteriores, respectivamente. Se utilizan los valores predeterminados de 0,9 para beta1 y 0,999 para beta2.
Epsilon: Este parámetro evita cualquier división por cero en la implementación, establecido en un número pequeño cercano a cero.
Devoluciones de llamada: las devoluciones de llamada se utilizan durante el entrenamiento para supervisar el rendimiento del modelo y para ajustarlo. Se emplearon las siguientes devoluciones de llamada:
Early_Stopping: Esto se utiliza para monitorear la pérdida de validación del modelo, así como para detener el proceso de entrenamiento si la pérdida deja de disminuir para un número predefinido de épocas (lo que se conoce como paciencia). Cuando los datos de validación ya no muestran una mejora en el rendimiento del modelo, detienen el proceso de entrenamiento, lo que ayuda a evitar el sobreajuste.
Reducir la meseta de LROn: Esta devolución de llamada disminuye la tasa de aprendizaje cuando la pérdida de validación deja de mejorar, lo que permite ajustes más finos en los pesos, lo que puede resultar en un mejor rendimiento general del modelo29.
Punto de control del modelo: esta devolución de llamada guarda el modelo en un intervalo determinado, de modo que se pueda recuperar la mejor versión del modelo una vez que se complete el proceso de entrenamiento. Por lo general, monitorea la precisión o pérdida de validación y guarda el peso del modelo cada vez que se detecta una mejora.
Tamaño del lote y épocas:
Tamaño de lote: 32 es el tamaño de lote típico que se utilizó para equilibrar los requisitos de estabilidad de convergencia del modelo y eficiencia informática. Un tamaño de lote de 32 logra un equilibrio, siendo lo suficientemente grande como para aprovechar las optimizaciones computacionales y, sin embargo, lo suficientemente pequeño como para ofrecer una estimación estable del gradiente.
Épocas: el modelo está configurado para entrenar hasta 50 épocas, aunque el entrenamiento puede detenerse antes de tiempo si se activa la devolución de llamada EarlyStoping. Las 50 épocas proporcionan suficientes iteraciones para que los pesos se ajusten y para que el modelo converja, mientras que EarlyStopping garantiza que el entrenamiento no continúe innecesariamente.
Al establecer meticulosamente estos parámetros y utilizar devoluciones de llamada, el proceso de entrenamiento se optimizó para garantizar que el modelo aprenda de manera efectiva y se generalice bien a datos invisibles. Para garantizar que todas las clases estén representadas de manera justa y precisa en las predicciones del modelo, se utilizaron varios enfoques para abordar el problema del desequilibrio de datos. Primero, para compensar la subrepresentación de algunas clases, se utilizó la ponderación de clases durante toda la fase de entrenamiento. A las clases con menos muestras se les dio un mayor peso. Para disminuir aún más los impactos del desequilibrio de clases durante el entrenamiento, también se utilizó ImageDataGenerator de Keras para asegurarse de que el modelo estuviera expuesto a una variedad de clases en cada lote30.
Métricas de evaluación
Para evaluar la eficacia del modelo desarrollado, se utilizaron numerosos parámetros que se describen a continuación.
Precisión (ACC): Esta estadística cuantifica la relación entre las observaciones predichas con precisión y todas las observaciones. Cuando las clases objetivo se distribuyen por igual, es beneficioso. Su cálculo se basa en la ecuación 18.
(18)
Precisión (PR): La precisión del modelo mide qué tan bien puede distinguir entre todos los casos positivos esperados y positivos. En circunstancias en las que la tasa de falsos positivos es sustancial, es muy importante. Su cálculo se basa en la ecuación 19.
(19)
Recuperación (R): La recuperación, también conocida como sensibilidad, cuantifica el porcentaje de verdaderos positivos detectados correctamente. Es especialmente importante en situaciones en las que ignorar un buen ejemplo puede tener graves repercusiones. Su cálculo involucra la ecuación 20.
(20)
F1_Score: Es una media armónica de precisión (PR) y recuperación (R), proporciona una evaluación justa, particularmente en presencia de una distribución de clases desigual. Su cálculo involucra la ecuación 21.
(21)
ROC AUC: Area Under the Curve for Receiver Operating Characteristics (ROC AUC) cuantifica la capacidad del modelo para diferenciar entre clases. Los valores elevados de AUC significan un rendimiento superior del modelo. Su cálculo se basa en la ecuación 22.
(22)
Kappa de Cohen (CK): Esta métrica evalúa la concordancia entre dos evaluadores que clasifican N ítems en C clases mutuamente excluyentes. Ofrece una mayor robustez en comparación con la precisión, especialmente cuando se trata de clases desequilibradas. Su cálculo implica la ecuación 23.
(23)
Métricas Error absoluto medio (MAE), error cuadrático medio (RMSE) y error cuadrático medio (MSE): aunque se emplean comúnmente para tareas de regresión, estos parámetros pueden proporcionar revelaciones útiles en escenarios de clasificación, particularmente en clasificaciones ordinales. Calculan la diferencia entre los valores reales y predichos. Estas métricas se calcularon utilizando las ecuaciones 24, 25 y 26, respectivamente.
(24)
(25)
(26)
Puntuación F2: La puntuación F2 prioriza la recuperación sobre la precisión, lo cual es valioso en escenarios en los que pasar por alto una predicción positiva incurre en mayores costos que generar un falso positivo. Su cálculo involucra la ecuación 27.
(27)
Curva de precisión y recuperación: Este gráfico muestra cómo se equilibran la recuperación y la precisión en varios niveles. Cuanto mayor sea el área bajo una curva, mayores serán los niveles de recuperación y precisión.
Los parámetros anteriores se eligieron para proporcionar una evaluación exhaustiva del rendimiento del modelo en todas las dimensiones, especialmente en el contexto del desequilibrio del conjunto de datos y la importancia de identificar con precisión los diversos grados de osteoartritis de rodilla.