Skip to main content
. 2022 Apr 30;22(9):3424. doi: 10.3390/s22093424
Algorithm 1: Multilayer Perceptrón algorithm implemented for the EMG
1 p ←Input_vector
2 T ←Output_vector
3 /*** output vector T where the labeling value is stored by one-hot-encoding of each the classes***/
4 T ←0,0,0,1,0,0,2,0,0,3,0,0,4,0,0,0
5 scaler ←StandardScaler .fitP
6 p ←scaler.transformP
7 /**Divide p into a test (Ptest) and a training set Ptrain**/
8 one_hot_labels=to_categorialT,num_classes←4
9 P_train,P_test,T_train,T_test←train_test_splitP,one_hot_labels, test_size←0.20,random_state←42
10 /**Random Initialization**/
11 W←2×random−0.5×scale
12 epochs←3000
13 hiddenNodes←4
14 model←Sequential 
15 model.add(DensehiddenNodes,activation←relu,input_dim←4
16 a1←max0,n//ReLu activation function
17 model.addDense4,activation←′softmax′
18 a2←en4/ ∑15en4//Softmax activation function
19 model.summary 
20 loss←categorical_crossentropy
21 /**Loss function (categorial cross entropy**/
22 Ly, y^←1N∑j=1M∑i=1Nyijlogy^ij
22 optimizer ←tf.keras.optimzers.Adam 
24 W ←W−αmv+ϵ
25 model.compileloss←loss,optimizer←optimizer,metrics←′accuracy′
26 history←model.fitP_train,T_train ,epochs←epochs,vebose←1 ,validation_split←0.1 
27 test, test ←model.evaluateP,t,verbose←1
28 weightsmodel.layers,3
29 scalingscaler,3
30 layersmodel.layers