def predict(self,data_set): """ This method uses the model to assign a label to each item in the data set. The return value is a Prediction object. """ test_file_name=self._test_file_name+'_'+str(LibSVMModel._file_suffix) model_filename=self._model_file output_filename=self._output_filename predictor_package_path=self._predictor_package_path item_order=self.create_validation_set_file_from_dataset(data_set,test_file_name) args=[] args.append(predictor_package_path) args.append(test_file_name) args.append(model_filename) args.append(output_filename) #logging.debug( 'args for predict' #logging.debug( args fnull=open(os.devnull,'w') #p=subprocess.Popen(args,stdout=subprocess.PIPE) p=subprocess.call(args, stdout=fnull) fnull.close() ''' for line in p.stdout: #logging.debug( line if(line.startswith('Accuracy')): accuracy=float(line.split()[2].split('%')[0])/100.0 logging.debug( accuracy break ''' # predicted_values=Prediction(data_set) #logging.debug( 'Count '+str(predicted_values.predicted_count()) #logging.debug( output_filename fin=open(output_filename,'r') i=0 for line in fin: #logging.debug( 'Output file :'+line item=item_order[i] predicted_values.set_est_label(item,line.split()[0]) logging.debug( 'setting label for '+item) i+=1 fin.close() #LibSVMModel._file_suffix+=1 return(predicted_values)
def predict(self,data_set): """ This method uses the model to assign a label to each item in the data set. The return value is a Prediction object. """ predicted_values=Prediction(data_set) gbm_package=self._gbm_package gbm_object=self._gbm_model_object (features,labels,items)=self.create_validation_set(data_set) predicted=gbm_package.predict_gbm(gbm_object,features,n_trees=self._n_trees,type='response',verbose=False) item_count=0 for item in items: predicted_values.set_est_label(item,self.convert_label(predicted[item_count])) item_count+=1 return(predicted_values)
def predict(self, data_set): """ This method uses the model to assign a label to each item in the data set. The return value is a Prediction object. """ predicted_values = Prediction(data_set) gbm_package = self._gbm_package gbm_object = self._gbm_model_object (features, labels, items) = self.create_validation_set(data_set) predicted = gbm_package.predict_gbm(gbm_object, features, n_trees=self._n_trees, type='response', verbose=False) item_count = 0 for item in items: predicted_values.set_est_label( item, self.convert_label(predicted[item_count])) item_count += 1 return (predicted_values)