<commit_before>package ml.wolfe.util

/**
 * The trait to be implemented of an Optimisation algorithm
 * Created by <NAME> on 05/11/2014.
 */
trait HyperParameterOptimisationAlgorithm {

  /**
   * the best score after optimising
   */
  val bestScore: Double

  /**
   * The best set of parameters found
   */
  val bestParameters: Map[String,Double]

  /**
   * Sequence of intermediate steps, each a tuple of score and parameters at that step
   */
  val iterates: Seq[( Double, Map[String, Double] )]

  /**
   * Optimise the problem, starting at the given starting points
   * @param problem The optimisation problem
   * @param startingPoints A sequence of the starting points
   * @return The set of best parameters
   */
  def optimise(problem : OptimisationProblem, startingPoints: Seq[Map[String, Double]]): Map[String,Double]

  /**
   * To be implemented
   */
  def printConvergenceGraph()<commit_msg>Fix method that is yet to be implemented<commit_after>package ml.wolfe.util

/**
 * The trait to be implemented of an Optimisation algorithm
 * Created by <NAME> on 05/11/2014.
 */
trait HyperParameterOptimisationAlgorithm {

  /**
   * the best score after optimising
   */
  val bestScore: Double

  /**
   * The best set of parameters found
   */
  val bestParameters: Map[String, Double]

  /**
   * Sequence of intermediate steps, each a tuple of score and parameters at that step
   */
  val iterates: Seq[(Double, Map[String, Double])]

  /**
   * Optimise the problem, starting at the given starting points
   * @param problem The optimisation problem
   * @param startingPoints A sequence of the starting points
   * @return The set of best parameters
   */
  def optimise(problem: OptimisationProblem, startingPoints: Seq[Map[String, Double]]): Map[String, Double]

  /**
   * To be implemented
   */
  def printConvergenceGraph(): Unit = ???
{'fraction_non_alphanumeric': 0.09485530546623794, 'fraction_numerical': 0.00857449088960343, 'mean_word_length': 3.4665071770334928, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4825626', 'n_tokens_mistral': 547, 'n_tokens_neox': 516, 'n_words': 198}