Class LipschitzLossLearner

java.lang.Object
org.drip.learning.rxtor1.GeneralizedLearner
org.drip.learning.rxtor1.LipschitzLossLearner
All Implemented Interfaces:
EmpiricalLearningMetricEstimator
Direct Known Subclasses:
ApproximateLipschitzLossLearner

public class LipschitzLossLearner
extends GeneralizedLearner
LipschitzLossLearner implements the Learner Class that holds the Space of Normed R1 To Normed R1 Learning Functions for the Family of Loss Functions that are Lipschitz, i.e., loss (ep) - loss (ep') Less Than C * |ep-ep'|

The References are:

  • Alon, N., S. Ben-David, N. Cesa Bianchi, and D. Haussler (1997): Scale-sensitive Dimensions, Uniform Convergence, and Learnability Journal of Association of Computational Machinery 44 (4) 615-631
  • Anthony, M., and P. L. Bartlett (1999): Artificial Neural Network Learning - Theoretical Foundations Cambridge University Press Cambridge, UK
  • Kearns, M. J., R. E. Schapire, and L. M. Sellie (1994): Towards Efficient Agnostic Learning Machine Learning 17 (2) 115-141
  • Lee, W. S., P. L. Bartlett, and R. C. Williamson (1998): The Importance of Convexity in Learning with Squared Loss IEEE Transactions on Information Theory 44 1974-1980
  • Vapnik, V. N. (1998): Statistical learning Theory Wiley New York


Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • LipschitzLossLearner

      public LipschitzLossLearner​(NormedRxToNormedR1Finite funcClassRxToR1, CoveringNumberLossBound cdpb, RegularizationFunction regularizerFunc, double dblLipschitzSlope) throws java.lang.Exception
      LipschitzLossLearner Constructor
      Parameters:
      funcClassRxToR1 - R^x To R^1 Function Class
      cdpb - The Covering Number based Deviation Upper Probability Bound Generator
      regularizerFunc - The Regularizer Function
      dblLipschitzSlope - The Lipschitz Slope Bound
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • lipschitzSlope

      public double lipschitzSlope()
      Retrieve the Lipschitz Slope Bound
      Returns:
      The Lipschitz Slope Bound
    • lossSampleCoveringNumber

      public double lossSampleCoveringNumber​(GeneralizedValidatedVector gvvi, double dblEpsilon, boolean bSupremum) throws java.lang.Exception
      Description copied from interface: EmpiricalLearningMetricEstimator
      Retrieve the Loss Class Sample Covering Number - L-Infinity or L-p based Based
      Parameters:
      gvvi - The Validated Instance Vector Sequence
      dblEpsilon - The Deviation of the Empirical Mean from the Population Mean
      bSupremum - TRUE To Use the Supremum Metric in place of the Built-in Metric
      Returns:
      The Loss Class Sample Covering Number - L-Infinity or L-p based Based
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • empiricalLoss

      public double empiricalLoss​(R1ToR1 funcLearnerR1ToR1, GeneralizedValidatedVector gvviX, GeneralizedValidatedVector gvviY) throws java.lang.Exception
      Description copied from interface: EmpiricalLearningMetricEstimator
      Compute the Empirical Sample Loss
      Parameters:
      funcLearnerR1ToR1 - The R^1 To R^1 Learner Function
      gvviX - The Validated Predictor Instance
      gvviY - The Validated Response Instance
      Returns:
      The Empirical Loss
      Throws:
      java.lang.Exception - Thrown if the Empirical Loss cannot be computed
    • empiricalLoss

      public double empiricalLoss​(RdToR1 funcLearnerRdToR1, GeneralizedValidatedVector gvviX, GeneralizedValidatedVector gvviY) throws java.lang.Exception
      Description copied from interface: EmpiricalLearningMetricEstimator
      Compute the Empirical Sample Loss
      Parameters:
      funcLearnerRdToR1 - The R^d To R^1 Learner Function
      gvviX - The Validated Predictor Instance
      gvviY - The Validated Response Instance
      Returns:
      The Empirical Loss
      Throws:
      java.lang.Exception - Thrown if the Empirical Loss cannot be computed
    • empiricalRisk

      public double empiricalRisk​(R1R1 distR1R1, R1ToR1 funcLearnerR1ToR1, GeneralizedValidatedVector gvviX, GeneralizedValidatedVector gvviY) throws java.lang.Exception
      Description copied from interface: EmpiricalLearningMetricEstimator
      Compute the Empirical Sample Risk
      Parameters:
      distR1R1 - R^1 R^1 Multivariate Measure
      funcLearnerR1ToR1 - The R^1 To R^1 Learner Function
      gvviX - The Validated Predictor Instance
      gvviY - The Validated Response Instance
      Returns:
      The Empirical Sample Risk
      Throws:
      java.lang.Exception - Thrown if the Empirical Sample Risk cannot be computed
    • empiricalRisk

      public double empiricalRisk​(RdR1 distRdR1, RdToR1 funcLearnerRdToR1, GeneralizedValidatedVector gvviX, GeneralizedValidatedVector gvviY) throws java.lang.Exception
      Description copied from interface: EmpiricalLearningMetricEstimator
      Compute the Empirical Sample Risk
      Parameters:
      distRdR1 - R^d R^1 Multivariate Measure
      funcLearnerRdToR1 - The R^d To R^1 Learner Function
      gvviX - The Validated Predictor Instance
      gvviY - The Validated Response Instance
      Returns:
      The Empirical Sample Risk
      Throws:
      java.lang.Exception - Thrown if the Empirical Sample Risk cannot be computed