Reti LSTM
Una Rete Neurale Ricorrente (RNN) era un tipo di rete neurale che poteva prevedere il valore al passo temporale successivo basandosi sulle osservazioni precedenti in una serie temporale. Le RNN elaborano un'osservazione da una serie temporale alla volta e memorizzano informazioni storiche dalla serie temporale regolando continuamente un "vettore di stato" nello strato nascosto. Sebbene l'obiettivo delle RNN fosse apprendere informazioni storiche in serie temporali, le RNN non erano adatte a elaborare serie temporali più lunghe a causa del problema di annullamento del gradiente riscontrato nell'uso dell'algoritmo di retropropagazione. La rete Long Short-Term Memory (LSTM) è una variante di RNN che affronta il problema di nullità del gradiente riscontrato durante l'addestramento, rendendola capace di gestire serie temporali più lunghe. Rispetto alle RNN standard, le LSTM dispongono di tre unità di controllo aggiuntive del gate: il gate di ingresso, il gate di dimentica e il gate di output. La Figura 1 delinea la struttura fondamentale della LSTM e il suo quadro architettonico centrale, che comprende cinque componenti essenziali: tre funzioni di attivazione sigmoide e due funzioni di attivazione tangente iperbolica (tanh). È degno di nota che la funzione sigmoidea posizionata a sinistra assume un ruolo fondamentale nella regolazione della trasmissione delle informazioni dal passo temporale precedente, svolgendo le funzioni di filtraggio e raffinamento delle informazioni per supportare questo processo regolatorio, come illustrato dall'equazione successiva:
(1)

Figura 1. Struttura fondamentale della rete LSTM. Clicca qui per visualizzare una versione più grande di questa figura.
dove la porta di dimenticanza agiva come "f t", le sequenze di ingresso come "xt" e "ht-1" è l'informazione nascosta prima dell'uscita dell'unità. La porta di dimentica era responsabile di determinare quali informazioni dovevano essere scartate o conservate, la porta di ingresso poteva aggiornare lo stato dell'unità di memoria e la porta di uscita poteva determinare il valore dello stato nascosto successivo. Queste tre porte sono indicate come ft, i t e ot.
(2)
(3)
(4)
(5)
(6)
L'equazione (3) definisce lo stato candidato della cella C't creato dalla funzione tanh, che propone di aggiungere nuovi valori allo stato della cella. In particolare, l'input del modello è stato formulato integrando gli output di due funzioni sigmoidi con quelli della funzione tanh iniziale, come illustrato nell'Equazione (5).
L'equazione (4) caratterizza la funzione sigmoidea destra che funge da valore di output iniziale del modello, che è stato successivamente mappato all'intervallo [−1, 1] tramite la funzione tangente iperbolica (tanh). Successivamente, sia il valore risultante della funzione tanh sia l'output della funzione sigmoid vengono convertiti nei rispettivi valori effettivi di output, come esemplificato nell'Equazione (6).
In LSTM, la funzione sigmoide regolava le informazioni attuali, mentre la funzione tangente iperbolica (tanh) poteva essere responsabile dell'elaborazione delle informazioni storiche. L'integrazione di queste due funzioni dona agli LSTM la loro capacità predittiva. Rispetto alle RNN convenzionali, il vantaggio delle LSTM risiede nella loro architettura sofisticata, capace di catturare l'intera memoria dati di ingresso fino al passo temporale t+1. L'integrità di questa memoria è preservata tramite il meccanismo di gating facilitato dalla funzione sigmoide, garantendo così che le informazioni critiche vengano conservate per periodi prolungati.
Filtro HP
Il filtro Hodrick-Prescott (filtro HP), proposto da Hodrick e Prescott nel 1980, è stato ampiamente utilizzato nell'analisi economica e nell'analisi correlata alle serie temporali. Il filtro HP assume che il dataset da analizzare sia una combinazione di cambiamenti a lungo termine e fluttuazioni a breve termine, scomponendo la serie temporale Y={y1, y2, ⋯, yT} in due sottoserie: la serie di tendenze a lungo termine G={g1, g2, ⋯, gT} e la serie di fluttuazioni a breve termine S={s1, s2, ⋯, sT}. La serie di tendenza a lungo termine gT, dove t=1,2,⋯,T, è derivata minimizzando la seguente espressione:
(7)
Dove T rappresenta il numero di campioni nella serie temporale yt, e λ è maggiore di 0, noto come parametro di levigatura, che indica i pesi dei termini
e
. Quando λ=0, la serie di tendenza a lungo termine G che soddisfa il problema di minimizzazione è uguale alla serie originale Y. Man mano che il valore di λ aumenta, il numero totale di cambiamenti nella serie di tendenza a lungo termine diminuisce rispetto a quelli della serie originale, il che significa che un λ maggiore porta a una serie di tendenze a lungo termine più fluida. Quando λ tende all'infinito, la serie di tendenza a lungo termine assomiglierà a una funzione lineare. La serie di fluttuazioni a breve termine può essere ottenuta sottraendo la serie di tendenza a lungo termine dalla serie temporale originale, cioè S=Y-G.
Prima di applicare il filtro HP, era imperativo selezionare un parametro di levigatura appropriato λ, poiché diversi parametri di levigatura dettano tendenze distinte a lungo termine e fluttuazioni a breve termine. Secondo ricerche precedenti correlate, il valore di λ è fissato a 100 in questo studio.
Preparazione dei partecipanti e approvazione etica
L'approvazione etica era stata ottenuta dal Comitato di Revisione Etica dell'Università Medica della Mongolia Interna (n. YKD202001041) prima di qualsiasi raccolta dati. È stato reclutato un ricercatore a tempo pieno del College of Mongolian Medicine dell'Università Medica della Mongolia Interna, esperto nel metodo di rolling osteopatia tradizionale mongola cinese (CTMO). Dal partecipante è stato ottenuto un consenso informato scritto. Tutte le procedure rispettavano i principi della Dichiarazione di Helsinki.
Configurazione e calibrazione dell'attrezzatura
Un sistema multicanale di prova della resistenza della presa a mano dotato di 24 sensori meccanici è stato utilizzato per raccogliere i parametri meccanici del metodo di rollio CTMO (vedi Figura 2 e Figura 3 per la disposizione del sistema e il posizionamento dei sensori). Tutti i 24 sensori di forza furono calibrati secondo le istruzioni del produttore. Il software di acquisizione dati era configurato per registrare dati a una frequenza di campionamento di 100 Hz e per mostrare letture di forza in tempo reale in Newton (N). La durata della registrazione è stata impostata a 60 secondi per prova.

