org.apache.mahout.classifier.sgd
Class ElasticBandPrior

java.lang.Object
  extended by org.apache.mahout.classifier.sgd.ElasticBandPrior
All Implemented Interfaces:
org.apache.hadoop.io.Writable, PriorFunction

public class ElasticBandPrior
extends Object
implements PriorFunction

Implements a linear combination of L1 and L2 priors. This can give an interesting mixture of sparsity and load-sharing between redundant predictors.


Constructor Summary
ElasticBandPrior()
           
ElasticBandPrior(double alphaByLambda)
           
 
Method Summary
 double age(double oldValue, double generations, double learningRate)
          Applies the regularization to a coefficient.
 double logP(double betaIJ)
          Returns the log of the probability of a particular coefficient value according to the prior.
 void readFields(DataInput in)
           
 void write(DataOutput out)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ElasticBandPrior

public ElasticBandPrior()

ElasticBandPrior

public ElasticBandPrior(double alphaByLambda)
Method Detail

age

public double age(double oldValue,
                  double generations,
                  double learningRate)
Description copied from interface: PriorFunction
Applies the regularization to a coefficient.

Specified by:
age in interface PriorFunction
Parameters:
oldValue - The previous value.
generations - The number of generations.
learningRate - The learning rate with lambda baked in.
Returns:
The new coefficient value after regularization.

logP

public double logP(double betaIJ)
Description copied from interface: PriorFunction
Returns the log of the probability of a particular coefficient value according to the prior.

Specified by:
logP in interface PriorFunction
Parameters:
betaIJ - The coefficient.
Returns:
The log probability.

write

public void write(DataOutput out)
           throws IOException
Specified by:
write in interface org.apache.hadoop.io.Writable
Throws:
IOException

readFields

public void readFields(DataInput in)
                throws IOException
Specified by:
readFields in interface org.apache.hadoop.io.Writable
Throws:
IOException


Copyright © 2008–2014 The Apache Software Foundation. All rights reserved.