Bonjour,

Je réalise un projet de machine learning dans lequel j’emploie des forêts aléatoires (c'est un modèle d'apprentissage automatique). Pour accélérer mon programme, puisque la création d'arbre décisionnel peut totalement se faire en parallèle j'ai essayé d'employer le module multiprocessing.
Cependant lorsque je fais tourner ma fonction les messages d'erreur suivant apparaissent :
ModuleNotFoundError: No module named 'ForetClasse'
BrokenPipeError: [Errno 32] Broken pipe
J'ai un fichier ForetClasse.py dans lequel se trouve mes fonctions et voici le code qui est censé exécuter ces fonctions dans plusieurs processus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from os import chdir
from multiprocessing import Process, Queue
import time
chdir('C:\\Users\\rauli\\Desktop\\TIPE')
import ForetClasse
 
def ForetMultiprocess(data, Num_process, population, profondeur, taillemin, arg):
    if __name__ == '__main__':
        q = Queue()
        start_time = time.time()
        foret= []
        echantillons = ForetClasse.bagging(data,population)
        n = len(echantillons)
        for k in range(Num_process):
            process = Process(target = ForetClasse.jardinage, args =(q, echantillons[k*n//Num_process:(k+1)*n//Num_process], 20, 5, 2))
            process.start()
        while q.qsize()<population:
            time.sleep(2)
        return q
J'ai pourtant bien spécifié l'accès à mon fichier, et j'ai aussi inscrit if __name__ == '__main__' (bien que je n'ai pas compris à quoi cela sert concrètement)
Je pourrais vous donner mon fichier ForetClasse.py si vous voulez, mais je doute que l'erreur provienne du fichier d'après les messages d'erreur.

Merci beaucoup de votre aide