Package org.drip.learning.bound
Class CoveringNumberLossBound
java.lang.Object
org.drip.learning.bound.CoveringNumberLossBound
public class CoveringNumberLossBound
extends java.lang.Object
CoveringNumberLossBound provides the Upper Probability Bound that the Loss/Deviation of the
Empirical from the Actual Mean of the given Learner Class exceeds 'epsilon', using the Covering Number
Generalization Bounds. This is expressed as
C1 (n) * N (epsilon, n) * exp (-n.epsilon^b/C2)
where:
The References are:
C1 (n) * N (epsilon, n) * exp (-n.epsilon^b/C2)
where:
- n is the Size of the Sample
- 'epsilon' is the Deviation Empirical Mean from the Population Mean
- C1 (n) is the sample coefficient function
- C2 is an exponent scaling constant
- 'b' an exponent ((i.e., the Epsilon Exponent) that depends on the setting (i.e., agnostic/classification/regression/convex etc)
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
- Module = Computational Core Module
- Library = Statistical Learning
- Project = Agnostic Learning Bounds under Empirical Loss Minimization Schemes
- Package = Covering Numbers, Concentration, Lipschitz Bounds
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description CoveringNumberLossBound(R1ToR1 funcSampleCoefficient, double dblEpsilonExponent, double dblExponentScaler)
CoveringNumberLossBound Constructor -
Method Summary
Modifier and Type Method Description double
deviationProbabilityUpperBound(int iSampleSize, double dblEpsilon)
Compute the Upper Bound of the Probability of the Absolute Deviation between the Empirical and the Population Meansdouble
epsilonExponent()
Retrieve the Exponential Epsilon Exponentdouble
exponentScaler()
Retrieve the Exponent ScalerR1ToR1
sampleCoefficient()
Retrieve the Sample Coefficient FunctionMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
CoveringNumberLossBound
public CoveringNumberLossBound(R1ToR1 funcSampleCoefficient, double dblEpsilonExponent, double dblExponentScaler) throws java.lang.ExceptionCoveringNumberLossBound Constructor- Parameters:
funcSampleCoefficient
- The Sample Coefficient FunctiondblEpsilonExponent
- The Epsilon ExponentdblExponentScaler
- The Exponent Scaler- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
sampleCoefficient
Retrieve the Sample Coefficient Function- Returns:
- The Sample Coefficient Function
-
epsilonExponent
public double epsilonExponent()Retrieve the Exponential Epsilon Exponent- Returns:
- The Exponential Epsilon Exponent
-
exponentScaler
public double exponentScaler()Retrieve the Exponent Scaler- Returns:
- The Exponent Scaler
-
deviationProbabilityUpperBound
public double deviationProbabilityUpperBound(int iSampleSize, double dblEpsilon) throws java.lang.ExceptionCompute the Upper Bound of the Probability of the Absolute Deviation between the Empirical and the Population Means- Parameters:
iSampleSize
- The Sample SizedblEpsilon
- The Deviation between Population and Empirical Means- Returns:
- The Upper Bound of the Probability of the Deviation between the Empirical and the Population Means
- Throws:
java.lang.Exception
- Thrown if the Upper Bound of the Probability cannot be computed
-