class_docstr: Abstract base class for the lower bound multi-objective entropy search
  acquisition functions.
class_docstr_tok: ["Abstract","base","class","for","the","lower","bound","multi-objective","entropy","search","acquisition","functions","."]
docstr: Compute the posterior statistics.
  
  Args:
      X: A `batch_shape x q x d`-dim Tensor of inputs.
  
  Returns:
      A dictionary containing the posterior variables used to estimate the
      entropy.
  
      - "initial_entropy": A `batch_shape`-dim Tensor containing the entropy of
          the Gaussian random variable `p(Y| X, D_n)`.
      - "posterior_mean": A `batch_shape x num_pareto_samples x q x 1 x M`-dim
          Tensor containing the posterior mean at the input `X`.
      - "posterior_variance": A `batch_shape x num_pareto_samples x q x 1 x M`
          -dim Tensor containing the posterior variance at the input `X`
          excluding the observation noise.
      - "observation_noise": A `batch_shape x num_pareto_samples x q x 1 x M`
          -dim Tensor containing the observation noise at the input `X`.
      - "posterior_with_noise": The posterior distribution at `X` which
          includes the observation noise. This is used to compute the marginal
          log-probabilities with respect to `p(y| x, D_n)` for `x` in `X`.
docstr_tok: ["Compute","the","posterior","statistics",".","Args",":","X",":","A","`","batch_shape","x","q","x","d","`","-dim","Tensor","of","inputs",".","Returns",":","A","dictionary","containing","the","posterior","variables","used","to","estimate","the","entropy",".","-","``","initial_entropy","''",":","A","`","batch_shape","`","-dim","Tensor","containing","the","entropy","of","the","Gaussian","random","variable","`","p","(","Y|","X",",","D_n",")","`",".","-","``","posterior_mean","''",":","A","`","batch_shape","x","num_pareto_samples","x","q","x","1","x","M","`","-dim","Tensor","containing","the","posterior","mean","at","the","input","`","X","`",".","-","``","posterior_variance","''",":","A","`","batch_shape","x","num_pareto_samples","x","q","x","1","x","M","`","-dim","Tensor","containing","the","posterior","variance","at","the","input","`","X","`","excluding","the","observation","noise",".","-","``","observation_noise","''",":","A","`","batch_shape","x","num_pareto_samples","x","q","x","1","x","M","`","-dim","Tensor","containing","the","observation","noise","at","the","input","`","X","`",".","-","``","posterior_with_noise","''",":","The","posterior","distribution","at","`","X","`","which","includes","the","observation","noise",".","This","is","used","to","compute","the","marginal","log-probabilities","with","respect","to","`","p","(","y|","x",",","D_n",")","`","for","`","x","`","in","`","X","`","."]
code: def _compute_posterior_statistics(
      self, X: Tensor
  ) -> dict[str, Union[GPyTorchPosterior, Tensor]]:
      r"""Compute the posterior statistics.
  
      Args:
          X: A `batch_shape x q x d`-dim Tensor of inputs.
  
      Returns:
          A dictionary containing the posterior variables used to estimate the
          entropy.
  
          - "initial_entropy": A `batch_shape`-dim Tensor containing the entropy of
              the Gaussian random variable `p(Y| X, D_n)`.
          - "posterior_mean": A `batch_shape x num_pareto_samples x q x 1 x M`-dim
              Tensor containing the posterior mean at the input `X`.
          - "posterior_variance": A `batch_shape x num_pareto_samples x q x 1 x M`
              -dim Tensor containing the posterior variance at the input `X`
              excluding the observation noise.
          - "observation_noise": A `batch_shape x num_pareto_samples x q x 1 x M`
              -dim Tensor containing the observation noise at the input `X`.
          - "posterior_with_noise": The posterior distribution at `X` which
              includes the observation noise. This is used to compute the marginal
              log-probabilities with respect to `p(y| x, D_n)` for `x` in `X`.
      """
  
      pass
  
imports: from __future__ import annotations
  from abc import abstractmethod
  from math import pi
  from typing import Any, Optional, Tuple, Union
  import torch
  from botorch import settings
  from botorch.acquisition.acquisition import AcquisitionFunction, MCSamplerMixin
  from botorch.exceptions.errors import UnsupportedError
  from botorch.models.model import Model
  from botorch.models.model_list_gp_regression import ModelListGP
  from botorch.models.utils import fantasize
  from botorch.posteriors.gpytorch import GPyTorchPosterior
  from botorch.sampling.normal import SobolQMCNormalSampler
  from botorch.utils.transforms import concatenate_pending_points, t_batch_mode_transform
  from torch import Tensor
  from torch.distributions import Normal
label_desc: Use image node_id 2 for calling the LowerBoundMultiObjectiveEntropySearch obj's underlying member method code with example usage: obj._compute_posterior_statistics(X) without return types