public class IsotonicRegression
extends java.lang.Object
implements java.io.Serializable
Isotonic regression. Currently implemented using parallelized pool adjacent violators algorithm. Only univariate (single feature) algorithm supported.
Sequential PAV implementation based on:
Tibshirani, Ryan J., Holger Hoefling, and Robert Tibshirani.
"Nearly-isotonic regression." Technometrics 53.1 (2011): 54-61.
Available from http://www.stat.cmu.edu/~ryantibs/papers/neariso.pdf
Sequential PAV parallelization based on:
Kearsley, Anthony J., Richard A. Tapia, and Michael W. Trosset.
"An approach to parallelizing isotonic regression."
Applied Mathematics and Parallel Computing. Physica-Verlag HD, 1996. 141-147.
Available from http://softlib.rice.edu/pub/CRPC-TRs/reports/CRPC-TR96640.pdf
Constructor and Description |
---|
IsotonicRegression()
Constructs IsotonicRegression instance with default parameter isotonic = true.
|
Modifier and Type | Method and Description |
---|---|
IsotonicRegressionModel |
run(JavaRDD<scala.Tuple3<java.lang.Double,java.lang.Double,java.lang.Double>> input)
Run pool adjacent violators algorithm to obtain isotonic regression model.
|
IsotonicRegressionModel |
run(RDD<scala.Tuple3<java.lang.Object,java.lang.Object,java.lang.Object>> input)
Run IsotonicRegression algorithm to obtain isotonic regression model.
|
IsotonicRegression |
setIsotonic(boolean isotonic)
Sets the isotonic parameter.
|
public IsotonicRegression()
public IsotonicRegression setIsotonic(boolean isotonic)
isotonic
- Isotonic (increasing) or antitonic (decreasing) sequence.public IsotonicRegressionModel run(RDD<scala.Tuple3<java.lang.Object,java.lang.Object,java.lang.Object>> input)
input
- RDD of tuples (label, feature, weight) where label is dependent variable
for which we calculate isotonic regression, feature is independent variable
and weight represents number of measures with default 1.
If multiple labels share the same feature value then they are ordered before
the algorithm is executed.public IsotonicRegressionModel run(JavaRDD<scala.Tuple3<java.lang.Double,java.lang.Double,java.lang.Double>> input)
input
- JavaRDD of tuples (label, feature, weight) where label is dependent variable
for which we calculate isotonic regression, feature is independent variable
and weight represents number of measures with default 1.
If multiple labels share the same feature value then they are ordered before
the algorithm is executed.