001    // Copyright 2012, 2013 Brad Block, Pawjaw, LLC. (an Ohio Limited Liability Company)
002    // 
003    // This file is part of JBTCRF.
004    // 
005    // JBTCRF is free software: you can redistribute it and/or modify
006    // it under the terms of the GNU General Public License as published by
007    // the Free Software Foundation, either version 3 of the License, or
008    // (at your option) any later version.
009    // 
010    // JBTCRF is distributed in the hope that it will be useful,
011    // but WITHOUT ANY WARRANTY; without even the implied warranty of
012    // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
013    // GNU General Public License for more details.
014    // 
015    // You should have received a copy of the GNU General Public License
016    // along with JBTCRF.  If not, see <http://www.gnu.org/licenses/>.
017    
018    package com.pawjaw.classification.crf.lmcbt.configurations;
019    
020    public class DefaultConfiguration extends Configuration {
021        public DefaultConfiguration(int point_features, int window_radius, int label_count_excluding_start_label) {
022            super(point_features, window_radius, label_count_excluding_start_label);
023        }
024    
025        @Override
026        protected int getSplitterThreads() {
027            return 4;
028        }
029    
030        @Override
031        protected int getMaxLeavesPerTree() {
032            return 20;
033        }
034    
035        @Override
036        protected int getBoostedTreeThreads() {
037            return 4;
038        }
039    
040        @Override
041        protected int getMaxBoostingIterations() {
042            return 1000;
043        }
044    
045        @Override
046        protected int getMinBoostingIterations() {
047            return 75;
048        }
049    
050        @Override
051        protected int getBoostingIterationsBetweenTests() {
052            return 10;
053        }
054    
055        @Override
056        protected double getRegressionTreeShrinkage() {
057            return 40;
058        }
059    
060        @Override
061        protected double getMinRelativeAccuracyImprovement() {
062            return 5e-4;
063        }
064    
065        @Override
066        protected boolean getReportTrainingProgress() {
067            return true;
068        }
069    
070        @Override
071        protected boolean getCacheExpandedTrueFeatures() {
072            return true;
073        }
074    }