Diagnostic de défaut de roulement basé sur le graphique temps-fréquence des ondelettes de Pytorch et SwinTransformer

Swintransformer est une méthode         proposée par Microsoft en 2021 (le lien de code d'origine ). Cet article la combine avec des diagrammes temps-fréquence d'ondelettes et les utilise dans le diagnostic de défaut de roulement. Personne n'a encore utilisé cette méthode pour le diagnostic de défaut.

1. Structure du transformateur swin

        L'image ci-dessus montre le diagramme de structure du modèle officiel, qui est en fait un petit modèle. Il divise d'abord l'image d'entrée en patchs non superposés en utilisant la partition de patch. Deuxièmement, l'intégration linéaire est utilisée pour projeter le patch à la dimension C, puis le mécanisme d'attention de fenêtre et l'attention de fenêtre décalée sont utilisés en alternance, et la fusion de patchs est utilisée pour le sous-échantillonnage (jouant le rôle de la couche de regroupement dans CNN). Semblable à la structure basée sur resnet, des cartes de caractéristiques avec différents multiples de sous-échantillonnage de différentes étapes peuvent être obtenues pour diverses tâches en aval.Par exemple, les cartes de caractéristiques de stage2-4 peuvent être entrées dans FPN (comme la structure de yolov4), et puis connecté à yolohead pour la détection de cible, etc. 

2. Diagramme temps-fréquence des ondelettes

        Le diagnostic traditionnel des défauts de roulement utilise diverses méthodes d'extraction de caractéristiques pour extraire les caractéristiques des signaux de roulement unidimensionnels, tels que la variance moyenne, le spectre d'enveloppe HHT, le spectre FFT, le spectre d'énergie des ondelettes, etc. Les caractéristiques transformées sont toujours des données unidimensionnelles. Dans cet article, la technologie d'image temps-fréquence d'ondelettes est utilisée pour convertir le signal de relèvement unidimensionnel en une image temps-fréquence bidimensionnelle (image couleur vraie à 3 canaux). Les données converties peuvent être entrées dans CNN, MLP- Mélangeur, visiontransformer, etc. pour la classification d'image, afin de réaliser le diagnostic de défaut.

3. Vérification des instances

liste de codes
liste de codes

       1) Préparation des données

       En utilisant l'ensemble de données de diagnostic de défaut de roulement de Western Reserve University, données 48K / 0HP, un total de 10 types de défauts (normal comme type spécial de défaut), après division, les points d'échantillonnage de chaque échantillon sont 1024, et chaque type de défaut a 100 échantillons. Par conséquent, un total de 1 000 échantillons, puis un ensemble d'apprentissage, un ensemble de vérification et un ensemble de test divisés en 7:2:1.

      2) Diagramme temps-fréquence des ondelettes

        3) Classification de diagnostic de défaut SwinTransformer

        L'adresse du code de référence est la suivante Détails de SwinTransformer et implémentation du code (version pytorch) , combinez-le avec le diagramme temps-fréquence, où la taille d'entrée est de 64x64x3, la taille de patch est de 4 et le nombre de catégories est de 10. La courbe de taux et la courbe de perte correctes après 100 entraînements sont illustrées dans la figure ci-dessous.

        Entrez l'ensemble de test dans le modèle formé en 3), et le taux correct est de 99 %.

        4) Visualisation des fonctionnalités

        Extrayez la sortie de la couche précédente de la couche de classification, c'est-à-dire les caractéristiques discriminantes, et utilisez tsne pour la visualisation.

5 codes

Le code est dans la zone de commentaire, et il y a plus de blogs et de codes dans le lien.

Je suppose que tu aimes

Origine blog.csdn.net/qq_41043389/article/details/126801923
conseillé
Classement