class_docstr: Gaussian Naive Bayes (GaussianNB)
  
  Can perform online updates to model parameters via `partial_fit` method.
  For details on algorithm used to update feature means and variance online,
  see Stanford CS tech report STAN-CS-79-773 by Chan, Golub, and LeVeque:
  
      http://i.stanford.edu/pub/cstr/reports/cs/tr/79/773/CS-TR-79-773.pdf
  
  Read more in the :ref:`User Guide <gaussian_naive_bayes>`.
  
  Parameters
  ----------
  priors : array-like, shape (n_classes,)
      Prior probabilities of the classes. If specified the priors are not
      adjusted according to the data.
  
  Attributes
  ----------
  class_prior_ : array, shape (n_classes,)
      probability of each class.
  
  class_count_ : array, shape (n_classes,)
      number of training samples observed in each class.
  
  theta_ : array, shape (n_classes, n_features)
      mean of each feature per class
  
  sigma_ : array, shape (n_classes, n_features)
      variance of each feature per class
  
  Examples
  --------
  >>> import numpy as np
  >>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
  >>> Y = np.array([1, 1, 1, 2, 2, 2])
  >>> from sklearn.naive_bayes import GaussianNB
  >>> clf = GaussianNB()
  >>> clf.fit(X, Y)
  GaussianNB(priors=None)
  >>> print(clf.predict([[-0.8, -1]]))
  [1]
  >>> clf_pf = GaussianNB()
  >>> clf_pf.partial_fit(X, Y, np.unique(Y))
  GaussianNB(priors=None)
  >>> print(clf_pf.predict([[-0.8, -1]]))
  [1]
class_docstr_tok: ["Gaussian","Naive","Bayes","(","GaussianNB",")","Can","perform","online","updates","to","model","parameters","via","`","partial_fit","`","method",".","For","details","on","algorithm","used","to","update","feature","means","and","variance","online",",","see","Stanford","CS","tech","report","STAN-CS-79-773","by","Chan",",","Golub",",","and","LeVeque",":","http",":","\/\/i.stanford.edu\/pub\/cstr\/reports\/cs\/tr\/79\/773\/CS-TR-79-773.pdf","Read","more","in","the",":","ref",":","`","User","Guide","<","gaussian_naive_bayes",">","`",".","Parameters","--","--","--","--","--","priors",":","array-like",",","shape","(","n_classes",",",")","Prior","probabilities","of","the","classes",".","If","specified","the","priors","are","not","adjusted","according","to","the","data",".","Attributes","--","--","--","--","--","class_prior_",":","array",",","shape","(","n_classes",",",")","probability","of","each","class",".","class_count_",":","array",",","shape","(","n_classes",",",")","number","of","training","samples","observed","in","each","class",".","theta_",":","array",",","shape","(","n_classes",",","n_features",")","mean","of","each","feature","per","class","sigma_",":","array",",","shape","(","n_classes",",","n_features",")","variance","of","each","feature","per","class","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","X","=","np.array","(","[","[","-1",",","-1","]",",","[","-2",",","-1","]",",","[","-3",",","-2","]",",","[","1",",","1","]",",","[","2",",","1","]",",","[","3",",","2","]","]",")",">",">",">","Y","=","np.array","(","[","1",",","1",",","1",",","2",",","2",",","2","]",")",">",">",">","from","sklearn.naive_bayes","import","GaussianNB",">",">",">","clf","=","GaussianNB","(",")",">",">",">","clf.fit","(","X",",","Y",")","GaussianNB","(","priors=None",")",">",">",">","print","(","clf.predict","(","[","[","-0.8",",","-1","]","]",")",")","[","1","]",">",">",">","clf_pf","=","GaussianNB","(",")",">",">",">","clf_pf.partial_fit","(","X",",","Y",",","np.unique","(","Y",")",")","GaussianNB","(","priors=None",")",">",">",">","print","(","clf_pf.predict","(","[","[","-0.8",",","-1","]","]",")",")","[","1","]"]
code: def _joint_log_likelihood(self, X):
      check_is_fitted(self, "classes_")
  
      X = check_array(X)
      joint_log_likelihood = []
      for i in range(np.size(self.classes_)):
          jointi = np.log(self.class_prior_[i])
          n_ij = -0.5 * np.sum(np.log(2.0 * np.pi * self.sigma_[i, :]))
          n_ij -= 0.5 * np.sum(
              ((X - self.theta_[i, :]) ** 2) / (self.sigma_[i, :]), 1
          )
          joint_log_likelihood.append(jointi + n_ij)
  
      joint_log_likelihood = np.array(joint_log_likelihood).T
      return joint_log_likelihood
  
imports: from abc import ABCMeta, abstractmethod
  import numpy
  from scipy.sparse import issparse
  from .base import BaseEstimator, ClassifierMixin
  from .preprocessing import binarize
  from .preprocessing import LabelBinarizer
  from .preprocessing import label_binarize
  from .utils import check_X_y, check_array
  from .utils.extmath import safe_sparse_dot, logsumexp
  from .utils.multiclass import _check_partial_fit_first_call
  from .utils.fixes import in1d
  from .utils.validation import check_is_fitted
  from .externals import six
label_desc: Use image node_id 6 for calling the GaussianNB obj's underlying member method code with example usage: obj._joint_log_likelihood(X) and returns: joint_log_likelihood