diff options
Diffstat (limited to 'rst_parser/global_ff.cc')
-rw-r--r-- | rst_parser/global_ff.cc | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/rst_parser/global_ff.cc b/rst_parser/global_ff.cc deleted file mode 100644 index ae410875..00000000 --- a/rst_parser/global_ff.cc +++ /dev/null @@ -1,44 +0,0 @@ -#include "global_ff.h" - -#include <iostream> -#include <sstream> - -#include "tdict.h" - -using namespace std; - -struct GFFImpl { - void PrepareForInput(const TaggedSentence& sentence) { - } - void Features(const TaggedSentence& sentence, - const EdgeSubset& tree, - SparseVector<double>* feats) const { - const vector<WordID>& words = sentence.words; - const vector<WordID>& tags = sentence.pos; - const vector<pair<short,short> >& hms = tree.h_m_pairs; - assert(words.size() == tags.size()); - vector<int> mods(words.size()); - for (int i = 0; i < hms.size(); ++i) { - mods[hms[i].first]++; // first = head, second = modifier - } - for (int i = 0; i < mods.size(); ++i) { - ostringstream os; - os << "NM:" << TD::Convert(tags[i]) << "_" << mods[i]; - feats->add_value(FD::Convert(os.str()), 1.0); - } - } -}; - -GlobalFeatureFunctions::GlobalFeatureFunctions() : pimpl(new GFFImpl) {} -GlobalFeatureFunctions::~GlobalFeatureFunctions() { delete pimpl; } - -void GlobalFeatureFunctions::PrepareForInput(const TaggedSentence& sentence) { - pimpl->PrepareForInput(sentence); -} - -void GlobalFeatureFunctions::Features(const TaggedSentence& sentence, - const EdgeSubset& tree, - SparseVector<double>* feats) const { - pimpl->Features(sentence, tree, feats); -} - |