summaryrefslogtreecommitdiff
path: root/decoder/ff_const_reorder.h
diff options
context:
space:
mode:
authorPatrick Simianer <p@simianer.de>2015-01-19 14:39:14 +0100
committerPatrick Simianer <p@simianer.de>2015-01-19 14:39:14 +0100
commit0673fb55c6af8bc94c9f3e577c514160faf736d3 (patch)
treeff4edd0e1e816f4d412601689ab510b2d0aaccf7 /decoder/ff_const_reorder.h
parentcb9fb7088dde35881516c088db402abe747d49fa (diff)
parent1bce604809399a0adc581fb0102bff11decf3436 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'decoder/ff_const_reorder.h')
-rw-r--r--decoder/ff_const_reorder.h43
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_ */