docstr: Transform the response values by linearly scaling them between zero and one and
  then using the log transformation.
docstr_tok: ["Transform","the","response","values","by","linearly","scaling","them","between","zero","and","one","and","then","using","the","log","transformation","."]
code: def transform_response_values(self, values: np.ndarray) -> np.ndarray:
      """Transform the response values by linearly scaling them between zero and one and
      then using the log transformation.
      """
      min_y = self._min_y - (
          self._percentile - self._min_y
      )  # Subtract the difference between the percentile and the minimum
      min_y -= (
          constants.VERY_SMALL_NUMBER
      )  # Minimal value to avoid numerical issues in the log scaling below
  
      # Linear scaling
      # prevent diving by zero
      min_y[np.where(min_y == self._max_y)] *= 1 - 10**-10
  
      with warnings.catch_warnings():
          warnings.filterwarnings("ignore", category=RuntimeWarning)
  
          values = (values - min_y) / (self._max_y - min_y)
          return np.log(values)
  
file_path: SMAC3/smac/runhistory/encoder/log_scaled_encoder.py
imports: from __future__ import annotations
  import warnings
  import numpy
  from smac import constants
  from smac.runhistory.encoder.encoder import RunHistoryEncoder
  from smac.utils.logging import get_logger
label_desc: Use image node_id 1 for calling the RunHistoryLogScaledEncoder obj's underlying member method code with example usage: obj.transform_response_values(values) and returns: np