Segmentation des données de variation de puissanceNous travaillons sur un cas d'utilisation où le client dispose de données de variation de puissance (moyenne et maximale) provenant d'un produit. Auparavant, il segmentait manuellement le graphique en différents états de charge de travail en fonction des variations de la valeur de puissance. Il souhaite désormais automatiser ce processus de segmentation grâce à JMP.
J'ai joint les données ainsi qu'une capture d'écran montrant le résultat attendu (dérivé manuellement). Chaque état identifié est défini par un point de départ et un point d'arrivée, répertoriés dans la colonne « Point de départ/Point d'arrivée ». Pour chaque état, une marge de ± 5 lignes est appliquée autour des points de départ et d'arrivée réels.
Quelques précisions importantes après avoir parlé avec le client :
1. La variation n'est pas basée sur le temps
2. Le nombre d'états n'est pas fixe. Il ne sera pas toujours égal à 11, comme le montre la capture d'écran.
3. Les États 7 et 8 dans leur résultat manuel ont été distingués à l'aide de la 2e variable de l'axe Y
J'ai expérimenté le clustering hiérarchique et le clustering k-means, qui ont produit des résultats proches du résultat manuel, mais pas exactement identiques. Auriez-vous des suggestions pour mieux automatiser ce processus de segmentation dans JMP ?
Objet : Segmentation des données de variation de puissanceMon idée initiale serait de supprimer les zéros, puis de lisser les données et de rechercher des pics dans la dérivée comme marqueurs des différents segments. Je pense que c'est faisable, mais un peu brutal. Le clustering semble être une solution plus intéressante, même si je n'en ai pas beaucoup d'expérience.
Grâce au clustering hiérarchique, j'ai pu progresser en définissant la méthode sur « Unique », le format des données sur « Données empilées » et « Non standardisé ». Si je comprends bien, je pense que cela formera des clusters en examinant les points « voisins » proches les uns des autres en temps et en puissance, en les considérant comme des points dans un espace 2D avec le temps comme X et la puissance comme Y. Quelqu'un d'autre pourrait-il prendre la relève ?
Hierarchical Cluster(
Y( :"Time(s)"n, :"Power AVG (W)"n ),
Method( "Single" ),
Standardize Data( 0, "(for backward compatibility)" ),
Standardize By( "Unstandardized" ),
Dendrogram Scale( "Distance Scale" ),
Number of Clusters( 20 ),
SendToReport(
Dispatch( {"Dendrogram"}, "Clust Dendro", FrameBox,
{Frame Size( 47, 700 )}
)
)
);
Objet : Segmentation des données de variation de puissanceAprès réflexion, je pense que l'utilisation de « Données empilées » est incorrecte. Cependant, l'utilisation de « Unique » + « Non standardisé » donne toujours de bons résultats de mon côté.