buzz.writeheader() final_out = DictWriter(open(flags.finals, 'w'), fieldnames=["question", "answer"]) final_out.writeheader() # Check file length with open(flags.meta) as infile: meta_lines = sum(1 for line in infile) with open(flags.pred) as infile: pred_lines = sum(1 for line in infile) assert meta_lines == pred_lines, "Prediction and meta files mismatch" + \ "(%s: %i vs %s: %i)" % (flags.meta, meta_lines, flags.pred, pred_lines) pi = PositionIterator(open(flags.meta), open(flags.pred), qdb.all_answers()) if flags.expo: pi.add_expo_answers(flags.expo) questions_with_buzzes = defaultdict(dict) for question_id, positions in pi: any_buzz = False final_sent, final_char = max(positions) presence = answer_presence(positions) for ss, tt in sorted(positions): # TODO: Add in evidence for guess, final, weight in \ top_guesses(positions[(ss, tt)]): if (ss == final_sent and tt == final_char and not any_buzz) or\ final == 1: any_buzz = True
final_out = DictWriter(open(flags.finals, "w"), fieldnames=["question", "answer"]) final_out.writeheader() # Check file length with open(flags.meta) as infile: meta_lines = sum(1 for line in infile) with open(flags.pred) as infile: pred_lines = sum(1 for line in infile) assert meta_lines == pred_lines, "Prediction and meta files mismatch" + "(%s: %i vs %s: %i)" % ( flags.meta, meta_lines, flags.pred, pred_lines, ) pi = PositionIterator(open(flags.meta), open(flags.pred), qdb.all_answers()) if flags.expo: pi.add_expo_answers(flags.expo) questions_with_buzzes = defaultdict(dict) for question_id, positions in pi: any_buzz = False final_sent, final_char = max(positions) presence = answer_presence(positions) for ss, tt in sorted(positions): # TODO: Add in evidence for guess, final, weight in top_guesses(positions[(ss, tt)]): if (ss == final_sent and tt == final_char and not any_buzz) or final == 1: any_buzz = True # Add the question so it will be written out in the