mirror of
https://github.com/moses-smt/mosesdecoder.git
synced 2024-09-20 07:42:21 +03:00
5240c430ce
This adds a new string-to-tree decoder, which can be enabled with the -s2t option. It's intended to be faster and simpler than the generic chart decoder, and is designed to support lattice input (still WIP). For a en-de system trained on WMT14 data, it's approximately 40% faster in practice. For background information, see the decoding section of the EMNLP tutorial on syntax-based MT: http://www.emnlp2014.org/tutorials/5_notes.pdf Some features are not implemented yet, including support for internal tree structure and soft source-syntactic constraints.
32 lines
467 B
C++
32 lines
467 B
C++
#pragma once
|
|
|
|
#include <vector>
|
|
|
|
namespace Moses
|
|
{
|
|
|
|
class FFState;
|
|
|
|
namespace Syntax
|
|
{
|
|
|
|
struct PVertex;
|
|
struct SHyperedge;
|
|
|
|
// A vertex in the search hypergraph.
|
|
//
|
|
// Important: a SVertex owns its incoming SHyperedge objects and its FFState
|
|
// objects and will delete them on destruction.
|
|
struct SVertex
|
|
{
|
|
~SVertex();
|
|
|
|
SHyperedge *best;
|
|
std::vector<SHyperedge*> recombined;
|
|
const PVertex *pvertex;
|
|
std::vector<FFState*> state;
|
|
};
|
|
|
|
} // Syntax
|
|
} // Moses
|