class_docstr: Ensemble posterior, that should be used for ensemble models that compute
  eagerly a finite number of samples per X value as for example a deep ensemble
  or a random forest.
class_docstr_tok: ["Ensemble","posterior",",","that","should","be","used","for","ensemble","models","that","compute","eagerly","a","finite","number","of","samples","per","X","value","as","for","example","a","deep","ensemble","or","a","random","forest","."]
docstr: Args:
      values: Values of the samples produced by this posterior as
          a `(b) x s x q x m` tensor where `m` is the output size of the
          model and `s` is the ensemble size.
docstr_tok: ["Args",":","values",":","Values","of","the","samples","produced","by","this","posterior","as","a","`","(","b",")","x","s","x","q","x","m","`","tensor","where","`","m","`","is","the","output","size","of","the","model","and","`","s","`","is","the","ensemble","size","."]
code: def __init__(self, values: Tensor) -> None:
      r"""
      Args:
          values: Values of the samples produced by this posterior as
              a `(b) x s x q x m` tensor where `m` is the output size of the
              model and `s` is the ensemble size.
      """
      if values.ndim < 3:
          raise ValueError(
              "Values has to be at least three-dimensional."
          )
      self.values = values
  
file_path: botorch/botorch/posteriors/ensemble.py
imports: from __future__ import annotations
  from typing import Optional
  import torch
  from botorch.posteriors.posterior import Posterior
  from torch import Tensor
label_desc: Use image node_id 1 to create a new EnsemblePosterior object from inherited base classes: Posterior with example: obj = EnsemblePosterior(values)