question: public void subtract ( FeatureVector other ) { for ( int i = 0 ; i < denseFeatures . size ( ) ; i ++ ) denseFeatures . set ( i , getDense ( i ) - other . getDense ( i ) ) ; for ( String key : other . keySet ( ) ) { float oldValue = ( sparseFeatures . containsKey ( key ) ) ? sparseFeatures . get ( key ) : 0.0f ; sparseFeatures . put ( key , oldValue - other . getSparse ( key ) ) ; } }
target:  Subtracts the weights in the other feature vector from this one. Note that this is not set subtraction; keys found in the other FeatureVector but not in this one will be initialized with a value of 0.0f before subtraction.