diff options
author | vnik <vnik@yandex-team.ru> | 2022-02-10 16:50:11 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:50:11 +0300 |
commit | eeb44fff3b21a0abc3a28ecf80df8ea214338f2a (patch) | |
tree | 5d5cb817648f650d76cf1076100726fd9b8448e8 | |
parent | 82dd4d47353b9ff187773dd251163024db870e2a (diff) | |
download | ydb-eeb44fff3b21a0abc3a28ecf80df8ea214338f2a.tar.gz |
Restoring authorship annotation for <vnik@yandex-team.ru>. Commit 2 of 2.
-rw-r--r-- | library/cpp/linear_regression/linear_model.h | 6 | ||||
-rw-r--r-- | library/cpp/linear_regression/linear_regression.cpp | 18 | ||||
-rw-r--r-- | library/cpp/linear_regression/linear_regression.h | 16 |
3 files changed, 20 insertions, 20 deletions
diff --git a/library/cpp/linear_regression/linear_model.h b/library/cpp/linear_regression/linear_model.h index 649ccd6988..8bb050cff7 100644 --- a/library/cpp/linear_regression/linear_model.h +++ b/library/cpp/linear_regression/linear_model.h @@ -7,7 +7,7 @@ #include <utility> -class TLinearModel { +class TLinearModel { private: TVector<double> Coefficients; double Intercept; @@ -30,11 +30,11 @@ public: const TVector<double>& GetCoefficients() const { return Coefficients; } - + double GetIntercept() const { return Intercept; } - + template <typename T> double Prediction(const TVector<T>& features) const { return InnerProduct(Coefficients, features, Intercept); diff --git a/library/cpp/linear_regression/linear_regression.cpp b/library/cpp/linear_regression/linear_regression.cpp index e19c4a8736..150f9d214e 100644 --- a/library/cpp/linear_regression/linear_regression.cpp +++ b/library/cpp/linear_regression/linear_regression.cpp @@ -41,8 +41,8 @@ bool TFastLinearRegressionSolver::Add(const TVector<double>& features, const dou *olsVectorElement += weightedGoal; SumSquaredGoals += goal * goal * weight; - - return true; + + return true; } bool TLinearRegressionSolver::Add(const TVector<double>& features, const double goal, const double weight) { @@ -59,7 +59,7 @@ bool TLinearRegressionSolver::Add(const TVector<double>& features, const double SumWeights += weight; if (!SumWeights.Get()) { - return false; + return false; } for (size_t featureNumber = 0; featureNumber < featuresCount; ++featureNumber) { @@ -109,8 +109,8 @@ bool TLinearRegressionSolver::Add(const TVector<double>& features, const double const double oldGoalsMean = GoalsMean; GoalsMean += weight * (goal - GoalsMean) / SumWeights.Get(); GoalsDeviation += weight * (goal - oldGoalsMean) * (goal - GoalsMean); - - return true; + + return true; } TLinearModel TFastLinearRegressionSolver::Solve() const { @@ -147,10 +147,10 @@ double TLinearRegressionSolver::SumSquaredErrors() const { return ::SumSquaredErrors(LinearizedOLSMatrix, OLSVector, coefficients, GoalsDeviation); } -bool TSLRSolver::Add(const double feature, const double goal, const double weight) { +bool TSLRSolver::Add(const double feature, const double goal, const double weight) { SumWeights += weight; if (!SumWeights.Get()) { - return false; + return false; } const double weightedFeatureDiff = weight * (feature - FeaturesMean); @@ -163,8 +163,8 @@ bool TSLRSolver::Add(const double feature, const double goal, const double weigh GoalsDeviation += weightedGoalDiff * (goal - GoalsMean); Covariation += weightedFeatureDiff * (goal - GoalsMean); - - return true; + + return true; } bool TSLRSolver::Add(const double* featuresBegin, diff --git a/library/cpp/linear_regression/linear_regression.h b/library/cpp/linear_regression/linear_regression.h index 7e37e1b9b3..e57de5ff6c 100644 --- a/library/cpp/linear_regression/linear_regression.h +++ b/library/cpp/linear_regression/linear_regression.h @@ -56,7 +56,7 @@ private: TStoreType SumWeights = TStoreType(); public: - bool Add(const double feature, const double goal, const double weight = 1.) { + bool Add(const double feature, const double goal, const double weight = 1.) { SumFeatures += feature * weight; SumSquaredFeatures += feature * feature * weight; @@ -66,8 +66,8 @@ public: SumProducts += goal * feature * weight; SumWeights += weight; - - return true; + + return true; } template <typename TFloatType> @@ -140,7 +140,7 @@ private: double Covariation = 0.; public: - bool Add(const double feature, const double goal, const double weight = 1.); + bool Add(const double feature, const double goal, const double weight = 1.); bool Add(const double* featuresBegin, const double* featuresEnd, const double* goalsBegin); bool Add(const double* featuresBegin, const double* featuresEnd, const double* goalsBegin, const double* weightsBegin); @@ -188,8 +188,8 @@ public: for (size_t featureNumber = 0; featureNumber < features.size(); ++featureNumber) { SLRSolvers[featureNumber].Add(features[featureNumber], goal, weight); } - - return true; + + return true; } TLinearModel Solve(const double regularizationParameter = 0.1) const { @@ -201,9 +201,9 @@ public: } TVector<double> coefficients(SLRSolvers.size()); - double intercept = 0.0; + double intercept = 0.0; if (bestSolver) { - bestSolver->Solve(coefficients[bestSolver - SLRSolvers.begin()], intercept, regularizationParameter); + bestSolver->Solve(coefficients[bestSolver - SLRSolvers.begin()], intercept, regularizationParameter); } TLinearModel model(std::move(coefficients), intercept); |