SKLEARN实例方法的多处理

2024-04-26 07:14:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我习惯于mapstarmap函数分配到任何类型的iterable对象。我通常是这样从数据帧的原始内容列中提取词干词的:

pool = mp.Pool(cpu_nb)
totalvocab_stemmed = pool.map(tokenize_and_stem, site_df["raw_content"])
pool.close()

a good article on function parallelization in python

到目前为止还不错。但是有没有一种简单的方法来并行执行sklearn方法呢。这是我想分发的一个例子

tfidf_vectorizer = TfidfVectorizer(max_df=0.6, max_features=200000,
                             min_df=0.2, stop_words=stop_words,
                             use_idf=True, tokenizer=tokenize_and_stem, ngram_range=(1,3))

tfidf_matrix = tfidf_vectorizer.fit_transform(self.site_df["raw_content"])

tfidf_矩阵不是一个元素列表,因此在我的CPU中有核心的元素中拆分站点_df[“原始内容”]以执行GOF池并在以后将所有内容重新堆叠在一起是不可行的。我看到了一些有趣的选择:

  • 那个IPython.parallel公司客户机source
  • 使用的parallel\u backend函数sklearn.externals.joblib作为上下文source

我可能很笨,但两次尝试都不太成功。你会怎么做?你知道吗


Tags: and方法函数map内容dfrawsite