Lorsque le multitâche est effectué avec DeepChem, la méthode d'évaluation de la classe deepchem.models.Model donne le score moyen de chaque tâche. Cependant, c'est l'humanité de savoir ce qui est arrivé au score de chaque tâche. J'ai étudié comment faire cela cette fois, alors prenez-en note.
Tout ce que vous avez à faire est de spécifier per_task_metrics = True lors de l'exécution de la méthode d'évaluation. Ensuite, comme deuxième valeur de retour, le score pour chaque tâche est obtenu.
validation_score, validation_par_task_score = model.evaluate(validation_set, metrics, transformers, per_task_metrics=True)
print(validation_par_task_score)
Par exemple, si l'indice d'évaluation est roc_auc et qu'il y a 9 tâches, le roc_auc de chaque tâche peut être obtenu dans le format suivant.
{'mean-roc_auc_score': array([0.77601105, 0.80917502, 0.85473596, 0.8459161 , 0.73406951,
0.77492466, 0.65670436, 0.7812783 , 0.80639215])}
DeepChem est une bibliothèque profonde qui est difficile à obtenir au début, mais vous pouvez faire ce que vous voulez avec beaucoup d'essais et d'erreurs.
Recommended Posts