Open J0SEF4 opened 1 month ago
Se añadio:
Hola! Los resultados están super!. Sería ideal agregar el nombre de las características seleccionadas para que después podamos evaluar cuáles eliminar.
Seria ideal hacer algunos cambios en:
zc = ((rectified_signal[:-1] * rectified_signal[1:]) < 0).sum()
por zc = ((signal0[:-1] * signal0[1:]) < 0).sum()
. Como la señal está rectificada, nunca pasa por cero.fourier_feats = fourier(rectified_signal)
y dejaría solo scipy.signal.welch
, ya que son proporcionales entre sí. Además, aplicaría la transformada en la señal original y no en la rectificada; de lo contrario, se modifica el espectro de frecuencias típico del EMG.h0
y c0
se inicializaban como un array de ceros al comienzo de cada batch.train_loss
) y prueba (test_loss
).device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
.Agregué features.ipynb
donde se calcula el espectrograma de uno de los músculos. Sería ideal explorar el uso del espectrograma como única característica con redes neuronales.
Se hizó lo siguente en el archivo Experimentos con RN con HO.ipynb:
Se obtuvieron los siguientes resultados con distintas cantidades de características seleccionadas para sfs: | # features | Simple NN | CNN | RNN |
---|---|---|---|---|
60 | 86.6 | 85 | 65 | |
55 | 83.3 | 81.6 | 41.6 | |
50 | 86.6 | 83.3 | 78.3 | |
45 | 90 | 81.6 | 56.6 | |
40 | 85 | 90 | 78.3 | |
35 | 83.3 | 83.3 | 75 | |
30 | 80 | 81.6 | 76.6 | |
25 | 81.6 | 81.6 | 76.6 | |
20 | 83.3 | 76.6 | 80 | |
15 | 81.6 | 80 | 80 | |
10 | 76.6 | 73.3 | 63.3 | |
5 | 73.3 | 75 | 73.3 |
Considerar que el resultado de accuracy varía cada vez que se ejecuta.
Branch Experimentos Clasificadores y adentro está lo mismo del main y se añadió una carpeta Experimentos Clasificadores que por ahora tiene 2 archivos: