def RunLinearRegressionShogun(q): totalTimer = Timer() # Load input dataset. # If the dataset contains two files then the second file is the responses # file. try: Log.Info("Loading dataset", self.verbose) if len(self.dataset) == 2: testSet = np.genfromtxt(self.dataset[1], delimiter=',') # Use the last row of the training set as the responses. X, y = SplitTrainData(self.dataset) with totalTimer: # Perform linear regression. model = LeastSquaresRegression(RealFeatures(X.T), RegressionLabels(y)) model.train() b = model.get_w() if len(self.dataset) == 2: pred = classifier.apply(RealFeatures(testSet.T)) self.predictions = pred.get_labels() except Exception as e: q.put(-1) return -1 time = totalTimer.ElapsedTime() q.put(time) return time
def RunLinearRegressionShogun(): totalTimer = Timer() # Load input dataset. # If the dataset contains two files then the second file is the responses # file. try: Log.Info("Loading dataset", self.verbose) if len(self.dataset) == 2: testSet = np.genfromtxt(self.dataset[1], delimiter=',') # Use the last row of the training set as the responses. X, y = SplitTrainData(self.dataset) if len(options) > 0: Log.Fatal("Unknown parameters: " + str(options)) raise Exception("unknown parameters") with totalTimer: # Perform linear regression. model = LeastSquaresRegression(RealFeatures(X.T), RegressionLabels(y)) model.train() b = model.get_w() if len(self.dataset) == 2: pred = classifier.apply(RealFeatures(testSet.T)) self.predictions = pred.get_labels() except Exception as e: return -1 return totalTimer.ElapsedTime()
def regression_least_squares_modular (fm_train=traindat,fm_test=testdat,label_train=label_traindat,tau=1e-6): from modshogun import RegressionLabels, RealFeatures from modshogun import GaussianKernel from modshogun import LeastSquaresRegression ls=LeastSquaresRegression(RealFeatures(traindat), RegressionLabels(label_train)) ls.train() out = ls.apply(RealFeatures(fm_test)).get_labels() return out,ls
for i in xrange(p): X[:, i] -= np.mean(X[:, i]) X[:, i] /= np.linalg.norm(X[:, i]) y -= np.mean(y) # train LASSO LeastAngleRegression = LeastAngleRegression() LeastAngleRegression.set_labels(RegressionLabels(y)) LeastAngleRegression.train(RealFeatures(X.T)) # train ordinary LSR if use_ridge: lsr = LinearRidgeRegression(0.01, RealFeatures(X.T), Labels(y)) lsr.train() else: lsr = LeastSquaresRegression() lsr.set_labels(RegressionLabels(y)) lsr.train(RealFeatures(X.T)) # gather LASSO path path = np.zeros((p, LeastAngleRegression.get_path_size())) for i in xrange(path.shape[1]): path[:, i] = LeastAngleRegression.get_w(i) evaluator = MeanSquaredError() # apply on training data mse_train = np.zeros(LeastAngleRegression.get_path_size()) for i in xrange(mse_train.shape[0]): LeastAngleRegression.switch_w(i) ypred = LeastAngleRegression.apply(RealFeatures(X.T))