Diagnóstico de fallas de rodamientos basado en el gráfico de tiempo-frecuencia de onda Pytorch y SwinTransformer

Swintransformer es un método         propuesto por Microsoft en 2021 (el enlace del código original ). Este artículo lo combina con diagramas de tiempo-frecuencia de wavelet y los usa en el diagnóstico de fallas de rodamientos. Nadie ha usado este método para el diagnóstico de fallas todavía.

1. Estructura del transformador Swin

        La imagen de arriba muestra el diagrama de estructura del modelo oficial, que en realidad es un modelo pequeño. Primero divide la imagen de entrada en parches que no se superponen utilizando la partición de parches. En segundo lugar, la incrustación lineal se usa para proyectar el parche a la dimensión C, y luego el mecanismo de atención de la ventana y la atención de la ventana desplazada se usan alternativamente, y la combinación de parches se usa para reducir la resolución (desempeñando el papel de la capa de agrupación en CNN). Similar a la estructura basada en resnet, se pueden obtener mapas de características con diferentes múltiplos de reducción de muestreo de diferentes etapas para varias tareas posteriores.Por ejemplo, los mapas de características de la etapa 2-4 se pueden ingresar en FPN (como la estructura de yolov4), y luego se conecta a yolohead para la detección de objetivos, etc. 

2. Diagrama de tiempo-frecuencia wavelet

        El diagnóstico tradicional de fallas en rodamientos utiliza varios métodos de extracción de características para extraer características de señales de rodamientos unidimensionales, como la varianza media, el espectro de envolvente HHT, el espectro FFT, el espectro de energía de ondas, etc. Las características transformadas siguen siendo datos unidimensionales. En este documento, la tecnología de imagen de frecuencia de tiempo de ondículas se utiliza para convertir la señal de rodamiento unidimensional en una imagen de frecuencia de tiempo bidimensional (imagen de color verdadero de 3 canales). Los datos convertidos se pueden ingresar en CNN, MLP- Mezclador, transformador de visión, etc. para la clasificación de imágenes, a fin de realizar el diagnóstico de fallas.

3. Verificación de instancia

lista de códigos
lista de códigos

       1) Preparación de datos

       Usando el conjunto de datos de diagnóstico de fallas de rodamientos de la Universidad de Western Reserve, datos de 48K/0HP, un total de 10 tipos de fallas (normales como un tipo especial de falla), después de la división, los puntos de muestreo de cada muestra son 1024, y cada tipo de falla tiene 100 muestras Por lo tanto, un total de 1000 muestras, y luego 7: 2: 1 conjunto de entrenamiento dividido, conjunto de verificación y conjunto de prueba.

      2) Diagrama de tiempo-frecuencia wavelet

        3) Clasificación de diagnóstico de fallas de SwinTransformer

        La dirección del código de referencia es la siguiente: detalles de SwinTransformer e implementación del código (versión pytorch) , combínelo con el diagrama de frecuencia de tiempo, donde el tamaño de entrada es 64x64x3, el tamaño del parche es 4 y el número de categorías es 10. La curva de tasa correcta y la curva de pérdida después de 100 entrenamientos se muestran en la siguiente figura.

        Ingrese el conjunto de prueba en el modelo entrenado en 3), y la tasa correcta es 99%.

        4) Visualización de características

        Extraiga la salida de la capa anterior de la capa de clasificación, es decir, las características discriminativas, y use tsne para la visualización.

5 códigos

El código está en el área de comentarios, y hay más blogs y códigos en el enlace.

Supongo que te gusta

Origin blog.csdn.net/qq_41043389/article/details/126801923
Recomendado
Clasificación