Exemple #1
0
def _simple_scorer_update(G, edge):
    evidence_list = []
    for stmt_data in G.edges[edge]['statements']:
        for k, v in stmt_data['source_counts'].items():
            if k in db_source_mapping:
                s = db_source_mapping[k]
            else:
                s = k
            for _ in range(v):
                evidence_list.append(Evidence(source_api=s))
    return simple_scorer.score_statement(st=Statement(evidence=evidence_list))
Exemple #2
0
def _simple_scorer_update(G, edge):
    evidence_list = []
    for stmt_data in G.edges[edge]['statements']:
        for k, v in stmt_data['source_counts'].items():
            if k in db_source_mapping:
                s = db_source_mapping[k]
            else:
                s = k
            for _ in range(v):
                evidence_list.append(Evidence(source_api=s))

    try:
        ag_belief = simple_scorer.score_statement(
                                            Statement(evidence=evidence_list))
    # Catch underflow
    except FloatingPointError as err:
        # Numpy precision
        NP_PRECISION = 10 ** -np.finfo(np.longfloat).precision
        logger.warning('%s: Resetting ag_belief to 10*np.longfloat precision '
                       '(%.0e)' % (err, Decimal(NP_PRECISION * 10)))
        ag_belief = NP_PRECISION * 10
    return ag_belief