lsr.train() else: lsr = LeastSquaresRegression() lsr.set_labels(Labels(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) # 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)).get_labels() mse_train[i] = np.dot(ypred - y, ypred - y) / y.shape[0] ypred = lsr.apply(RealFeatures(X.T)).get_labels() mse_train_lsr = np.dot(ypred - y, ypred - y) / y.shape[0] # apply on test data mse_test = np.zeros(LeastAngleRegression.get_path_size()) for i in xrange(mse_test.shape[0]): LeastAngleRegression.switch_w(i) ypred = LeastAngleRegression.apply(RealFeatures(Xtest.T)).get_labels() mse_test[i] = np.dot(ypred - ytest, ypred - ytest) / ytest.shape[0] ypred = lsr.apply(RealFeatures(Xtest.T)).get_labels() mse_test_lsr = np.dot(ypred - ytest, ypred - ytest) / ytest.shape[0] fig = plt.figure() ax_path = fig.add_subplot(1,2,1)
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)) mse_train[i] = evaluator.evaluate(ypred, RegressionLabels(y)) ypred = lsr.apply(RealFeatures(X.T)) mse_train_lsr = evaluator.evaluate(ypred, RegressionLabels(y)) # apply on test data mse_test = np.zeros(LeastAngleRegression.get_path_size()) for i in xrange(mse_test.shape[0]): LeastAngleRegression.switch_w(i) ypred = LeastAngleRegression.apply(RealFeatures(Xtest.T)) mse_test[i] = evaluator.evaluate(ypred, RegressionLabels(y)) ypred = lsr.apply(RealFeatures(Xtest.T)) mse_test_lsr = evaluator.evaluate(ypred, RegressionLabels(y)) fig = plt.figure() ax_path = fig.add_subplot(1, 2, 1)
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) # 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)).get_labels() mse_train[i] = np.dot(ypred - y, ypred - y) / y.shape[0] ypred = lsr.apply(RealFeatures(X.T)).get_labels() mse_train_lsr = np.dot(ypred - y, ypred - y) / y.shape[0] # apply on test data mse_test = np.zeros(LeastAngleRegression.get_path_size()) for i in xrange(mse_test.shape[0]): LeastAngleRegression.switch_w(i) ypred = LeastAngleRegression.apply(RealFeatures(Xtest.T)).get_labels() mse_test[i] = np.dot(ypred - ytest, ypred - ytest) / ytest.shape[0] ypred = lsr.apply(RealFeatures(Xtest.T)).get_labels() mse_test_lsr = np.dot(ypred - ytest, ypred - ytest) / ytest.shape[0] fig = plt.figure() ax_path = fig.add_subplot(1, 2, 1)
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)) mse_train[i] = evaluator.evaluate(ypred, RegressionLabels(y)) ypred = lsr.apply(RealFeatures(X.T)) mse_train_lsr = evaluator.evaluate(ypred, RegressionLabels(y)) # apply on test data mse_test = np.zeros(LeastAngleRegression.get_path_size()) for i in xrange(mse_test.shape[0]): LeastAngleRegression.switch_w(i) ypred = LeastAngleRegression.apply(RealFeatures(Xtest.T)) mse_test[i] = evaluator.evaluate(ypred, RegressionLabels(y)) ypred = lsr.apply(RealFeatures(Xtest.T)) mse_test_lsr = evaluator.evaluate(ypred, RegressionLabels(y)) fig = plt.figure() ax_path = fig.add_subplot(1,2,1)