diff options
author | Chris Dyer <cdyer@cs.cmu.edu> | 2012-05-29 21:39:22 -0400 |
---|---|---|
committer | Chris Dyer <cdyer@cs.cmu.edu> | 2012-05-29 21:39:22 -0400 |
commit | 317d650f6cb1e24ac6f3be6f7bf9d4246a59e0e5 (patch) | |
tree | 02a8217d6910453049d5a2b96d3214baf19737c5 /training/mpi_flex_optimize.cc | |
parent | 6b7f7ae44228221b3de158035d190940ff677de1 (diff) |
add support to rampion for accumulating k-best lists
Diffstat (limited to 'training/mpi_flex_optimize.cc')
-rw-r--r-- | training/mpi_flex_optimize.cc | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/training/mpi_flex_optimize.cc b/training/mpi_flex_optimize.cc index a9197208..a9ead018 100644 --- a/training/mpi_flex_optimize.cc +++ b/training/mpi_flex_optimize.cc @@ -179,18 +179,16 @@ double ApplyRegularizationTerms(const double C, const double T, const vector<double>& weights, const vector<double>& prev_weights, - vector<double>* g) { - assert(weights.size() == g->size()); + double* g) { double reg = 0; for (size_t i = 0; i < weights.size(); ++i) { const double prev_w_i = (i < prev_weights.size() ? prev_weights[i] : 0.0); const double& w_i = weights[i]; - double& g_i = (*g)[i]; reg += C * w_i * w_i; - g_i += 2 * C * w_i; + g[i] += 2 * C * w_i; reg += T * (w_i - prev_w_i) * (w_i - prev_w_i); - g_i += 2 * T * (w_i - prev_w_i); + g[i] += 2 * T * (w_i - prev_w_i); } return reg; } @@ -365,7 +363,7 @@ int main(int argc, char** argv) { time_series_strength, // * (iter == 0 ? 0.0 : 1.0), cur_weights, prev_weights, - &gg); + &gg[0]); obj += r; if (mi == 0 || mi == (minibatch_iterations - 1)) { if (!mi) cerr << iter << ' '; else cerr << ' '; |