public LambdaRankWorker( int maxIter, int featureSize, int windowSize, double initStep, double shrinkage, double lambda, OptimizationType otype) { m_weight = new double[featureSize]; m_g = new double[featureSize]; m_queries = new ArrayList<_Query>(); m_step = initStep; m_maxIter = maxIter; m_windowSize = windowSize; m_shrinkage = shrinkage; m_lambda = lambda; if (otype.equals(OptimizationType.OT_MAP)) m_eval = new MAP_Evaluator(); else if (otype.equals(OptimizationType.OT_NDCG)) m_eval = new NDCG_Evaluator(LambdaRank.NDCG_K); else m_eval = new Evaluator(); m_eval.setRate(0.5); }