Figura 2. Sistema multicanale di prova della resistenza della presa della mano. Clicca qui per visualizzare una versione più grande di questa figura.

Figura 3. Interfaccia di acquisizione della manipolazione del massaggio basata sul sistema multicanale di prova della forza della presa. Clicca qui per visualizzare una versione più grande di questa figura.
Acquisizione dati
Al partecipante è stato istruito a indossare il guanto strumentato e assumere la posizione di partenza standard. Il modello dell'avambraccio umano artificiale è stato posizionato su una superficie stabile e orizzontale davanti al partecipante. All'avvio del software di registrazione dati, il partecipante ha eseguito la manipolazione del rotolamento CTMO in modo continuo sull'area designata del modello dell'avambraccio per 1 minuto. Il file di dati grezzo veniva salvato in un formato strutturato (ad esempio, .csv o .txt) contenente timestamp e letture di forza da tutti i 24 sensori. Questa procedura è stata ripetuta fino al completamento di un totale di 150 prove indipendenti. Il partecipante ha riposato per almeno 30 secondi tra un trial e l'altro per minimizzare la variabilità indotta dalla fatica. R (versione 4.2) fu successivamente utilizzata per calcolare le regole di movimento e gli angoli di movimento dell'azione articolare, e per riassumere le caratteristiche operative della tecnica.
Selezione dei sensori tramite visualizzazione delle caratteristiche
I dati grezzi delle forze di tutti i 24 sensori di tutte le prove sono stati caricati in R. La magnitudine media della forza e la varianza per ciascun sensore sono state calcolate sull'intero dataset. Un diagramma di riempimento delle bolle è stato costruito utilizzando il pacchetto ggplot2 in R per mostrare il contributo relativo di ciascuna falange/metacarpo delle dita allo sforzo totale della forza. Sulla base di questo diagramma (Figura 4), i Sensori 8 (falange prossimale del mignolo), 13 (falange distale del medio) e 2 (falange distale dell'indice) hanno mostrato le maggiori magnitudini e variabilità della forza e sono state quindi selezionate come caratteristiche di input principali per la modellazione successiva.

Figura 4. Diagramma di riempimento delle bolle delle nocche nel metodo del rotolamento. (1) falange prossimale dell'indice; (2) falange distale dell'indice; (3) metacarpo dell'indice; (4) falange media dell'indice; (5) falange prossimale del dito anulare; (6) falange distale dell'anulare; (7) falange metacarpale del dito anulare; (8) falange prossimale del mignolo; (9) falange distale del mignolo; (10) metacarpo del mignolo; (11) falange media del mignolo; (12) falange prossimale del dito medio; (13) falange distale del dito medio; (14) metacarpo del dito medio; (15) falange del medio del dito medio. Clicca qui per visualizzare una versione più grande di questa figura.
Preprocessing dei dati per la modellazione delle serie temporali
I dati delle forze in serie temporale F8(t), F13(t) e F2(t) per i sensori selezionati sono stati estratti dal dataset grezzo. Una variabile temporale normalizzata T veniva creata scalando i timestamp di registrazione all'intervallo [0'1]. È stata utilizzata la seguente formula:

