class_docstr: Distributed Naive Bayes classifier for multinomial models
  
  Examples
  --------
  
  Load the 20 newsgroups dataset from Scikit-learn and train a
  Naive Bayes classifier.
  
  .. code-block:: python
  
      >>> import cupy as cp
  
      >>> from sklearn.datasets import fetch_20newsgroups
      >>> from sklearn.feature_extraction.text import CountVectorizer
  
      >>> from dask_cuda import LocalCUDACluster
      >>> from dask.distributed import Client
      >>> import dask
      >>> from cuml.dask.common import to_sparse_dask_array
      >>> from cuml.dask.naive_bayes import MultinomialNB
  
      >>> # Create a local CUDA cluster
      >>> cluster = LocalCUDACluster()
      >>> client = Client(cluster)
  
      >>> # Load corpus
      >>> twenty_train = fetch_20newsgroups(subset='train',
      ...                           shuffle=True, random_state=42)
  
      >>> cv = CountVectorizer()
      >>> xformed = cv.fit_transform(twenty_train.data).astype(cp.float32)
      >>> X = to_sparse_dask_array(xformed, client)
      >>> y = dask.array.from_array(twenty_train.target, asarray=False,
      ...                       fancy=False).astype(cp.int32)
  
      >>> # Train model
      >>> model = MultinomialNB()
      >>> model.fit(X, y)
      <cuml.dask.naive_bayes.naive_bayes.MultinomialNB object at 0x...>
  
      >>> # Compute accuracy on training set
      >>> model.score(X, y)
      array(0.924...)
      >>> client.close()
      >>> cluster.close()
class_docstr_tok: ["Distributed","Naive","Bayes","classifier","for","multinomial","models","Examples","--","--","--","--","Load","the","20","newsgroups","dataset","from","Scikit-learn","and","train","a","Naive","Bayes","classifier",".","..","code-block",":",":","python",">",">",">","import","cupy","as","cp",">",">",">","from","sklearn.datasets","import","fetch_20newsgroups",">",">",">","from","sklearn.feature_extraction.text","import","CountVectorizer",">",">",">","from","dask_cuda","import","LocalCUDACluster",">",">",">","from","dask.distributed","import","Client",">",">",">","import","dask",">",">",">","from","cuml.dask.common","import","to_sparse_dask_array",">",">",">","from","cuml.dask.naive_bayes","import","MultinomialNB",">",">",">","#","Create","a","local","CUDA","cluster",">",">",">","cluster","=","LocalCUDACluster","(",")",">",">",">","client","=","Client","(","cluster",")",">",">",">","#","Load","corpus",">",">",">","twenty_train","=","fetch_20newsgroups","(","subset='train","'",",","...","shuffle=True",",","random_state=42",")",">",">",">","cv","=","CountVectorizer","(",")",">",">",">","xformed","=","cv.fit_transform","(","twenty_train.data",")",".astype","(","cp.float32",")",">",">",">","X","=","to_sparse_dask_array","(","xformed",",","client",")",">",">",">","y","=","dask.array.from_array","(","twenty_train.target",",","asarray=False",",","...","fancy=False",")",".astype","(","cp.int32",")",">",">",">","#","Train","model",">",">",">","model","=","MultinomialNB","(",")",">",">",">","model.fit","(","X",",","y",")","<","cuml.dask.naive_bayes.naive_bayes.MultinomialNB","object","at","0x","...",">",">",">",">","#","Compute","accuracy","on","training","set",">",">",">","model.score","(","X",",","y",")","array","(","0.924","...",")",">",">",">","client.close","(",")",">",">",">","cluster.close","(",")"]
code: def _get_part(parts, idx):
      return parts[idx]
  
imports: from cuml.naive_bayes import MultinomialNB
  from cuml.common import rmm_cupy_ary
  from cuml.dask.common.input_utils import DistributedDataHandler
  from cuml.dask.common.func import tree_reduce
  from cuml.dask.common.func import reduce
  from cuml.dask.common.utils import wait_and_raise_from_futures
  from cuml.dask.common.base import DelayedPredictionMixin
  from cuml.dask.common.base import BaseEstimator
  from cuml.common import with_cupy_rmm
  import dask.array
  from toolz import first
  import dask
  from cuml.internals.safe_imports import gpu_only_import
label_desc: Use image node_id 7 for calling the MultinomialNB obj's underlying member method code with example usage: obj._get_part(parts, idx) and returns: parts