class_docstr: Abstraction of a Lightwood predictor. The ``PredictorInterface`` encompasses how Lightwood interacts with the full ML pipeline. Internally,
  
  The ``PredictorInterface`` class must have several expected functions:
  
  - ``analyze_data``: Peform a statistical analysis on the unprocessed data; this helps inform downstream encoders and mixers on how to treat the data types.
  - ``preprocess``: Apply cleaning functions to each of the columns within the dataset to prepare them for featurization
  - ``split``: Split the input dataset into a train/dev/test set according to your splitter function
  - ``prepare``: Create and, if necessary, train your encoders to create feature representations from each column of your data.
  - ``featurize``: For input, pre-processed data, create feature vectors
  - ``fit``: Train your mixer models to yield predictions from featurized data
  - ``analyze_ensemble``: Evaluate the quality of fit for your mixer models
  - ``adjust``: Incorporate new data to update pre-existing model(s).
  
  For simplification, we offer an end-to-end approach that allows you to input raw data and follow every step of the process until you reach a trained predictor with the ``learn`` function:
  
      - ``learn``: An end-to-end technique specifying how to pre-process, featurize, and train the model(s) of interest. The expected input is raw, untrained data. No explicit output is provided, but the Predictor object will "host" the trained model thus.
  
  You can also use the predictor to now estimate new data:
  
  - ``predict``: Deploys the chosen best model, and evaluates the given data to provide target estimates.
  - ``save``: Saves the Predictor object for further use.
  
  The ``PredictorInterface`` is created via J{ai}son's custom code creation. A problem inherits from this class with pre-populated routines to fill out expected results, given the nature of each problem type.
class_docstr_tok: ["Abstraction","of","a","Lightwood","predictor",".","The","``","PredictorInterface","``","encompasses","how","Lightwood","interacts","with","the","full","ML","pipeline",".","Internally",",","The","``","PredictorInterface","``","class","must","have","several","expected","functions",":","-","``","analyze_data","``",":","Peform","a","statistical","analysis","on","the","unprocessed","data",";","this","helps","inform","downstream","encoders","and","mixers","on","how","to","treat","the","data","types",".","-","``","preprocess","``",":","Apply","cleaning","functions","to","each","of","the","columns","within","the","dataset","to","prepare","them","for","featurization","-","``","split","``",":","Split","the","input","dataset","into","a","train\/dev\/test","set","according","to","your","splitter","function","-","``","prepare","``",":","Create","and",",","if","necessary",",","train","your","encoders","to","create","feature","representations","from","each","column","of","your","data",".","-","``","featurize","``",":","For","input",",","pre-processed","data",",","create","feature","vectors","-","``","fit","``",":","Train","your","mixer","models","to","yield","predictions","from","featurized","data","-","``","analyze_ensemble","``",":","Evaluate","the","quality","of","fit","for","your","mixer","models","-","``","adjust","``",":","Incorporate","new","data","to","update","pre-existing","model","(","s",")",".","For","simplification",",","we","offer","an","end-to-end","approach","that","allows","you","to","input","raw","data","and","follow","every","step","of","the","process","until","you","reach","a","trained","predictor","with","the","``","learn","``","function",":","-","``","learn","``",":","An","end-to-end","technique","specifying","how","to","pre-process",",","featurize",",","and","train","the","model","(","s",")","of","interest",".","The","expected","input","is","raw",",","untrained","data",".","No","explicit","output","is","provided",",","but","the","Predictor","object","will","``","host","''","the","trained","model","thus",".","You","can","also","use","the","predictor","to","now","estimate","new","data",":","-","``","predict","``",":","Deploys","the","chosen","best","model",",","and","evaluates","the","given","data","to","provide","target","estimates",".","-","``","save","``",":","Saves","the","Predictor","object","for","further","use",".","The","``","PredictorInterface","``","is","created","via","J","{","ai","}","son","'s","custom","code","creation",".","A","problem","inherits","from","this","class","with","pre-populated","routines","to","fill","out","expected","results",",","given","the","nature","of","each","problem","type","."]
docstr: Adjusts a previously trained model on new data. Adopts the same process as ``learn`` but with the exception that the `adjust` function expects the best model to have been already trained.
  
  .. warning:: This is experimental and subject to change.
  :param new_data: New data used to adjust a previously trained model.
  :param old_data: In some situations, the old data is still required to train a model (i.e. Regression mixer) to ensure the new data doesn't entirely override it.
  :param adjust_args: Optional dictionary with parameters to customize the finetuning process.
  
  :returns: Adjusts best-fit model in-place, doesn't return anything.
docstr_tok: ["Adjusts","a","previously","trained","model","on","new","data",".","Adopts","the","same","process","as","``","learn","``","but","with","the","exception","that","the","`","adjust","`","function","expects","the","best","model","to","have","been","already","trained",".","..","warning",":",":","This","is","experimental","and","subject","to","change",".",":","param","new_data",":","New","data","used","to","adjust","a","previously","trained","model",".",":","param","old_data",":","In","some","situations",",","the","old","data","is","still","required","to","train","a","model","(","i.e",".","Regression","mixer",")","to","ensure","the","new","data","does","n't","entirely","override","it",".",":","param","adjust_args",":","Optional","dictionary","with","parameters","to","customize","the","finetuning","process",".",":","returns",":","Adjusts","best-fit","model","in-place",",","does","n't","return","anything","."]
code: def adjust(
      self,
      new_data: pd.DataFrame,
      old_data: Optional[pd.DataFrame] = None,
      adjust_args: Optional[dict] = None,
  ) -> None:
      """
      Adjusts a previously trained model on new data. Adopts the same process as ``learn`` but with the exception that the `adjust` function expects the best model to have been already trained.
  
      .. warning:: This is experimental and subject to change.
      :param new_data: New data used to adjust a previously trained model.
      :param old_data: In some situations, the old data is still required to train a model (i.e. Regression mixer) to ensure the new data doesn't entirely override it.
      :param adjust_args: Optional dictionary with parameters to customize the finetuning process.
  
      :returns: Adjusts best-fit model in-place, doesn't return anything.
      """  # noqa
      pass
  
file_path: lightwood/lightwood/api/predictor.py
imports: import dill
  from typing import Dict, Optional
  import pandas
  from lightwood.api.types import ModelAnalysis
label_desc: Use image node_id 10 for calling the PredictorInterface obj's underlying member method code with example usage: obj.adjust(new_data, old_data, adjust_args) without return types