/* Last edited on 2024-12-21 14:03:19 by stolfi */ #ifndef dm_classify_H #define dm_classify_H #include #include #include #include void dm_classify_determine_score_weights ( msm_cand_vec_t *cdvT, msm_cand_vec_t *cdvF, dnae_seq_t *seq_a, dnae_seq_t *seq_b, dm_score_rec_t *w ); /* Computes the scoring weights {w.*} and {wK} from a given set of pairings of good candidates {cdvT} and bad (random) candidates {cdvF}, between sequences {seq_a} and {seq_b}. */ void dm_classify_adjust_score_weights ( msm_cand_vec_t *cdvT, msm_cand_vec_t *cdvF, dnae_seq_t *seq_a, dnae_seq_t *seq_b, int max_iter, dm_score_rec_t *w ); /* Tries to improve the score weights {w} so that they better separate the candidates {cdvT,cdvF}.. */ void dm_classify_write_svm_file ( FILE *wr, msm_cand_vec_t *cdvT, msm_cand_vec_t *cdvF, dnae_seq_t *seq_a, dnae_seq_t *seq_b ); /* Writes the score counts of {cdvT} and {cdvF} to {wr} in a format suitable for SVM training. */ #endif