docstr: Finds the point on the curve that maximizes distance from the line determined by the endpoints.
docstr_tok: ["Finds","the","point","on","the","curve","that","maximizes","distance","from","the","line","determined","by","the","endpoints","."]
code: def _find_best_index_elbow(full_scores):
      """
      Finds the point on the curve that maximizes distance from the line determined by the endpoints.
      """
      scores = pd.DataFrame(full_scores).mean(0).values.tolist()
      first_point = np.array([0, scores[0]])
      last_point = np.array([len(scores) - 1, scores[-1]])
      elbow_metric = []
      for i in range(len(scores)):
          elbow_metric.append(
              FeatureGradientSelector._distance_to_line(
                  first_point, last_point, np.array([i, scores[i]])
              )
          )
      return np.argmax(elbow_metric)
  
imports: import time
  import numpy
  import pandas
  from sklearn.base import BaseEstimator
  from sklearn.feature_selection import SelectorMixin
  from sklearn.utils.validation import check_is_fitted
  import torch
  from nni.feature_engineering.feature_selector import FeatureSelector
  from .None import constants
  from .fginitialize import PrepareData
  from .fgtrain import _train
label_desc: Use image node_id 23 for calling the FeatureGradientSelector obj's underlying member method code with example usage: obj._find_best_index_elbow(full_scores) and returns: np