示例#1
0
        line = "" 
        while 1: 
                l = process.stdout.readline()
                if not l.strip(): break
                line += l
        return line

if __name__ == "__main__":
        startT = time.clock()
        sentence = ''
        gd = ''
        hisGen = HisGen(sys.argv[1], 'fea6.dat') 
        enum_server = process(["python", "tagger_history_generator.py", "ENUM"])
        his_server = process(["python", "tagger_decoder.py",  "HISTORY"])
        trF = open(sys.argv[2], 'r')
        gdF = open(sys.argv[3], 'r')
        for l, lg in izip(trF, gdF):
                if not l: break
                if l.strip() == '':
                        history = call(enum_server, sentence) 
                        score = hisGen.genScore(sentence, history) 
                        pred = call(his_server, score)
                        hisGen.update(pred, gd, sentence)
                        sentence = ''
                        gd = ''
                else:
                        sentence += l 
                        gd += lg
        hisGen.genModel(sys.argv[1])    
        endT = time.clock()