nl_tokens: weights smaller than this are ignored to save space A utility that converts a model in the SVMPerf format to a map of feature weights .
pl_tokens: function modelStringToModelMap ( modelString ) { var matches = SVM_PERF_MODEL_PATTERN . exec ( modelString ) ; if ( ! matches ) { console . log ( modelString ) ; throw new Error ( "Model does not match SVM-perf format" ) ; } ; //var threshold = parseFloat(matches[1]);  // not needed - we use our own bias var featuresAndWeights = matches [ 2 ] . split ( " " ) ; var mapFeatureToWeight = { } ; //mapFeatureToWeight.threshold = threshold; // not needed - we use our own bias //String alphaTimesY = featuresAndWeights[0]; // always 1 in svmperf for ( var i = 1 ; i < featuresAndWeights . length ; ++ i ) { var featureAndWeight = featuresAndWeights [ i ] ; var featureWeight = featureAndWeight . split ( ":" ) ; if ( featureWeight . length != 2 ) throw new Error ( "Model featureAndWeight doesn't match svm-perf pattern: featureAndWeight=" + featureAndWeight ) ; var feature = parseInt ( featureWeight [ 0 ] ) ; if ( feature <= 0 ) throw new IllegalArgumentException ( "Non-positive feature id: featureAndWeight=" + featureAndWeight ) ; var weight = parseFloat ( featureWeight [ 1 ] ) ; if ( Math . abs ( <mask> ) >= MIN_WEIGHT ) mapFeatureToWeight [ feature - FIRST_FEATURE_NUMBER ] = weight ; // start feature values from 0. // Note: if there is bias, then mapFeatureToWeight[0] is its weight. } return mapFeatureToWeight ; }