Expose Evaluator's getNames/getValue to SWIG

avx_docs
Yu Yang 8 years ago
parent 6415b0771b
commit b7ce283b18

@ -33,3 +33,12 @@ std::vector<std::string> Evaluator::getNames() const {
m->rawPtr->getNames(&retv); m->rawPtr->getNames(&retv);
return retv; return retv;
} }
double Evaluator::getValue(const std::string name) const {
paddle::Error err;
double v = m->rawPtr->getValue(name, &err);
if (err) {
throw std::runtime_error(err.msg());
}
return v;
}

@ -902,6 +902,8 @@ public:
std::vector<std::string> getNames() const; std::vector<std::string> getNames() const;
double getValue(const std::string name) const;
private: private:
EvaluatorPrivate* m; EvaluatorPrivate* m;

@ -89,9 +89,14 @@ def main():
except Exception as e: except Exception as e:
print e print e
ev = m.makeEvaluator()
ev.start()
m.forwardBackward(inArgs, outArgs, swig_paddle.PASS_TRAIN, m.forwardBackward(inArgs, outArgs, swig_paddle.PASS_TRAIN,
update_callback) update_callback)
m.eval(ev)
ev.finish()
for name in ev.getNames():
print name, ev.getValue(name)
for optimizer in optimizers: for optimizer in optimizers:
optimizer.finishBatch() optimizer.finishBatch()

Loading…
Cancel
Save