00001 00022 #ifndef __MLPACK_METHODS_LINEAR_REGRESSION_LINEAR_REGRESSION_HPP 00023 #define __MLPACK_METHODS_LINEAR_REGRESSION_LINEAR_REGRESSION_HPP 00024 00025 #include <mlpack/core.hpp> 00026 00027 namespace mlpack { 00028 namespace regression { 00029 00035 class LinearRegression 00036 { 00037 public: 00044 LinearRegression(const arma::mat& predictors, 00045 const arma::vec& responses, 00046 const double lambda = 0); 00047 00053 LinearRegression(const std::string& filename); 00054 00060 LinearRegression(const LinearRegression& linearRegression); 00061 00065 LinearRegression() { } 00066 00073 void Predict(const arma::mat& points, arma::vec& predictions) const; 00074 00092 double ComputeError(const arma::mat& points, 00093 const arma::vec& responses) const; 00094 00096 const arma::vec& Parameters() const { return parameters; } 00098 arma::vec& Parameters() { return parameters; } 00099 00101 double Lambda() const { return lambda; } 00103 double& Lambda() { return lambda; } 00104 00105 private: 00110 arma::vec parameters; 00111 00116 double lambda; 00117 }; 00118 00119 }; // namespace linear_regression 00120 }; // namespace mlpack 00121 00122 #endif // __MLPACK_METHODS_LINEAR_REGRESSCLIN_HPP