示例#1
0
    optparser.add_option("-w", "", dest="weights", help="read weights from str", metavar="W", default=None)
    optparser.add_option("-O", "--oracle", dest="oracle", action="store_true", \
                         help="compute nbest oracles (instead of decoding)", default=False)
    optparser.add_option("-R", "--reduce", dest="reduce", action="store_true", \
                         help="reduce absolute feature counts to relative", default=False)
    optparser.add_option("-v", "--verbose", dest="verbose", action="store_true", \
                         help="print result for each sentence", default=False)
    optparser.add_option("-t", "--trees", dest="nbesttreesfile", help="read nbest trees", \
                         metavar="FILE", default=None)

    (opts, args) = optparser.parse_args()

    if opts.weights:
        weights = FVector.parse(opts.weights)
    elif opts.weightsfile:
        weights = FVector.readweights(opts.weightsfile)
    else:
        weights = FVector({0:1})

    if opts.nbesttreesfile is not None:
        from readkbest import NBestForest
        nbesttrees = NBestForest.load(opts.nbesttreesfile, read_gold=False)        

    decoder = NBestDecoder(opts.N)
    
    all_pp = Parseval()
    decode_time, parseval_time = 0, 0
    
    
    for i, forest in enumerate(decoder.load("-")):