/**
 * \page BoxAlgorithm_TrainerSklearn Trainer Sklearn
__________________________________________________________________

Detailed description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Description|
 This box aims to create a machine learning model based on algorithm implemented in scikit-learn. 
 The user can modify nearly all the settings from scikit-learn. 
 It is possible for the user to test his model with a test set. 
 He can also save the model in a file which he can use with the ProcessML box.

 An AdaBoost classifier is a meta-estimator that begins by fitting 
 a classifier on the original dataset and then fits additional 
 copies of the classifier on the same dataset but where the weights 
 of incorrectly classified instances are adjusted such that 
 subsequent classifiers focus more on difficult cases.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Description|
__________________________________________________________________

Settings description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Settings|
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Settings|

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting1|
 The box clock frequency. The Python process function is called at 
 each tick.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting1|

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting2|
 The path to the file where the user want to save the model.
 If empty, the model is not saved.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting2|

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting3|
 The path to the file where the user want to load a model.
 If empty, a new model will be created.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting3|

  * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting4|
 The name of the scikit-learn algorithm. The user should not try
 to modify this setting.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting4|

  * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting5|
 Float between 0 and 1 (1 not included) which represents the proportion 
 of the input dataset transformed into a test set, allowing us to 
 evaluate our model once the training on the set train is done. If 0 
 is filled in, then all the data will constitute the train set and no 
 metrics will be displayed.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting5|

  * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Setting6|
 Names of the labels of input's data. This parameter is only usefull 
 when the PolyMode is used (several streamed matrix in input, one for
 each label). Then the labels as to be described as follows :
 "my_label_1, mylabel_2, my_label_3, etc"
 Otherwise the labels will be "1, 2, 3, etc". 
 If the input mode is ov-mode (one input streamed matrix and one 
 stimulation), the labels will be read by the stimulations.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Setting6|

The rest of the settings are from scikit-learn. You can find 
their purpose here :
https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostClassifier.html

__________________________________________________________________

Examples description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Examples|
 See <a href="http://openvibe.inria.fr/tutorial-using-python-with-openvibe">this page</a> for commented examples.
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Examples|
__________________________________________________________________

Miscellaneous description
__________________________________________________________________

 * |OVP_DocBegin_BoxAlgorithm_TrainerSklearn_Miscellaneous|
 * |OVP_DocEnd_BoxAlgorithm_TrainerSklearn_Miscellaneous|
 */