From: Francois BERENGER <berenger@bioreg.kyushu-u.ac.jp>
To: caml-list@inria.fr
Subject: [Caml-list] [ANN] first release of cpm: the Classification Performance Metrics library
Date: Mon, 10 Jul 2017 17:00:21 +0900 [thread overview]
Message-ID: <7844295a-dd6f-9398-ce7b-a21f920146c2@bioreg.kyushu-u.ac.jp> (raw)
In-Reply-To: <978f88e8-6e9c-9f54-5988-0933a4cac833@bioreg.kyushu-u.ac.jp>
O Caml riders,
It is my pleasure to announce the first release of cpm.
cpm allows to compute various classification performance metrics, like:
- area under the ROC curve (AUC)
- BEDROC (Bolzmann Enhanced Discrimination of the ROC curve)
- Power Metric (PM) at given threshold
- Enrichment Factor (EF) at given percentage
Here is an example use:
---
(* first, define your score_label module *)
module SL = struct
type t = string * float * int * bool
let get_score (_, s, _, _) = s
let get_label (_, _, _, l) = l
end
(* second, instantiate the ROC functor for your score_label module *)
module ROC = MakeROC.Make (SL)
(* third, call any classification performance metric you need *)
[...]
let auc = ROC.auc scores in
[...]
---
The score is the output of your predictor.
For a true positive, the label must be 1.
For a true negative, the label must be 0.
Your predictor is supposed to give high scores to true positives
and low scores to true negatives.
The code is here:
https://github.com/UnixJunkie/cpmlib
The library should be available shortly in opam under the name cpm.
For those who like to read, here are some interesting reads on related
subjects:
- https://jcheminf.springeropen.com/articles/10.1186/s13321-016-0189-4
-
https://academic.oup.com/bioinformatics/article-lookup/doi/10.1093/bioinformatics/btq140
- http://pubs.acs.org/doi/abs/10.1021/ci600426e
Have fun classifying,
F.
next prev parent reply other threads:[~2017-07-10 8:00 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-03 14:04 [Caml-list] GCAI 2017 in Miami - Deadline extension Geoff Sutcliffe
2017-07-04 8:55 ` [Caml-list] parany: a minimalistic library to parallelize any kind of computation Francois BERENGER
2017-07-10 8:00 ` Francois BERENGER [this message]
2017-07-27 1:07 ` [Caml-list] new release of parany (1.0.2): a minimalistic OCaml " Francois BERENGER
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7844295a-dd6f-9398-ce7b-a21f920146c2@bioreg.kyushu-u.ac.jp \
--to=berenger@bioreg.kyushu-u.ac.jp \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox