Closed kouroshD closed 3 years ago
Th implementation for Guided MoE has been done in https://github.com/ami-iit/element_human-action-intention-recognition/tree/devel/scripts/MoE. In specific, by runing this script we can train a Guided MoE model: https://github.com/ami-iit/element_human-action-intention-recognition/blob/devel/scripts/MoE/main_train_moe.py
For the implementation, I used the functional API (check here https://github.com/ami-iit/element_human-action-intention-recognition/blob/devel/scripts/MoE/Utilities.py) and wrote some custom layers in https://github.com/ami-iit/element_human-action-intention-recognition/blob/devel/scripts/MoE/CustomLayers.py to perform as selector part of the integration of the experts and gate outputs.
Here is the architecture of the model:
Here is also the results of the training:
Notice that, the loss and accuracy of the validation is better than the training set, since I have dropout layers in the gate architecture. In the experts layers, there are still some overfitting, I should see how can I reduce this overfitting. One idea is collect more and new dataset with more actions included as well.
One point to mention is that, in MoE case we are predicting the human action for the whole time horizon in the future, therefore it is subject tp lower accuracy wrt the case where we only recognize the next action in https://github.com/ami-iit/element_human-action-intention-recognition/issues/50
Still, there is space for further designing and tuning of the architecture and its parameters, in which I will further investigate with the new dataset that I want to collect soon.
I'll close this issue for the time being, since I have reached the goal of this issue.
Following the theoretical conceptualization done in https://github.com/ami-iit/element_human-action-intention-recognition/issues/52, in this issue I will track the activity for the implementation of Guided MoE network.