Dove t era il timestamp originale in pochi secondi. Per ogni prova, i dati sulle forze e il tempo normalizzato sono stati concatenati in un dataset di serie temporale multivariata di dimensioni N × 4, dove N era il numero di passi temporali (6.000 passi per uno studio di 60 secondi a 100 Hz) e le colonne corrispondevano a [T'F8'F 13'F 2].
Filtraggio di Hodrick–Prescott (HP)
Il filtro Hodrick–Prescott veniva applicato indipendentemente a ciascuno dei tre segnali di forza F8, F13 e F2. Il parametro di levigatura era impostato su λ = 100. Questo valore era stato scelto in base alla natura approssimativa annuale/ciclica della tendenza delle forze a lungo termine osservata nei primi 2.000 punti dati (come dimostrato nella Figura 5) ed è stato considerato adatto per preservare le caratteristiche delle forze biomeccaniche.

Figura 5. Confronto degli effetti del filtro HP con λ = 100 e λ = 10.000 sui primi 2.000 punti dati del Sensore 8. Clicca qui per visualizzare una versione più grande di questa figura.
Nota di implementazione: La funzione hpfilter del pacchetto mFilter in R è stata usata con l'argomento frequenza = 100.
Per ogni segnale del sensore sono state ottenute due componenti: la componente di tendenza G(t) e la componente ciclica C(t), dove
. La matrice finale delle caratteristiche di input è stata costruita concatenando il tempo normalizzato con la tendenza e le componenti cicliche filtrate da HP dei tre sensori selezionati. Questo ha portato a un dataset di N × 7 dimensioni:
. Il dataset è stato suddiviso cronologicamente in sottoinsiemi di addestramento (70%), validazione (15%) e test (15%). Critico: Si evitava il mescolare casuale delle serie temporali per evitare perdite temporali. Il set di test conteneva l'ultimo 15% della sequenza temporale registrata.
Costruzione del modello LSTM a due strati con filtraggio HP
L'ambiente computazionale è stato configurato utilizzando TensorFlow (versione 2.10) con l'API Keras in R. L'architettura della rete neurale è stata definita come segue:
Livello di input: Forma = (lunghezza della sequenza'7), dove sequence_length era il numero di passi temporali per campione di input (sono stati utilizzati 100 passi).
Primo strato LSTM: Unità = 50, return_sequences = VERO. La funzione di attivazione del tanh veniva utilizzata per il passaggio ricorrente, e il sigmoide per le attivazioni del gate.
Secondo livello LSTM: Unità = 50, return_sequences = FALSO.
Strato completamente connesso (denso): Unità = 1 (per la previsione della forza univariata). Il flusso di lavoro completo del modello LSTM a doppio strato con filtraggio HP, dalla preelaborazione dei dati alla previsione finale, è illustrato nella Figura 6. L'obiettivo di output era il valore della forza al Sensore 8 al passo temporale successivo (previsione di un passo avanti).

Figura 6. Tabella del flusso di lavoro dell'applicazione LSTM a doppio strato. Clicca qui per visualizzare una versione più grande di questa figura.
Il modello è stato compilato utilizzando l'algoritmo di ottimizzazione Adam con i seguenti iperparametri: Tasso di apprendimento: 0,001; Tasso di decadenza: 0,001; Funzione di perdita: Errore quadratico medio (MSE). Il modello è stato addestrato per 20 epoche con un lotto di 32 volte. Early Stopping fu implementato con una pazienza di 5 epoche per monitorare la perdita di validazione per prevenire il sovrafitting. Un tasso di abbandono di 0,2 è stato applicato tra gli strati LSTM per la regolarizzazione. I dati di addestramento venivano mescolati solo a livello di batch all'interno di ogni epoca—non nell'ordine sequenziale—per mantenere la coerenza temporale e introdurre la stocasticità per la discesa del gradiente.
Configurazione del dataset di test
Per valutare le prestazioni predittive dei modelli proposti, il dataset preelaborato è stato suddiviso cronologicamente in tre sottoinsiemi: addestramento (70%), validazione (15%) e test (15%). La divisione cronologica assicurò che nessuna informazione futura trapelasse nel processo di addestramento. Il set di test comprendeva gli ultimi 2.000 passi temporali × 3 sensori = 6.000 punti dati della sequenza registrata, corrispondenti a circa 20 secondi di dati di sforzo continuo alla frequenza di campionamento originale di 100 Hz. Per la valutazione delle capacità di previsione a lunga durata, è stata costruita una sequenza di test estesa di 1.200 s (120.000 passi temporali) concatenando cronologicamente 20 tentativi consecutivi di 60-s preservando l'ordine temporale. È stata verificata la continuità delle forze tra le prove concatenate per garantire l'assenza di transizioni brusche.
Metriche di performance
Sono state calcolate tre metriche standard di regressione per quantificare l'accuratezza della previsione:
Coefficiente di determinazione (R2): Definito come
, dove yi e
denotano rispettivamente i valori effettivi e previsti della forza, e
è la media dei valori effettivi. R2 misura la proporzione di varianza nei dati di forza spiegati dal modello.
Errore Assoluto Medio (MAE): Definito come
. L'MAE fornisce la magnitudine media degli errori di previsione in unità di Newton (N).
Errore quadratico medio radice (RMSE): definito come
. La RMSE è sensibile alle grandi deviazioni di errore ed è espressa in Newton (N).
Tutte le metriche sono state calcolate sul set di test non visto dopo aver invertito eventuali trasformazioni di normalizzazione o scala applicate durante la pre-elaborazione.
Modelli comparati di base
Per confrontare il LSTM a due strati proposto con il filtraggio Hodrick–Prescott (HP), sono stati implementati e valutati i seguenti modelli alternativi con la identica suddivisione di addestramento, validazione e test. Gli iperparametri per tutti i modelli di reti neurali sono stati regolati utilizzando il set di validazione per garantire un confronto equo.
LSTM a singolo strato senza filtraggio HP
Architettura: Un singolo strato LSTM con 50 unità nascoste, seguito da uno strato denso completamente connesso con un singolo neurone di uscita.
Caratteristiche di input: dati grezzi delle forze dai Sensori 8, 13 e 2, più tempo normalizzato (input 4-dimensionale).
Addestramento: ottimizzatore Adam con tasso di apprendimento = 0,001, decadimento = 0,001, dimensione del lotto = 32, addestrato per 20 epoche con fermata precoce (pazienza = 5) monitorando la perdita di validazione.
LSTM a doppio strato senza filtraggio HP
Architettura: Due strati LSTM impilati, ciascuno con 50 unità nascoste. Il primo strato LSTM restituiva sequenze complete, mentre il secondo strato LSTM restituiva solo lo stato nascosto finale. Seguiva uno strato di uscita denso con un neurone.
Caratteristiche di input: Stesse di sopra (input di forza grezza a 4 dimensioni).
Parametri di addestramento: identici alla configurazione LSTM a singolo strato.
LSTM a singolo strato con filtraggio HP
Architettura: Un singolo strato LSTM con 50 unità nascoste seguito da uno strato di uscita denso.
Caratteristiche di input: tendenza decomposta da HP e componenti cicliche per i Sensori 8, 13 e 2, più tempo normalizzato T (input a 7 dimensioni, come descritto nel Protocollo).
Parametri di addestramento: Uguali a quelli sopra.
PCA-LSTM
Riduzione della dimensionalità: l'Analisi dei Componenti Principali (PCA) è stata applicata alla matrice di caratteristiche filtrata da HP a 7 dimensioni per estrarre tre componenti principali, che insieme spiegavano il >95% della varianza nel set di caratteristiche.
Architettura: Un singolo strato LSTM con 50 unità nascoste, che prende come input le tre principali serie temporali componenti.
Parametri di addestramento: Uguali a quelli sopra.
Rete neurale a retropropagazione (BP)
Architettura: Una rete neurale feedforward con uno strato nascosto contenente 64 neuroni e attivazione ReLU. Lo strato di uscita conteneva un singolo neurone lineare.
Rappresentazione in input: I dati della serie temporale sono stati appiattiti in vettori di caratteristiche di lunghezza fissa (100 passi temporali × 7 elementi = 700 dimensioni di input).
Addestramento: ottimizzatore Adam con tasso di apprendimento = 0,001, perdita per errore quadratico medio, addestrato per 100 epoche con una dimensione di lotto di 64. Fermata anticipata con pazienza = applicato 10.
Regressore della Foresta Casuale
Algoritmo: Insieme di 100 alberi decisionali con una profondità massima di 10 e un set minimo di campioni per split a 5.
Rappresentazione in input: Stessi vettori di caratteristiche appiattiti usati per la rete neurale BP (input a 700 dimensioni).
Implementazione: Il RandomForestRegressor della libreria scikit-learn (versione 1.2) è stato utilizzato con iperparametri predefiniti tranne dove specificato sopra.
Considerazioni statistiche
Per valutare la robustezza delle prestazioni predittive, ogni configurazione del modello è stata addestrata e valutata cinque volte con inizializzazioni casuali diverse (dove applicabile). Le metriche riportate rappresentano i valori medi delle cinque esecuzioni, accompagnate dalla deviazione standard per quantificare la variabilità. Non fu applicata alcuna validazione incrociata alle serie temporali per preservare l'ordine temporale; invece, per la regolazione degli iperparametri veniva utilizzato il set fisso di validazione cronologica.