Ejemplo n.º 1
0
    def loadGlueRules(self):
        '''Loads the glue rules along with their feature values'''

        gF = open(settings.opts.glueFile, 'r')
        sys.stderr.write("Loading Glue rules from file     : %s\n" %
                         (settings.opts.glueFile))
        try:
            for line in gF:
                line = line.strip()
                if line.startswith('#'): continue  # Ignore commented lines
                glueItems = line.split(
                    '#'
                )  # Handle and ignore any comments embedded on the same line
                line = glueItems[0].strip()

                (src, tgt, glue_val) = line.split(' ||| ')
                rule_obj = RuleItem.initGlue(src, tgt, float(glue_val))
                if (settings.opts.no_glue_penalty and src == 'S__1 X__2'):
                    rule_obj.turnOffGlue()

                rule_obj.scoreRule()
                PhraseTable.ruleDict[src] = []
                PhraseTable.ruleDict[src].append(rule_obj)
        finally:
            gF.close()
Ejemplo n.º 2
0
    def loadGlueRules(self):
        '''Loads the glue rules along with their feature values'''

        gF = open(settings.opts.glueFile, 'r')
        sys.stderr.write( "Loading Glue rules from file     : %s\n" % (settings.opts.glueFile) )
        try:
            for line in gF:
                line = line.strip()
                if line.startswith('#'): continue           # Ignore commented lines
                glueItems = line.split('#')                 # Handle and ignore any comments embedded on the same line
                line = glueItems[0].strip()

                (src, tgt, glue_val) = line.split(' ||| ')
                rule_obj = RuleItem.initGlue(src, tgt, float(glue_val))
                if (settings.opts.no_glue_penalty and src == 'S__1 X__2'):
                    rule_obj.turnOffGlue()

                rule_obj.scoreRule()
                PhraseTable.ruleDict[src] = []
                PhraseTable.ruleDict[src].append( rule_obj )
        finally:
            gF.close()