{ "cells": [ { "cell_type": "markdown", "id": "57b58c35", "metadata": {}, "source": [ "## Quality assurance of prediction results\n", "\n", "In the previous tutorial, we looked at various ways to visualise the results of our model. \n", "\n", "These are useful for quality assurance purposes because they allow us to understand how our model works and verify that it is doing something sensible. They can also be useful to identify examples where the model is not performing as expected. \n", "\n", "In addition to these spot checks, Splink also has functions to perform more formal accuracy analysis. These functions allow you to understand the likely prevalence of false positives and false negatives in your linkage models.\n", "\n", "They rely on the existence of a sample of labelled (ground truth) matches, which may have been produced (for example) by human beings. For the accuracy analysis to be unbiased, the sample should be representative of the overall dataset." ] }, { "cell_type": "code", "execution_count": 1, "id": "fb29d421", "metadata": {}, "outputs": [], "source": [ "# Rerun our predictions to we're ready to view the charts\n", "from splink.duckdb.duckdb_linker import DuckDBLinker\n", "import pandas as pd \n", "import altair as alt\n", "alt.renderers.enable('mimetype')\n", "\n", "df = pd.read_csv(\"./data/fake_1000.csv\")\n", "linker = DuckDBLinker(df)\n", "linker.load_settings_from_json(\"./demo_settings/saved_model_from_demo.json\")\n", "df_predictions = linker.predict(threshold_match_probability=0.2)" ] }, { "cell_type": "markdown", "id": "7b0dedd9", "metadata": {}, "source": [ "## Load in labels\n", "\n", "The labels file contains a list of pairwise comparisons which represent matches and non-matches.\n", "\n", "The required format of the labels file is described [here](https://moj-analytical-services.github.io/splink/linkerqa.html#splink.linker.Linker.roc_chart_from_labels)." ] }, { "cell_type": "code", "execution_count": 2, "id": "bbfdc70c", "metadata": {}, "outputs": [], "source": [ "df_labels = pd.read_csv(\"./data/fake_1000_labels.csv\")\n", "df_labels.head(5)\n", "labels_table = linker.register_labels_table(df_labels)" ] }, { "cell_type": "markdown", "id": "81e4396d", "metadata": {}, "source": [ "## Receiver operating characteristic curve\n", "\n", "A [ROC chart](https://en.wikipedia.org/wiki/Receiver_operating_characteristic) shows how the number of false positives and false negatives varies depending on the match threshold chosen. The match threshold is the match weight chosen as a cutoff for which pairwise comparisons to accept as matches.\n", "\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "01dd7eec", "metadata": {}, "outputs": [ { "data": { "application/vnd.vegalite.v4+json": { "$schema": "https://vega.github.io/schema/vega-lite/v4.8.1.json", "data": { "values": [ { "F1": 0.12269938737154007, "FN": 0, "FN_rate": 0, "FP": 1145, "FP_rate": 1, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 0, "TN_rate": 0, "TP": 80, "TP_rate": 1, "match_probability": 1.3460163217639972e-05, "precision": 0.06530611962080002, "recall": 1, "row_count": 1225, "truth_threshold": -16.180925151253103 }, { "F1": 0.13355593383312225, "FN": 0, "FN_rate": 0, "FP": 1039, "FP_rate": 0.9074235558509827, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 106, "TN_rate": 0.09257642179727554, "TP": 80, "TP_rate": 1, "match_probability": 2.6610097999380943e-05, "precision": 0.07149240374565125, "recall": 1, "row_count": 1225, "truth_threshold": -15.197628260157996 }, { "F1": 0.14414414763450623, "FN": 0, "FN_rate": 0, "FP": 951, "FP_rate": 0.8305676579475403, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 194, "TN_rate": 0.16943231225013733, "TP": 80, "TP_rate": 1, "match_probability": 2.9307036618040996e-05, "precision": 0.0775945708155632, "recall": 1, "row_count": 1225, "truth_threshold": -15.058351095454539 }, { "F1": 0.17167381942272186, "FN": 0, "FN_rate": 0, "FP": 772, "FP_rate": 0.6742358207702637, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 373, "TN_rate": 0.32576417922973633, "TP": 80, "TP_rate": 1, "match_probability": 5.0223821351888104e-05, "precision": 0.09389671683311462, "recall": 1, "row_count": 1225, "truth_threshold": -14.281196212640527 }, { "F1": 0.18018017709255219, "FN": 0, "FN_rate": 0, "FP": 729, "FP_rate": 0.6366811990737915, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 416, "TN_rate": 0.3633187711238861, "TP": 80, "TP_rate": 1, "match_probability": 5.793771073464815e-05, "precision": 0.09888751804828644, "recall": 1, "row_count": 1225, "truth_threshold": -14.075054204359434 }, { "F1": 0.18867924809455872, "FN": 0, "FN_rate": 0, "FP": 688, "FP_rate": 0.6008733510971069, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 457, "TN_rate": 0.39912664890289307, "TP": 80, "TP_rate": 1, "match_probability": 7.795665808933434e-05, "precision": 0.1041666641831398, "recall": 1, "row_count": 1225, "truth_threshold": -13.646855757094729 }, { "F1": 0.1927710771560669, "FN": 0, "FN_rate": 0, "FP": 670, "FP_rate": 0.5851528644561768, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 475, "TN_rate": 0.41484716534614563, "TP": 80, "TP_rate": 1, "match_probability": 9.660450147587603e-05, "precision": 0.1066666692495346, "recall": 1, "row_count": 1225, "truth_threshold": -13.337410681042003 }, { "F1": 0.2139037400484085, "FN": 0, "FN_rate": 0, "FP": 589, "FP_rate": 0.5144104957580566, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 556, "TN_rate": 0.48558953404426575, "TP": 80, "TP_rate": 1, "match_probability": 9.928652325938759e-05, "precision": 0.11958146840333939, "recall": 1, "row_count": 1225, "truth_threshold": -13.297899321545422 }, { "F1": 0.22535210847854614, "FN": 0, "FN_rate": 0, "FP": 551, "FP_rate": 0.4812227189540863, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 594, "TN_rate": 0.5187773108482361, "TP": 80, "TP_rate": 1, "match_probability": 0.00010934842628632142, "precision": 0.1267828792333603, "recall": 1, "row_count": 1225, "truth_threshold": -13.158622156841965 }, { "F1": 0.2657807171344757, "FN": 0, "FN_rate": 0, "FP": 442, "FP_rate": 0.38602620363235474, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 703, "TN_rate": 0.6139737963676453, "TP": 80, "TP_rate": 1, "match_probability": 0.00019096696041229558, "precision": 0.15325669944286346, "recall": 1, "row_count": 1225, "truth_threshold": -12.354113789946899 }, { "F1": 0.31102362275123596, "FN": 1, "FN_rate": 0.012500000186264515, "FP": 350, "FP_rate": 0.3056768476963043, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 795, "TN_rate": 0.6943231225013733, "TP": 79, "TP_rate": 0.987500011920929, "match_probability": 0.00021031799558408573, "precision": 0.18414919078350067, "recall": 0.987500011920929, "row_count": 1225, "truth_threshold": -12.214836625243441 }, { "F1": 0.38235294818878174, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 250, "FP_rate": 0.21834060549736023, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 895, "TN_rate": 0.7816593647003174, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.0002161563520459881, "precision": 0.23780487477779388, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -12.17532526574686 }, { "F1": 0.4083769619464874, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 224, "FP_rate": 0.1956331878900528, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 921, "TN_rate": 0.8043668270111084, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.00029082794959182305, "precision": 0.25827813148498535, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.747126818482155 }, { "F1": 0.41489362716674805, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 218, "FP_rate": 0.19039301574230194, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 927, "TN_rate": 0.8096069693565369, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.00036037792165319885, "precision": 0.2635135054588318, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.437681742429428 }, { "F1": 0.4309392273426056, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 205, "FP_rate": 0.17903929948806763, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 940, "TN_rate": 0.8209607005119324, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.0004157086535296698, "precision": 0.27561837434768677, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.231539734148337 }, { "F1": 0.6363636255264282, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 86, "FP_rate": 0.07510916888713837, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1059, "TN_rate": 0.9248908162117004, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0005592773872116633, "precision": 0.47239264845848083, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.803341286883631 }, { "F1": 0.6525423526763916, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 79, "FP_rate": 0.0689956322312355, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1066, "TN_rate": 0.9310043454170227, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0007122085042062301, "precision": 0.49358972907066345, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.454384851334325 }, { "F1": 0.699999988079071, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 63, "FP_rate": 0.05502183362841606, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1082, "TN_rate": 0.9449781775474548, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0007843364734325508, "precision": 0.550000011920929, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.315107686630867 }, { "F1": 0.78125, "FN": 5, "FN_rate": 0.0625, "FP": 38, "FP_rate": 0.03318777307868004, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1107, "TN_rate": 0.966812252998352, "TP": 75, "TP_rate": 0.9375, "match_probability": 0.0011050753323181603, "precision": 0.6637167930603027, "recall": 0.9375, "row_count": 1225, "truth_threshold": -9.820044395788527 }, { "F1": 0.7849462628364563, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 33, "FP_rate": 0.028820959851145744, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1112, "TN_rate": 0.9711790680885315, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.001549428736955714, "precision": 0.6886792182922363, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -9.331810795535763 }, { "F1": 0.9012345671653748, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 9, "FP_rate": 0.00786026194691658, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1136, "TN_rate": 0.9921397566795349, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002083721728287663, "precision": 0.8902438879013062, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.903612348271055 }, { "F1": 0.9125000238418579, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 8, "FP_rate": 0.006986899767071009, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1137, "TN_rate": 0.9930130839347839, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002440712399938889, "precision": 0.9012345671653748, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.674956470935566 }, { "F1": 0.9125000238418579, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 7, "FP_rate": 0.00611353712156415, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1138, "TN_rate": 0.9938864707946777, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002953981199029205, "precision": 0.9125000238418579, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.398855639805213 }, { "F1": 0.9358974099159241, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 4, "FP_rate": 0.0034934498835355043, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1141, "TN_rate": 0.9965065717697144, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.004111103047270777, "precision": 0.948051929473877, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -7.920315457175952 }, { "F1": 0.9358974099159241, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 3, "FP_rate": 0.0026200872380286455, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1142, "TN_rate": 0.9973798990249634, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.0048137564568928705, "precision": 0.9605262875556946, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -7.6916595798404614 }, { "F1": 0.948051929473877, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.01892948959898597, "precision": 0.9733333587646484, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -5.695649411036003 }, { "F1": 0.9350649118423462, "FN": 8, "FN_rate": 0.10000000149011612, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 72, "TP_rate": 0.8999999761581421, "match_probability": 0.01956718159565942, "precision": 0.9729729890823364, "recall": 0.8999999761581421, "row_count": 1225, "truth_threshold": -5.646910902779872 }, { "F1": 0.9342105388641357, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.02082269842537379, "precision": 0.9726027250289917, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -5.555341169594114 }, { "F1": 0.9342105388641357, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 1, "FP_rate": 0.0008733624708838761, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1144, "TN_rate": 0.9991266131401062, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.03355371561789233, "precision": 0.9861111044883728, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -4.848145109629363 }, { "F1": 0.9466666579246521, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.050968514407467136, "precision": 1, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -4.218777743326051 }, { "F1": 0.9333333373069763, "FN": 10, "FN_rate": 0.125, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 70, "TP_rate": 0.875, "match_probability": 0.057629226437792884, "precision": 1, "recall": 0.875, "row_count": 1225, "truth_threshold": -4.031422236955988 }, { "F1": 0.9324324131011963, "FN": 11, "FN_rate": 0.13750000298023224, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 69, "TP_rate": 0.862500011920929, "match_probability": 0.1036178408262242, "precision": 1, "recall": 0.862500011920929, "row_count": 1225, "truth_threshold": -3.1128415086214996 }, { "F1": 0.9189189076423645, "FN": 12, "FN_rate": 0.15000000596046448, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 68, "TP_rate": 0.8500000238418579, "match_probability": 0.12192850691892726, "precision": 1, "recall": 0.8500000238418579, "row_count": 1225, "truth_threshold": -2.848302941696892 }, { "F1": 0.9041095972061157, "FN": 14, "FN_rate": 0.17499999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 66, "TP_rate": 0.824999988079071, "match_probability": 0.12500549783991013, "precision": 1, "recall": 0.824999988079071, "row_count": 1225, "truth_threshold": -2.807282404966241 }, { "F1": 0.9027777910232544, "FN": 15, "FN_rate": 0.1875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 65, "TP_rate": 0.8125, "match_probability": 0.15609277348896808, "precision": 1, "recall": 0.8125, "row_count": 1225, "truth_threshold": -2.434680659969797 }, { "F1": 0.8888888955116272, "FN": 16, "FN_rate": 0.20000000298023224, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 64, "TP_rate": 0.800000011920929, "match_probability": 0.2697445234341027, "precision": 1, "recall": 0.800000011920929, "row_count": 1225, "truth_threshold": -1.436807603337082 }, { "F1": 0.8873239159584045, "FN": 17, "FN_rate": 0.21250000596046448, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 63, "TP_rate": 0.7875000238418579, "match_probability": 0.42655277432482863, "precision": 1, "recall": 0.7875000238418579, "row_count": 1225, "truth_threshold": -0.42693647425608156 }, { "F1": 0.8732394576072693, "FN": 18, "FN_rate": 0.22499999403953552, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 62, "TP_rate": 0.7749999761581421, "match_probability": 0.7486791880844401, "precision": 1, "recall": 0.7749999761581421, "row_count": 1225, "truth_threshold": 1.5748175047489716 }, { "F1": 0.8714285492897034, "FN": 19, "FN_rate": 0.23749999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 61, "TP_rate": 0.762499988079071, "match_probability": 0.845489831484997, "precision": 1, "recall": 0.762499988079071, "row_count": 1225, "truth_threshold": 2.452085616882881 }, { "F1": 0.8405796885490417, "FN": 22, "FN_rate": 0.2750000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 58, "TP_rate": 0.7250000238418579, "match_probability": 0.9313613570213665, "precision": 1, "recall": 0.7250000238418579, "row_count": 1225, "truth_threshold": 3.7622480893427057 }, { "F1": 0.8382353186607361, "FN": 23, "FN_rate": 0.2874999940395355, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 57, "TP_rate": 0.7124999761581421, "match_probability": 0.9398046378194199, "precision": 1, "recall": 0.7124999761581421, "row_count": 1225, "truth_threshold": 3.9646366449614012 }, { "F1": 0.8030303120613098, "FN": 27, "FN_rate": 0.3375000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 53, "TP_rate": 0.6625000238418579, "match_probability": 0.9626067452697402, "precision": 1, "recall": 0.6625000238418579, "row_count": 1225, "truth_threshold": 4.686096577953629 }, { "F1": 0.7846153974533081, "FN": 29, "FN_rate": 0.36250001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 51, "TP_rate": 0.637499988079071, "match_probability": 0.9640620258815907, "precision": 1, "recall": 0.637499988079071, "row_count": 1225, "truth_threshold": 4.74554498043781 }, { "F1": 0.765625, "FN": 31, "FN_rate": 0.38749998807907104, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 49, "TP_rate": 0.612500011920929, "match_probability": 0.9649191298607789, "precision": 1, "recall": 0.612500011920929, "row_count": 1225, "truth_threshold": 4.781651597104704 }, { "F1": 0.75, "FN": 32, "FN_rate": 0.4000000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 48, "TP_rate": 0.6000000238418579, "match_probability": 0.9683233524392159, "precision": 1, "recall": 0.6000000238418579, "row_count": 1225, "truth_threshold": 4.933997323784226 }, { "F1": 0.7301587462425232, "FN": 34, "FN_rate": 0.42500001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 46, "TP_rate": 0.574999988079071, "match_probability": 0.9736420358876714, "precision": 1, "recall": 0.574999988079071, "row_count": 1225, "truth_threshold": 5.207080610036203 }, { "F1": 0.725806474685669, "FN": 35, "FN_rate": 0.4375, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 45, "TP_rate": 0.5625, "match_probability": 0.983167536477945, "precision": 1, "recall": 0.5625, "row_count": 1225, "truth_threshold": 5.868119036236372 }, { "F1": 0.7096773982048035, "FN": 36, "FN_rate": 0.44999998807907104, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 44, "TP_rate": 0.550000011920929, "match_probability": 0.9851982194155451, "precision": 1, "recall": 0.550000011920929, "row_count": 1225, "truth_threshold": 6.056571379582788 }, { "F1": 0.688524603843689, "FN": 38, "FN_rate": 0.4749999940395355, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 42, "TP_rate": 0.5249999761581421, "match_probability": 0.9860277238888514, "precision": 1, "recall": 0.5249999761581421, "row_count": 1225, "truth_threshold": 6.140989248207487 }, { "F1": 0.6833333373069763, "FN": 39, "FN_rate": 0.48750001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 41, "TP_rate": 0.512499988079071, "match_probability": 0.9865171517899944, "precision": 1, "recall": 0.512499988079071, "row_count": 1225, "truth_threshold": 6.193146935464514 }, { "F1": 0.6666666865348816, "FN": 40, "FN_rate": 0.5, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 40, "TP_rate": 0.5, "match_probability": 0.9888466183604949, "precision": 1, "recall": 0.5, "row_count": 1225, "truth_threshold": 6.4701936613098825 }, { "F1": 0.6379310488700867, "FN": 43, "FN_rate": 0.5375000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 37, "TP_rate": 0.4625000059604645, "match_probability": 0.9947617503544408, "precision": 1, "recall": 0.4625000059604645, "row_count": 1225, "truth_threshold": 7.569122407661308 }, { "F1": 0.6206896305084229, "FN": 44, "FN_rate": 0.550000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 36, "TP_rate": 0.44999998807907104, "match_probability": 0.9963535081366635, "precision": 1, "recall": 0.44999998807907104, "row_count": 1225, "truth_threshold": 8.094004718956409 }, { "F1": 0.6140350699424744, "FN": 45, "FN_rate": 0.5625, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 35, "TP_rate": 0.4375, "match_probability": 0.997270954865984, "precision": 1, "recall": 0.4375, "row_count": 1225, "truth_threshold": 8.513445467951463 }, { "F1": 0.5964912176132202, "FN": 46, "FN_rate": 0.574999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 34, "TP_rate": 0.42500001192092896, "match_probability": 0.9988262199383622, "precision": 1, "recall": 0.42500001192092896, "row_count": 1225, "truth_threshold": 9.732927776204539 }, { "F1": 0.5892857313156128, "FN": 47, "FN_rate": 0.5874999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 33, "TP_rate": 0.4124999940395355, "match_probability": 0.9994252435130107, "precision": 1, "recall": 0.4124999940395355, "row_count": 1225, "truth_threshold": 10.763932098817342 }, { "F1": 0.5714285969734192, "FN": 48, "FN_rate": 0.6000000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 32, "TP_rate": 0.4000000059604645, "match_probability": 0.9995213228201159, "precision": 1, "recall": 0.4000000059604645, "row_count": 1225, "truth_threshold": 11.027968599341028 }, { "F1": 0.5636363625526428, "FN": 49, "FN_rate": 0.612500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 31, "TP_rate": 0.38749998807907104, "match_probability": 0.9995799138408187, "precision": 1, "recall": 0.38749998807907104, "row_count": 1225, "truth_threshold": 11.216420942687444 }, { "F1": 0.5185185074806213, "FN": 52, "FN_rate": 0.6499999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 28, "TP_rate": 0.3499999940395355, "match_probability": 0.9996188913078169, "precision": 1, "recall": 0.3499999940395355, "row_count": 1225, "truth_threshold": 11.35695993816256 }, { "F1": 0.5094339847564697, "FN": 53, "FN_rate": 0.6625000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 27, "TP_rate": 0.3375000059604645, "match_probability": 0.9996652899631318, "precision": 1, "recall": 0.3375000059604645, "row_count": 1225, "truth_threshold": 11.544317600790595 }, { "F1": 0.48076921701431274, "FN": 55, "FN_rate": 0.6875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 25, "TP_rate": 0.3125, "match_probability": 0.9996713573736925, "precision": 1, "recall": 0.3125, "row_count": 1225, "truth_threshold": 11.570718554598834 }, { "F1": 0.4615384638309479, "FN": 56, "FN_rate": 0.699999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 24, "TP_rate": 0.30000001192092896, "match_probability": 0.9997208405755873, "precision": 1, "recall": 0.30000001192092896, "row_count": 1225, "truth_threshold": 11.806220319131393 }, { "F1": 0.45098039507865906, "FN": 57, "FN_rate": 0.7124999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 23, "TP_rate": 0.2874999940395355, "match_probability": 0.9998005063408236, "precision": 1, "recall": 0.2874999940395355, "row_count": 1225, "truth_threshold": 12.291081650614707 }, { "F1": 0.4313725531101227, "FN": 58, "FN_rate": 0.7250000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 22, "TP_rate": 0.2750000059604645, "match_probability": 0.9998249307393512, "precision": 1, "recall": 0.2750000059604645, "row_count": 1225, "truth_threshold": 12.479533993961123 }, { "F1": 0.41999998688697815, "FN": 59, "FN_rate": 0.737500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 21, "TP_rate": 0.26249998807907104, "match_probability": 0.9998398315231686, "precision": 1, "recall": 0.26249998807907104, "row_count": 1225, "truth_threshold": 12.60789105160024 }, { "F1": 0.4000000059604645, "FN": 60, "FN_rate": 0.75, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 20, "TP_rate": 0.25, "match_probability": 0.9998416642723219, "precision": 1, "recall": 0.25, "row_count": 1225, "truth_threshold": 12.624497102046357 }, { "F1": 0.3877550959587097, "FN": 61, "FN_rate": 0.762499988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 19, "TP_rate": 0.23749999701976776, "match_probability": 0.9998527234314866, "precision": 1, "recall": 0.23749999701976776, "row_count": 1225, "truth_threshold": 12.728971970765963 }, { "F1": 0.3541666567325592, "FN": 63, "FN_rate": 0.7875000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 17, "TP_rate": 0.21250000596046448, "match_probability": 0.9998587754003456, "precision": 1, "recall": 0.21250000596046448, "row_count": 1225, "truth_threshold": 12.789517210226498 }, { "F1": 0.3333333432674408, "FN": 64, "FN_rate": 0.800000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 16, "TP_rate": 0.20000000298023224, "match_probability": 0.9999329440285785, "precision": 1, "recall": 0.20000000298023224, "row_count": 1225, "truth_threshold": 13.864177918153763 }, { "F1": 0.3191489279270172, "FN": 65, "FN_rate": 0.8125, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 15, "TP_rate": 0.1875, "match_probability": 0.9999411547765374, "precision": 1, "recall": 0.1875, "row_count": 1225, "truth_threshold": 14.052630261500179 }, { "F1": 0.2978723347187042, "FN": 66, "FN_rate": 0.824999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 14, "TP_rate": 0.17499999701976776, "match_probability": 0.999985664858034, "precision": 1, "recall": 0.17499999701976776, "row_count": 1225, "truth_threshold": 16.0900636008738 }, { "F1": 0.24444444477558136, "FN": 69, "FN_rate": 0.862500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 11, "TP_rate": 0.13750000298023224, "match_probability": 0.999991863105546, "precision": 1, "recall": 0.13750000298023224, "row_count": 1225, "truth_threshold": 16.907078553017104 }, { "F1": 0.2222222238779068, "FN": 70, "FN_rate": 0.875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 10, "TP_rate": 0.125, "match_probability": 0.9999981543791719, "precision": 1, "recall": 0.125, "row_count": 1225, "truth_threshold": 19.04745971642469 }, { "F1": 0.20454545319080353, "FN": 71, "FN_rate": 0.887499988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 9, "TP_rate": 0.11249999701976776, "match_probability": 0.9999983791519462, "precision": 1, "recall": 0.11249999701976776, "row_count": 1225, "truth_threshold": 19.234817379052725 }, { "F1": 0.1818181872367859, "FN": 72, "FN_rate": 0.8999999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 8, "TP_rate": 0.10000000149011612, "match_probability": 0.999998577630006, "precision": 1, "recall": 0.10000000149011612, "row_count": 1225, "truth_threshold": 19.42326972239914 }, { "F1": 0.1627907007932663, "FN": 73, "FN_rate": 0.9125000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 7, "TP_rate": 0.08749999850988388, "match_probability": 0.9999986885251018, "precision": 1, "recall": 0.08749999850988388, "row_count": 1225, "truth_threshold": 19.540376482707984 }, { "F1": 0.13953489065170288, "FN": 74, "FN_rate": 0.925000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 6, "TP_rate": 0.07500000298023224, "match_probability": 0.9999991523541251, "precision": 1, "recall": 0.07500000298023224, "row_count": 1225, "truth_threshold": 20.170033772223253 }, { "F1": 0.1190476194024086, "FN": 75, "FN_rate": 0.9375, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 5, "TP_rate": 0.0625, "match_probability": 0.9999993141453815, "precision": 1, "recall": 0.0625, "row_count": 1225, "truth_threshold": 20.47559287587851 }, { "F1": 0.095238097012043, "FN": 76, "FN_rate": 0.949999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 4, "TP_rate": 0.05000000074505806, "match_probability": 0.9999996813512295, "precision": 1, "recall": 0.05000000074505806, "row_count": 1225, "truth_threshold": 21.581529110583062 }, { "F1": 0.0731707289814949, "FN": 77, "FN_rate": 0.9624999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 3, "TP_rate": 0.03750000149011612, "match_probability": 0.9999999403866138, "precision": 1, "recall": 0.03750000149011612, "row_count": 1225, "truth_threshold": 23.999788346987685 } ] }, "encoding": { "tooltip": [ { "field": "truth_threshold", "format": ".4f", "type": "quantitative" }, { "field": "match_probability", "format": ".4%", "type": "quantitative" }, { "field": "FP_rate", "format": ".4f", "type": "quantitative" }, { "field": "TP_rate", "format": ".4f", "type": "quantitative" }, { "field": "TP", "format": ",.0f", "type": "quantitative" }, { "field": "TN", "format": ",.0f", "type": "quantitative" }, { "field": "FP", "format": ",.0f", "type": "quantitative" }, { "field": "FN", "format": ",.0f", "type": "quantitative" }, { "field": "precision", "format": ".4f", "type": "quantitative" }, { "field": "recall", "format": ".4f", "type": "quantitative" }, { "field": "F1", "format": ".4f", "type": "quantitative" } ], "x": { "field": "FP_rate", "sort": [ "truth_threshold" ], "title": "False Positive Rate amongst clerically reviewed records", "type": "quantitative" }, "y": { "field": "TP_rate", "sort": [ "truth_threshold" ], "title": "True Positive Rate amongst clerically reviewed records", "type": "quantitative" } }, "height": 400, "mark": { "clip": true, "point": true, "type": "line" }, "selection": { "selector076": { "bind": "scales", "encodings": [ "x" ], "type": "interval" } }, "title": "Receiver operating characteristic curve", "width": 400 }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAb8AAAHQCAYAAAAxsWT9AAAAAXNSR0IArs4c6QAAIABJREFUeF7snQm4VuPax+/muV3SPEgahKQoRWVKRckXGlBIR6YjMnUiURwJqXNSOEpIOTihIkfGKIpUEhq/FFEZ2ppJ9V3/h7W/Pb3vu/b6r/XW6/0/19VV7b3+z3rW77nXc6/7GQvt379/vymJgAiIgAiIQBoRKCTnl0a1rUcVAREQARFwBOT8ZAgiIAIiIAJpR0DOL+2qXA8sAiIgAiIg5ycbEAEREAERSDsCcn5/8irPbz5ToUKFkvLUW7duNdw/IyMjKfc7WG/y66+/2q5du6xkyZJWokSJg7WYB325du7caXv27LEyZcpY0aJFC1ReRlugG+nilCEg55cyVRWsoG3atLF58+blEFepUsU6duxoo0ePtkqVKgXL2IfKc7K//PKLFS9e3Ifiz3HJ0qVL7aOPPrITTzzRmjRpYuPGjbO//vWvNmzYMBs6dGhSH7J8+fK2bds29xFyINP3339v06dPtzp16liHDh0CFeWCCy6wadOm2TvvvGOnnnpq3Dz++9//2jfffGPdunVzNl4QbaDCSZRyBOT8Uq7KClZgz/nB2dWsWdMQhcyePds2b97sHCAaiajSgAEDbPfu3TZ+/PgCf6lHVaZk5IuPihtvvNHGjh3rnN7bb79t//73v+2cc85xf5KZvA+QA+38Fi5caC1atHDO6MUXXwyE4JFHHrHFixc7tkceeWTcPLp27WozZ860RYsWWbNmzawg2kCFkyjlCMj5pVyVFazAnvObM2eOtWvXzonh/OD4kPbt2+eigscee8wmTJjgvpaPP/54u+eee6x58+buGnyxP/DAA7Zq1Sr3xf0///M/duGFF7rfoWG/++677YsvvrAGDRrYtddem/W7Tp06GbqbcM11111nn3/+uQ0ZMsR9+f/888/OERQrVsxmzZrl7jt48GBDOatVq+bucccddzinedNNN9nHH39sV199tWvErrzySrv44otzgFi+fLndfPPN9t5771mpUqXslFNOsQcffNBFGmgAb7jhBjvttNPshx9+cA7/iCOOsHvvvddOOOGEhM8BbvhwAEs4cvBA+VG+Tz75xA477DD3u7/97W/u/7jXypUrrWHDhnbrrbdaxYoVbcyYMXb55ZfbZZdd5nRz58617t27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", "text/plain": [ "\n", "\n", "If you see this message, it means the renderer has not been properly enabled\n", "for the frontend that you are using. For more information, see\n", "https://altair-viz.github.io/user_guide/troubleshooting.html\n" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "linker.roc_chart_from_labels_table(labels_table)" ] }, { "cell_type": "markdown", "id": "9f749c3c", "metadata": {}, "source": [ "### Precision-recall chart\n", "\n", "An alternative representation of truth space is called a [precision recall curve](https://stats.stackexchange.com/questions/7207/roc-vs-precision-and-recall-curves).\n", "\n", "This can be plotted as follows:" ] }, { "cell_type": "code", "execution_count": 4, "id": "18d25327", "metadata": {}, "outputs": [ { "data": { "application/vnd.vegalite.v4+json": { "$schema": "https://vega.github.io/schema/vega-lite/v4.8.1.json", "data": { "values": [ { "F1": 0.12269938737154007, "FN": 0, "FN_rate": 0, "FP": 1145, "FP_rate": 1, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 0, "TN_rate": 0, "TP": 80, "TP_rate": 1, "match_probability": 1.3460163217639972e-05, "precision": 0.06530611962080002, "recall": 1, "row_count": 1225, "truth_threshold": -16.180925151253103 }, { "F1": 0.13355593383312225, "FN": 0, "FN_rate": 0, "FP": 1039, "FP_rate": 0.9074235558509827, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 106, "TN_rate": 0.09257642179727554, "TP": 80, "TP_rate": 1, "match_probability": 2.6610097999380943e-05, "precision": 0.07149240374565125, "recall": 1, "row_count": 1225, "truth_threshold": -15.197628260157996 }, { "F1": 0.14414414763450623, "FN": 0, "FN_rate": 0, "FP": 951, "FP_rate": 0.8305676579475403, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 194, "TN_rate": 0.16943231225013733, "TP": 80, "TP_rate": 1, "match_probability": 2.9307036618040996e-05, "precision": 0.0775945708155632, "recall": 1, "row_count": 1225, "truth_threshold": -15.058351095454539 }, { "F1": 0.17167381942272186, "FN": 0, "FN_rate": 0, "FP": 772, "FP_rate": 0.6742358207702637, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 373, "TN_rate": 0.32576417922973633, "TP": 80, "TP_rate": 1, "match_probability": 5.0223821351888104e-05, "precision": 0.09389671683311462, "recall": 1, "row_count": 1225, "truth_threshold": -14.281196212640527 }, { "F1": 0.18018017709255219, "FN": 0, "FN_rate": 0, "FP": 729, "FP_rate": 0.6366811990737915, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 416, "TN_rate": 0.3633187711238861, "TP": 80, "TP_rate": 1, "match_probability": 5.793771073464815e-05, "precision": 0.09888751804828644, "recall": 1, "row_count": 1225, "truth_threshold": -14.075054204359434 }, { "F1": 0.18867924809455872, "FN": 0, "FN_rate": 0, "FP": 688, "FP_rate": 0.6008733510971069, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 457, "TN_rate": 0.39912664890289307, "TP": 80, "TP_rate": 1, "match_probability": 7.795665808933434e-05, "precision": 0.1041666641831398, "recall": 1, "row_count": 1225, "truth_threshold": -13.646855757094729 }, { "F1": 0.1927710771560669, "FN": 0, "FN_rate": 0, "FP": 670, "FP_rate": 0.5851528644561768, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 475, "TN_rate": 0.41484716534614563, "TP": 80, "TP_rate": 1, "match_probability": 9.660450147587603e-05, "precision": 0.1066666692495346, "recall": 1, "row_count": 1225, "truth_threshold": -13.337410681042003 }, { "F1": 0.2139037400484085, "FN": 0, "FN_rate": 0, "FP": 589, "FP_rate": 0.5144104957580566, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 556, "TN_rate": 0.48558953404426575, "TP": 80, "TP_rate": 1, "match_probability": 9.928652325938759e-05, "precision": 0.11958146840333939, "recall": 1, "row_count": 1225, "truth_threshold": -13.297899321545422 }, { "F1": 0.22535210847854614, "FN": 0, "FN_rate": 0, "FP": 551, "FP_rate": 0.4812227189540863, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 594, "TN_rate": 0.5187773108482361, "TP": 80, "TP_rate": 1, "match_probability": 0.00010934842628632142, "precision": 0.1267828792333603, "recall": 1, "row_count": 1225, "truth_threshold": -13.158622156841965 }, { "F1": 0.2657807171344757, "FN": 0, "FN_rate": 0, "FP": 442, "FP_rate": 0.38602620363235474, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 703, "TN_rate": 0.6139737963676453, "TP": 80, "TP_rate": 1, "match_probability": 0.00019096696041229558, "precision": 0.15325669944286346, "recall": 1, "row_count": 1225, "truth_threshold": -12.354113789946899 }, { "F1": 0.31102362275123596, "FN": 1, "FN_rate": 0.012500000186264515, "FP": 350, "FP_rate": 0.3056768476963043, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 795, "TN_rate": 0.6943231225013733, "TP": 79, "TP_rate": 0.987500011920929, "match_probability": 0.00021031799558408573, "precision": 0.18414919078350067, "recall": 0.987500011920929, "row_count": 1225, "truth_threshold": -12.214836625243441 }, { "F1": 0.38235294818878174, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 250, "FP_rate": 0.21834060549736023, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 895, "TN_rate": 0.7816593647003174, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.0002161563520459881, "precision": 0.23780487477779388, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -12.17532526574686 }, { "F1": 0.4083769619464874, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 224, "FP_rate": 0.1956331878900528, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 921, "TN_rate": 0.8043668270111084, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.00029082794959182305, "precision": 0.25827813148498535, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.747126818482155 }, { "F1": 0.41489362716674805, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 218, "FP_rate": 0.19039301574230194, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 927, "TN_rate": 0.8096069693565369, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.00036037792165319885, "precision": 0.2635135054588318, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.437681742429428 }, { "F1": 0.4309392273426056, "FN": 2, "FN_rate": 0.02500000037252903, "FP": 205, "FP_rate": 0.17903929948806763, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 940, "TN_rate": 0.8209607005119324, "TP": 78, "TP_rate": 0.9750000238418579, "match_probability": 0.0004157086535296698, "precision": 0.27561837434768677, "recall": 0.9750000238418579, "row_count": 1225, "truth_threshold": -11.231539734148337 }, { "F1": 0.6363636255264282, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 86, "FP_rate": 0.07510916888713837, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1059, "TN_rate": 0.9248908162117004, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0005592773872116633, "precision": 0.47239264845848083, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.803341286883631 }, { "F1": 0.6525423526763916, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 79, "FP_rate": 0.0689956322312355, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1066, "TN_rate": 0.9310043454170227, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0007122085042062301, "precision": 0.49358972907066345, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.454384851334325 }, { "F1": 0.699999988079071, "FN": 3, "FN_rate": 0.03750000149011612, "FP": 63, "FP_rate": 0.05502183362841606, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1082, "TN_rate": 0.9449781775474548, "TP": 77, "TP_rate": 0.9624999761581421, "match_probability": 0.0007843364734325508, "precision": 0.550000011920929, "recall": 0.9624999761581421, "row_count": 1225, "truth_threshold": -10.315107686630867 }, { "F1": 0.78125, "FN": 5, "FN_rate": 0.0625, "FP": 38, "FP_rate": 0.03318777307868004, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1107, "TN_rate": 0.966812252998352, "TP": 75, "TP_rate": 0.9375, "match_probability": 0.0011050753323181603, "precision": 0.6637167930603027, "recall": 0.9375, "row_count": 1225, "truth_threshold": -9.820044395788527 }, { "F1": 0.7849462628364563, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 33, "FP_rate": 0.028820959851145744, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1112, "TN_rate": 0.9711790680885315, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.001549428736955714, "precision": 0.6886792182922363, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -9.331810795535763 }, { "F1": 0.9012345671653748, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 9, "FP_rate": 0.00786026194691658, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1136, "TN_rate": 0.9921397566795349, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002083721728287663, "precision": 0.8902438879013062, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.903612348271055 }, { "F1": 0.9125000238418579, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 8, "FP_rate": 0.006986899767071009, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1137, "TN_rate": 0.9930130839347839, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002440712399938889, "precision": 0.9012345671653748, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.674956470935566 }, { "F1": 0.9125000238418579, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 7, "FP_rate": 0.00611353712156415, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1138, "TN_rate": 0.9938864707946777, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.002953981199029205, "precision": 0.9125000238418579, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -8.398855639805213 }, { "F1": 0.9358974099159241, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 4, "FP_rate": 0.0034934498835355043, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1141, "TN_rate": 0.9965065717697144, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.004111103047270777, "precision": 0.948051929473877, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -7.920315457175952 }, { "F1": 0.9358974099159241, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 3, "FP_rate": 0.0026200872380286455, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1142, "TN_rate": 0.9973798990249634, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.0048137564568928705, "precision": 0.9605262875556946, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -7.6916595798404614 }, { "F1": 0.948051929473877, "FN": 7, "FN_rate": 0.08749999850988388, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 73, "TP_rate": 0.9125000238418579, "match_probability": 0.01892948959898597, "precision": 0.9733333587646484, "recall": 0.9125000238418579, "row_count": 1225, "truth_threshold": -5.695649411036003 }, { "F1": 0.9350649118423462, "FN": 8, "FN_rate": 0.10000000149011612, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 72, "TP_rate": 0.8999999761581421, "match_probability": 0.01956718159565942, "precision": 0.9729729890823364, "recall": 0.8999999761581421, "row_count": 1225, "truth_threshold": -5.646910902779872 }, { "F1": 0.9342105388641357, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 2, "FP_rate": 0.0017467249417677522, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1143, "TN_rate": 0.9982532858848572, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.02082269842537379, "precision": 0.9726027250289917, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -5.555341169594114 }, { "F1": 0.9342105388641357, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 1, "FP_rate": 0.0008733624708838761, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1144, "TN_rate": 0.9991266131401062, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.03355371561789233, "precision": 0.9861111044883728, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -4.848145109629363 }, { "F1": 0.9466666579246521, "FN": 9, "FN_rate": 0.11249999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 71, "TP_rate": 0.887499988079071, "match_probability": 0.050968514407467136, "precision": 1, "recall": 0.887499988079071, "row_count": 1225, "truth_threshold": -4.218777743326051 }, { "F1": 0.9333333373069763, "FN": 10, "FN_rate": 0.125, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 70, "TP_rate": 0.875, "match_probability": 0.057629226437792884, "precision": 1, "recall": 0.875, "row_count": 1225, "truth_threshold": -4.031422236955988 }, { "F1": 0.9324324131011963, "FN": 11, "FN_rate": 0.13750000298023224, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 69, "TP_rate": 0.862500011920929, "match_probability": 0.1036178408262242, "precision": 1, "recall": 0.862500011920929, "row_count": 1225, "truth_threshold": -3.1128415086214996 }, { "F1": 0.9189189076423645, "FN": 12, "FN_rate": 0.15000000596046448, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 68, "TP_rate": 0.8500000238418579, "match_probability": 0.12192850691892726, "precision": 1, "recall": 0.8500000238418579, "row_count": 1225, "truth_threshold": -2.848302941696892 }, { "F1": 0.9041095972061157, "FN": 14, "FN_rate": 0.17499999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 66, "TP_rate": 0.824999988079071, "match_probability": 0.12500549783991013, "precision": 1, "recall": 0.824999988079071, "row_count": 1225, "truth_threshold": -2.807282404966241 }, { "F1": 0.9027777910232544, "FN": 15, "FN_rate": 0.1875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 65, "TP_rate": 0.8125, "match_probability": 0.15609277348896808, "precision": 1, "recall": 0.8125, "row_count": 1225, "truth_threshold": -2.434680659969797 }, { "F1": 0.8888888955116272, "FN": 16, "FN_rate": 0.20000000298023224, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 64, "TP_rate": 0.800000011920929, "match_probability": 0.2697445234341027, "precision": 1, "recall": 0.800000011920929, "row_count": 1225, "truth_threshold": -1.436807603337082 }, { "F1": 0.8873239159584045, "FN": 17, "FN_rate": 0.21250000596046448, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 63, "TP_rate": 0.7875000238418579, "match_probability": 0.42655277432482863, "precision": 1, "recall": 0.7875000238418579, "row_count": 1225, "truth_threshold": -0.42693647425608156 }, { "F1": 0.8732394576072693, "FN": 18, "FN_rate": 0.22499999403953552, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 62, "TP_rate": 0.7749999761581421, "match_probability": 0.7486791880844401, "precision": 1, "recall": 0.7749999761581421, "row_count": 1225, "truth_threshold": 1.5748175047489716 }, { "F1": 0.8714285492897034, "FN": 19, "FN_rate": 0.23749999701976776, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 61, "TP_rate": 0.762499988079071, "match_probability": 0.845489831484997, "precision": 1, "recall": 0.762499988079071, "row_count": 1225, "truth_threshold": 2.452085616882881 }, { "F1": 0.8405796885490417, "FN": 22, "FN_rate": 0.2750000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 58, "TP_rate": 0.7250000238418579, "match_probability": 0.9313613570213665, "precision": 1, "recall": 0.7250000238418579, "row_count": 1225, "truth_threshold": 3.7622480893427057 }, { "F1": 0.8382353186607361, "FN": 23, "FN_rate": 0.2874999940395355, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 57, "TP_rate": 0.7124999761581421, "match_probability": 0.9398046378194199, "precision": 1, "recall": 0.7124999761581421, "row_count": 1225, "truth_threshold": 3.9646366449614012 }, { "F1": 0.8030303120613098, "FN": 27, "FN_rate": 0.3375000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 53, "TP_rate": 0.6625000238418579, "match_probability": 0.9626067452697402, "precision": 1, "recall": 0.6625000238418579, "row_count": 1225, "truth_threshold": 4.686096577953629 }, { "F1": 0.7846153974533081, "FN": 29, "FN_rate": 0.36250001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 51, "TP_rate": 0.637499988079071, "match_probability": 0.9640620258815907, "precision": 1, "recall": 0.637499988079071, "row_count": 1225, "truth_threshold": 4.74554498043781 }, { "F1": 0.765625, "FN": 31, "FN_rate": 0.38749998807907104, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 49, "TP_rate": 0.612500011920929, "match_probability": 0.9649191298607789, "precision": 1, "recall": 0.612500011920929, "row_count": 1225, "truth_threshold": 4.781651597104704 }, { "F1": 0.75, "FN": 32, "FN_rate": 0.4000000059604645, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 48, "TP_rate": 0.6000000238418579, "match_probability": 0.9683233524392159, "precision": 1, "recall": 0.6000000238418579, "row_count": 1225, "truth_threshold": 4.933997323784226 }, { "F1": 0.7301587462425232, "FN": 34, "FN_rate": 0.42500001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 46, "TP_rate": 0.574999988079071, "match_probability": 0.9736420358876714, "precision": 1, "recall": 0.574999988079071, "row_count": 1225, "truth_threshold": 5.207080610036203 }, { "F1": 0.725806474685669, "FN": 35, "FN_rate": 0.4375, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 45, "TP_rate": 0.5625, "match_probability": 0.983167536477945, "precision": 1, "recall": 0.5625, "row_count": 1225, "truth_threshold": 5.868119036236372 }, { "F1": 0.7096773982048035, "FN": 36, "FN_rate": 0.44999998807907104, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 44, "TP_rate": 0.550000011920929, "match_probability": 0.9851982194155451, "precision": 1, "recall": 0.550000011920929, "row_count": 1225, "truth_threshold": 6.056571379582788 }, { "F1": 0.688524603843689, "FN": 38, "FN_rate": 0.4749999940395355, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 42, "TP_rate": 0.5249999761581421, "match_probability": 0.9860277238888514, "precision": 1, "recall": 0.5249999761581421, "row_count": 1225, "truth_threshold": 6.140989248207487 }, { "F1": 0.6833333373069763, "FN": 39, "FN_rate": 0.48750001192092896, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 41, "TP_rate": 0.512499988079071, "match_probability": 0.9865171517899944, "precision": 1, "recall": 0.512499988079071, "row_count": 1225, "truth_threshold": 6.193146935464514 }, { "F1": 0.6666666865348816, "FN": 40, "FN_rate": 0.5, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 40, "TP_rate": 0.5, "match_probability": 0.9888466183604949, "precision": 1, "recall": 0.5, "row_count": 1225, "truth_threshold": 6.4701936613098825 }, { "F1": 0.6379310488700867, "FN": 43, "FN_rate": 0.5375000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 37, "TP_rate": 0.4625000059604645, "match_probability": 0.9947617503544408, "precision": 1, "recall": 0.4625000059604645, "row_count": 1225, "truth_threshold": 7.569122407661308 }, { "F1": 0.6206896305084229, "FN": 44, "FN_rate": 0.550000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 36, "TP_rate": 0.44999998807907104, "match_probability": 0.9963535081366635, "precision": 1, "recall": 0.44999998807907104, "row_count": 1225, "truth_threshold": 8.094004718956409 }, { "F1": 0.6140350699424744, "FN": 45, "FN_rate": 0.5625, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 35, "TP_rate": 0.4375, "match_probability": 0.997270954865984, "precision": 1, "recall": 0.4375, "row_count": 1225, "truth_threshold": 8.513445467951463 }, { "F1": 0.5964912176132202, "FN": 46, "FN_rate": 0.574999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 34, "TP_rate": 0.42500001192092896, "match_probability": 0.9988262199383622, "precision": 1, "recall": 0.42500001192092896, "row_count": 1225, "truth_threshold": 9.732927776204539 }, { "F1": 0.5892857313156128, "FN": 47, "FN_rate": 0.5874999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 33, "TP_rate": 0.4124999940395355, "match_probability": 0.9994252435130107, "precision": 1, "recall": 0.4124999940395355, "row_count": 1225, "truth_threshold": 10.763932098817342 }, { "F1": 0.5714285969734192, "FN": 48, "FN_rate": 0.6000000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 32, "TP_rate": 0.4000000059604645, "match_probability": 0.9995213228201159, "precision": 1, "recall": 0.4000000059604645, "row_count": 1225, "truth_threshold": 11.027968599341028 }, { "F1": 0.5636363625526428, "FN": 49, "FN_rate": 0.612500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 31, "TP_rate": 0.38749998807907104, "match_probability": 0.9995799138408187, "precision": 1, "recall": 0.38749998807907104, "row_count": 1225, "truth_threshold": 11.216420942687444 }, { "F1": 0.5185185074806213, "FN": 52, "FN_rate": 0.6499999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 28, "TP_rate": 0.3499999940395355, "match_probability": 0.9996188913078169, "precision": 1, "recall": 0.3499999940395355, "row_count": 1225, "truth_threshold": 11.35695993816256 }, { "F1": 0.5094339847564697, "FN": 53, "FN_rate": 0.6625000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 27, "TP_rate": 0.3375000059604645, "match_probability": 0.9996652899631318, "precision": 1, "recall": 0.3375000059604645, "row_count": 1225, "truth_threshold": 11.544317600790595 }, { "F1": 0.48076921701431274, "FN": 55, "FN_rate": 0.6875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 25, "TP_rate": 0.3125, "match_probability": 0.9996713573736925, "precision": 1, "recall": 0.3125, "row_count": 1225, "truth_threshold": 11.570718554598834 }, { "F1": 0.4615384638309479, "FN": 56, "FN_rate": 0.699999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 24, "TP_rate": 0.30000001192092896, "match_probability": 0.9997208405755873, "precision": 1, "recall": 0.30000001192092896, "row_count": 1225, "truth_threshold": 11.806220319131393 }, { "F1": 0.45098039507865906, "FN": 57, "FN_rate": 0.7124999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 23, "TP_rate": 0.2874999940395355, "match_probability": 0.9998005063408236, "precision": 1, "recall": 0.2874999940395355, "row_count": 1225, "truth_threshold": 12.291081650614707 }, { "F1": 0.4313725531101227, "FN": 58, "FN_rate": 0.7250000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 22, "TP_rate": 0.2750000059604645, "match_probability": 0.9998249307393512, "precision": 1, "recall": 0.2750000059604645, "row_count": 1225, "truth_threshold": 12.479533993961123 }, { "F1": 0.41999998688697815, "FN": 59, "FN_rate": 0.737500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 21, "TP_rate": 0.26249998807907104, "match_probability": 0.9998398315231686, "precision": 1, "recall": 0.26249998807907104, "row_count": 1225, "truth_threshold": 12.60789105160024 }, { "F1": 0.4000000059604645, "FN": 60, "FN_rate": 0.75, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 20, "TP_rate": 0.25, "match_probability": 0.9998416642723219, "precision": 1, "recall": 0.25, "row_count": 1225, "truth_threshold": 12.624497102046357 }, { "F1": 0.3877550959587097, "FN": 61, "FN_rate": 0.762499988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 19, "TP_rate": 0.23749999701976776, "match_probability": 0.9998527234314866, "precision": 1, "recall": 0.23749999701976776, "row_count": 1225, "truth_threshold": 12.728971970765963 }, { "F1": 0.3541666567325592, "FN": 63, "FN_rate": 0.7875000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 17, "TP_rate": 0.21250000596046448, "match_probability": 0.9998587754003456, "precision": 1, "recall": 0.21250000596046448, "row_count": 1225, "truth_threshold": 12.789517210226498 }, { "F1": 0.3333333432674408, "FN": 64, "FN_rate": 0.800000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 16, "TP_rate": 0.20000000298023224, "match_probability": 0.9999329440285785, "precision": 1, "recall": 0.20000000298023224, "row_count": 1225, "truth_threshold": 13.864177918153763 }, { "F1": 0.3191489279270172, "FN": 65, "FN_rate": 0.8125, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 15, "TP_rate": 0.1875, "match_probability": 0.9999411547765374, "precision": 1, "recall": 0.1875, "row_count": 1225, "truth_threshold": 14.052630261500179 }, { "F1": 0.2978723347187042, "FN": 66, "FN_rate": 0.824999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 14, "TP_rate": 0.17499999701976776, "match_probability": 0.999985664858034, "precision": 1, "recall": 0.17499999701976776, "row_count": 1225, "truth_threshold": 16.0900636008738 }, { "F1": 0.24444444477558136, "FN": 69, "FN_rate": 0.862500011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 11, "TP_rate": 0.13750000298023224, "match_probability": 0.999991863105546, "precision": 1, "recall": 0.13750000298023224, "row_count": 1225, "truth_threshold": 16.907078553017104 }, { "F1": 0.2222222238779068, "FN": 70, "FN_rate": 0.875, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 10, "TP_rate": 0.125, "match_probability": 0.9999981543791719, "precision": 1, "recall": 0.125, "row_count": 1225, "truth_threshold": 19.04745971642469 }, { "F1": 0.20454545319080353, "FN": 71, "FN_rate": 0.887499988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 9, "TP_rate": 0.11249999701976776, "match_probability": 0.9999983791519462, "precision": 1, "recall": 0.11249999701976776, "row_count": 1225, "truth_threshold": 19.234817379052725 }, { "F1": 0.1818181872367859, "FN": 72, "FN_rate": 0.8999999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 8, "TP_rate": 0.10000000149011612, "match_probability": 0.999998577630006, "precision": 1, "recall": 0.10000000149011612, "row_count": 1225, "truth_threshold": 19.42326972239914 }, { "F1": 0.1627907007932663, "FN": 73, "FN_rate": 0.9125000238418579, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 7, "TP_rate": 0.08749999850988388, "match_probability": 0.9999986885251018, "precision": 1, "recall": 0.08749999850988388, "row_count": 1225, "truth_threshold": 19.540376482707984 }, { "F1": 0.13953489065170288, "FN": 74, "FN_rate": 0.925000011920929, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 6, "TP_rate": 0.07500000298023224, "match_probability": 0.9999991523541251, "precision": 1, "recall": 0.07500000298023224, "row_count": 1225, "truth_threshold": 20.170033772223253 }, { "F1": 0.1190476194024086, "FN": 75, "FN_rate": 0.9375, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 5, "TP_rate": 0.0625, "match_probability": 0.9999993141453815, "precision": 1, "recall": 0.0625, "row_count": 1225, "truth_threshold": 20.47559287587851 }, { "F1": 0.095238097012043, "FN": 76, "FN_rate": 0.949999988079071, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 4, "TP_rate": 0.05000000074505806, "match_probability": 0.9999996813512295, "precision": 1, "recall": 0.05000000074505806, "row_count": 1225, "truth_threshold": 21.581529110583062 }, { "F1": 0.0731707289814949, "FN": 77, "FN_rate": 0.9624999761581421, "FP": 0, "FP_rate": 0, "N": 1145, "N_rate": 0.9346938729286194, "P": 80, "P_rate": 0, "TN": 1145, "TN_rate": 1, "TP": 3, "TP_rate": 0.03750000149011612, "match_probability": 0.9999999403866138, "precision": 1, "recall": 0.03750000149011612, "row_count": 1225, "truth_threshold": 23.999788346987685 } ] }, "encoding": { "tooltip": [ { "field": "truth_threshold", "format": ".4f", "type": "quantitative" }, { "field": "match_probability", "format": ".4%", "type": "quantitative" }, { "field": "FP_rate", "format": ".4f", "type": "quantitative" }, { "field": "TP_rate", "format": ".4f", "type": "quantitative" }, { "field": "TP", "format": ",.0f", "type": "quantitative" }, { "field": "TN", "format": ",.0f", "type": "quantitative" }, { "field": "FP", "format": ",.0f", "type": "quantitative" }, { "field": "FN", "format": ",.0f", "type": "quantitative" }, { "field": "precision", "format": ".4f", "type": "quantitative" }, { "field": "recall", "format": ".4f", "type": "quantitative" }, { "field": "F1", "format": ".4f", "type": "quantitative" } ], "x": { "field": "recall", "sort": [ "-recall" ], "title": "Recall", "type": "quantitative" }, "y": { "field": "precision", "sort": [ "-precision" ], "title": "Precision", "type": "quantitative" } }, "height": 400, "mark": { "clip": true, "point": true, "type": "line" }, "title": "Precision-recall curve", "width": 400 }, "image/png": "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", "text/plain": [ "\n", "\n", "If you see this message, it means the renderer has not been properly enabled\n", "for the frontend that you are using. For more information, see\n", "https://altair-viz.github.io/user_guide/troubleshooting.html\n" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "linker.precision_recall_chart_from_labels_table(labels_table)" ] }, { "cell_type": "markdown", "id": "12e6ba74", "metadata": {}, "source": [ "## Truth table\n", "\n", "Finally, Splink can also report the underlying table used to construct the ROC and precision recall curves." ] }, { "cell_type": "code", "execution_count": 5, "id": "f7c283ba", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
truth_thresholdmatch_probabilityrow_countPNTPTNFPFNP_rateN_rateTP_rateTN_rateFP_rateFN_rateprecisionrecallF1
0-16.1809250.0000131225.080.01145.080.00.01145.00.00.00.9346941.00.0000001.0000000.00.0653061.00.122699
1-15.1976280.0000271225.080.01145.080.0106.01039.00.00.00.9346941.00.0925760.9074240.00.0714921.00.133556
2-15.0583510.0000291225.080.01145.080.0194.0951.00.00.00.9346941.00.1694320.8305680.00.0775951.00.144144
3-14.2811960.0000501225.080.01145.080.0373.0772.00.00.00.9346941.00.3257640.6742360.00.0938971.00.171674
4-14.0750540.0000581225.080.01145.080.0416.0729.00.00.00.9346941.00.3633190.6366810.00.0988881.00.180180
\n", "
" ], "text/plain": [ " truth_threshold match_probability row_count P N TP TN \\\n", "0 -16.180925 0.000013 1225.0 80.0 1145.0 80.0 0.0 \n", "1 -15.197628 0.000027 1225.0 80.0 1145.0 80.0 106.0 \n", "2 -15.058351 0.000029 1225.0 80.0 1145.0 80.0 194.0 \n", "3 -14.281196 0.000050 1225.0 80.0 1145.0 80.0 373.0 \n", "4 -14.075054 0.000058 1225.0 80.0 1145.0 80.0 416.0 \n", "\n", " FP FN P_rate N_rate TP_rate TN_rate FP_rate FN_rate \\\n", "0 1145.0 0.0 0.0 0.934694 1.0 0.000000 1.000000 0.0 \n", "1 1039.0 0.0 0.0 0.934694 1.0 0.092576 0.907424 0.0 \n", "2 951.0 0.0 0.0 0.934694 1.0 0.169432 0.830568 0.0 \n", "3 772.0 0.0 0.0 0.934694 1.0 0.325764 0.674236 0.0 \n", "4 729.0 0.0 0.0 0.934694 1.0 0.363319 0.636681 0.0 \n", "\n", " precision recall F1 \n", "0 0.065306 1.0 0.122699 \n", "1 0.071492 1.0 0.133556 \n", "2 0.077595 1.0 0.144144 \n", "3 0.093897 1.0 0.171674 \n", "4 0.098888 1.0 0.180180 " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "roc_table = linker.truth_space_table_from_labels_table(labels_table)\n", "roc_table.as_pandas_dataframe(limit=5)" ] } ], "metadata": { "kernelspec": { "display_name": "splink_demos", "language": "python", "name": "splink_demos" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.8" }, "vscode": { "interpreter": { "hash": "3b53fa520a31e303a9636a08ff10a3bbc14893ee50cb37445791fa59628fc75b" } } }, "nbformat": 4, "nbformat_minor": 5 }