Package org.apache.solr.ltr.model
Class MultipleAdditiveTreesModel
- java.lang.Object
 - 
- org.apache.solr.ltr.model.LTRScoringModel
 - 
- org.apache.solr.ltr.model.MultipleAdditiveTreesModel
 
 
 
- 
- All Implemented Interfaces:
 org.apache.lucene.util.Accountable
public class MultipleAdditiveTreesModel extends LTRScoringModel
A scoring model that computes scores based on the summation of multiple weighted trees. Example models are LambdaMART and Gradient Boosted Regression Trees (GBRT) .Example configuration:
{ "class" : "org.apache.solr.ltr.model.MultipleAdditiveTreesModel", "name" : "multipleadditivetreesmodel", "features":[ { "name" : "userTextTitleMatch"}, { "name" : "originalScore"} ], "params" : { "trees" : [ { "weight" : "1", "root": { "feature" : "userTextTitleMatch", "threshold" : "0.5", "left" : { "value" : "-100" }, "right" : { "feature" : "originalScore", "threshold" : "10.0", "left" : { "value" : "50" }, "right" : { "value" : "75" } } } }, { "weight" : "2", "root" : { "value" : "-10" } } ] } }Training libraries:
Background reading:
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description classMultipleAdditiveTreesModel.RegressionTreeclassMultipleAdditiveTreesModel.RegressionTreeNode 
- 
Field Summary
- 
Fields inherited from class org.apache.solr.ltr.model.LTRScoringModel
features, name, norms 
 - 
 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.lucene.search.Explanationexplain(org.apache.lucene.index.LeafReaderContext context, int doc, float finalScore, List<org.apache.lucene.search.Explanation> featureExplanations)Similar to the score() function, except it returns an explanation of how the features were used to calculate the score.voidnormalizeFeaturesInPlace(float[] modelFeatureValues)Goes through all the stored feature values, and calculates the normalized values for all the features that will be used for scoring.protected voidnormalizeFeaturesInPlace(float[] modelFeatureValues, boolean isNullSameAsZero)floatscore(float[] modelFeatureValuesNormalized)Given a list of normalized values for all features a scoring algorithm cares about, calculate and return a score.voidsetIsNullSameAsZero(boolean nullSameAsZero)voidsetTrees(Object trees)StringtoString()protected voidvalidate()Validate that settings make sense and throwsModelExceptionif they do not make sense.- 
Methods inherited from class org.apache.solr.ltr.model.LTRScoringModel
equals, getAllFeatures, getFeatures, getFeatureStoreName, getInstance, getName, getNormalizerExplanation, getNorms, getParams, hashCode, ramBytesUsed 
 - 
 
 - 
 
- 
- 
Method Detail
- 
setIsNullSameAsZero
public void setIsNullSameAsZero(boolean nullSameAsZero)
 
- 
setTrees
public void setTrees(Object trees)
 
- 
validate
protected void validate() throws ModelExceptionDescription copied from class:LTRScoringModelValidate that settings make sense and throwsModelExceptionif they do not make sense.- Overrides:
 validatein classLTRScoringModel- Throws:
 ModelException
 
- 
normalizeFeaturesInPlace
public void normalizeFeaturesInPlace(float[] modelFeatureValues)
Description copied from class:LTRScoringModelGoes through all the stored feature values, and calculates the normalized values for all the features that will be used for scoring.- Overrides:
 normalizeFeaturesInPlacein classLTRScoringModel
 
- 
normalizeFeaturesInPlace
protected void normalizeFeaturesInPlace(float[] modelFeatureValues, boolean isNullSameAsZero) 
- 
score
public float score(float[] modelFeatureValuesNormalized)
Description copied from class:LTRScoringModelGiven a list of normalized values for all features a scoring algorithm cares about, calculate and return a score.- Specified by:
 scorein classLTRScoringModel- Parameters:
 modelFeatureValuesNormalized- List of normalized feature values. Each feature is identified by its id, which is the index in the array- Returns:
 - The final score for a document
 
 
- 
explain
public org.apache.lucene.search.Explanation explain(org.apache.lucene.index.LeafReaderContext context, int doc, float finalScore, List<org.apache.lucene.search.Explanation> featureExplanations)Description copied from class:LTRScoringModelSimilar to the score() function, except it returns an explanation of how the features were used to calculate the score.- Specified by:
 explainin classLTRScoringModel- Parameters:
 context- Context the document is indoc- Document to explainfinalScore- Original scorefeatureExplanations- Explanations for each feature calculation- Returns:
 - Explanation for the scoring of a document
 
 
- 
toString
public String toString()
- Overrides:
 toStringin classLTRScoringModel
 
 - 
 
 -