Beispiel #1
0
def build_objective2(model, deterministic=False, bias = app.get_biases()[label_id], epsilon=1.e-7):
    predictions = T.flatten(nn.layers.get_output(model.l_out, deterministic=deterministic))
    targets = T.flatten(nn.layers.get_output(model.l_target))
    preds = predictions*np.float32(0.5/bias)
    preds = T.clip(preds, epsilon, 1.-epsilon)
    #logs = [-T.log(preds), -T.log(1-preds)]
    weighted_bce = - 5 * targets * T.log(preds) - (1-targets)*T.log(1-preds)    
    reg = nn.regularization.l2(predictions)                                                                                                                                                                                       
    weight_decay=0.00004
    return T.mean(weighted_bce) + weight_decay * reg 
Beispiel #2
0
def build_test_objective(model,
                         deterministic=False,
                         bias=app.get_biases()[label_id],
                         epsilon=1.e-7):
    predictions = T.flatten(
        nn.layers.get_output(model.l_out, deterministic=deterministic))
    targets = T.flatten(nn.layers.get_output(model.l_target))
    preds = predictions * np.float32(0.5 / bias)
    preds = T.clip(preds, epsilon, 1. - epsilon)
    return T.mean(nn.objectives.binary_crossentropy(preds, targets))
Beispiel #3
0
def test_score(gts, preds, bias=app.get_biases()[label_id], epsilon=1.e-11):
    predictions = np.array(preds) / 0.5 * bias
    preds_cutoff = [1 if p > 0.5 else 0 for p in predictions]
    return app.f2_score(gts, preds_cutoff, average=None)
Beispiel #4
0
def test_score(gts, preds, bias=app.get_biases()[label_id], epsilon=1.e-11):
    predictions = expit(logit(preds) - logit(0.5) + logit(bias))
    preds_cutoff = [1 if p > 0.5 else 0 for p in predictions]
    return app.f2_score(gts, preds_cutoff, average=None)