code: def _apply_kernel_univariate(
      X, weights, length, bias, dilation, padding
  ):
      n_timepoints = len(X)
  
      output_length = (n_timepoints + (2 * padding)) - (
          (length - 1) * dilation
      )
  
      _ppv = 0
      _max = np.NINF
  
      end = (n_timepoints + padding) - ((length - 1) * dilation)
  
      for i in range(-padding, end):
          _sum = bias
  
          index = i
  
          for j in range(length):
              if index > -1 and index < n_timepoints:
                  _sum = _sum + weights[j] * X[index]
  
              index = index + dilation
  
          if _sum > _max:
              _max = _sum
  
          if _sum > 0:
              _ppv += 1
  
      return np.float32(_ppv / output_length), np.float32(_max)
  
imports: import numpy
  from sktime.utils.numba.njit import njit
  from sktime.utils.validation._dependencies import _check_soft_dependencies
label_desc: Use image node_id 2 for calling a global function with example usage: _apply_kernel_univariate(X, weights, length, bias, dilation, padding) and returns: np,  np