Многопоточность для цикла в Python в классе - PullRequest
0 голосов
/ 02 июня 2019

В настоящее время я кодирую Случайный Лес, и я думал о том, чтобы сделать это с помощью многопоточности.

Я видел разные пути, но пока ни один не работал.

class RandomForest(Learner):
   def fit(self,X,y):
           selected_criterion=Criterion(self._name)
           self._trees=[]
           dataset=Dataset(X,y,self._dataset_state)
           for i in range(self._num_trees):   #multithreading here
               ds=dataset.bootstrap(self._ratio_samples)
               print("Tree", i, "built.")
               self._trees.append(self._make_tree(ds, selected_criterion))

   def _make_tree(self,dataset,selected_criterion):
           node=SplitNode(0,self,selected_criterion)
           tree=node.make_tree(dataset.X,dataset.y)
           return tree

Хотелось бы, чтобы каждое дерево или их количество были построены параллельно. Есть ли простое решение?

Многопроцессорная обработка также возможна, но кажется более сложной.

...