diff options
author | Patrick Simianer <p@simianer.de> | 2015-01-19 14:39:14 +0100 |
---|---|---|
committer | Patrick Simianer <p@simianer.de> | 2015-01-19 14:39:14 +0100 |
commit | 0673fb55c6af8bc94c9f3e577c514160faf736d3 (patch) | |
tree | ff4edd0e1e816f4d412601689ab510b2d0aaccf7 /decoder/ff_const_reorder.h | |
parent | cb9fb7088dde35881516c088db402abe747d49fa (diff) | |
parent | 1bce604809399a0adc581fb0102bff11decf3436 (diff) |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'decoder/ff_const_reorder.h')
-rw-r--r-- | decoder/ff_const_reorder.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/decoder/ff_const_reorder.h b/decoder/ff_const_reorder.h new file mode 100644 index 00000000..a5be02d0 --- /dev/null +++ b/decoder/ff_const_reorder.h @@ -0,0 +1,43 @@ +/* + * ff_const_reorder.h + * + * Created on: Jul 11, 2013 + * Author: junhuili + */ + +#ifndef FF_CONST_REORDER_H_ +#define FF_CONST_REORDER_H_ + +#include "ff_factory.h" +#include "ff.h" + +struct ConstReorderFeatureImpl; + +// Soft reordering constraint features from +// http://www.aclweb.org/anthology/P14-1106. To train the classifers, +// use utils/const_reorder_model_trainer for constituency reordering +// constraints and utils/argument_reorder_model_trainer for SRL +// reordering constraints. +// +// Input segments should provide path to parse tree (resp. SRL parse) +// as "parse" (resp. "srl") properties. +class ConstReorderFeature : public FeatureFunction { + public: + ConstReorderFeature(const std::string& param); + ~ConstReorderFeature(); + static std::string usage(bool param, bool verbose); + + protected: + virtual void PrepareForInput(const SentenceMetadata& smeta); + + virtual void TraversalFeaturesImpl( + const SentenceMetadata& smeta, const HG::Edge& edge, + const std::vector<const void*>& ant_contexts, + SparseVector<double>* features, SparseVector<double>* estimated_features, + void* out_context) const; + + private: + ConstReorderFeatureImpl* pimpl_; +}; + +#endif /* FF_CONST_REORDER_H_ */ |