summaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
authorprasanth.kolachina <prasanth.kolachina@cse.gu.se>2015-04-27 15:59:25 +0000
committerprasanth.kolachina <prasanth.kolachina@cse.gu.se>2015-04-27 15:59:25 +0000
commit53f0307404959796356d060083ef1d6caa808aae (patch)
tree90698c2faf90391aeac3b8790d6d6ef41450703a /src/runtime
parentdedad558a8ef70226374733e1d6edcba22c5def7 (diff)
K Linearizations
Diffstat (limited to 'src/runtime')
-rw-r--r--src/runtime/python/examples/gf_utils.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/runtime/python/examples/gf_utils.py b/src/runtime/python/examples/gf_utils.py
index edc36d1fa..934235ef4 100644
--- a/src/runtime/python/examples/gf_utils.py
+++ b/src/runtime/python/examples/gf_utils.py
@@ -113,13 +113,13 @@ def printMosesNbestFormat(hypothesisList, sentid=count(1)):
mosesRepr.append("%d ||| %s ||| NULL ||| %s" %(sid, hypStr, ' '.join(['%.6f'%score for score in hypScores])));
return '\n'.join(mosesRepr);
-def getKLinearizations(grammar, tgtlanguage, abstractParsesList):
- generator = grammar.languages[tgtlanguage].linearize;
+def getKLinearizations(grammar, tgtlanguage, abstractParsesList, K=10):
+ generator = grammar.languages[tgtlanguage].linearizeAll;
for parsesBlock in abstractParsesList:
kBestTrans = [];
for parseprob, parse in parsesBlock:
- #print str(parse);
- kBestTrans.append( ((parseprob,), postprocessor( generator(parse) )) );
+ for linstring in generator(parse, n=K):
+ kBestTrans.append( ((parseprob,), postprocessor(linstring)) );
yield kBestTrans;
def getKBestParses(grammar, language, K, callbacks=[], serializable=False, sentid=count(1), max_length=50):
@@ -213,7 +213,7 @@ def pgf_klinearize(args):
sentIdsList = imap(itemgetter(0), inputSet);
parsesBlocks = map(itemgetter(1), inputSet);
- for transBlock in getKLinearizations(grammar, args.tgtlang, parsesBlocks):
+ for transBlock in getKLinearizations(grammar, args.tgtlang, parsesBlocks, args.K):
strTrans = str(outputPrinter(transBlock, sentIdsList));
if strTrans:
print >>args.outputstream, strTrans;