aboutsummaryrefslogtreecommitdiff
path: root/srchr/src/evaluation.rs
diff options
context:
space:
mode:
Diffstat (limited to 'srchr/src/evaluation.rs')
-rw-r--r--srchr/src/evaluation.rs41
1 files changed, 41 insertions, 0 deletions
diff --git a/srchr/src/evaluation.rs b/srchr/src/evaluation.rs
index a855d89..1c40b44 100644
--- a/srchr/src/evaluation.rs
+++ b/srchr/src/evaluation.rs
@@ -51,6 +51,23 @@ pub fn prelayout_fitness(corpus: &Corpus, layout: &Prelayout) -> f32 {
+ corpus.get_bigram_perc(k3, k4)
+ corpus.get_bigram_perc(k3, k5)
+ corpus.get_bigram_perc(k3, k6);
+
+ score += (corpus.get_skipgram_perc(k1, k2)
+ + corpus.get_skipgram_perc(k1, k3)
+ + corpus.get_skipgram_perc(k2, k3)
+ + corpus.get_skipgram_perc(k4, k5)
+ + corpus.get_skipgram_perc(k4, k6)
+ + corpus.get_skipgram_perc(k5, k6)
+ + corpus.get_skipgram_perc(k1, k4)
+ + corpus.get_skipgram_perc(k1, k5)
+ + corpus.get_skipgram_perc(k1, k6)
+ + corpus.get_skipgram_perc(k2, k4)
+ + corpus.get_skipgram_perc(k2, k5)
+ + corpus.get_skipgram_perc(k2, k6)
+ + corpus.get_skipgram_perc(k3, k4)
+ + corpus.get_skipgram_perc(k3, k5)
+ + corpus.get_skipgram_perc(k3, k6))
+ * INDEX_DSFB_WEIGHT;
}
score
@@ -105,6 +122,18 @@ impl Evaluation {
+ corpus.get_bigram_perc(k3, k4)
+ corpus.get_bigram_perc(k3, k5)
+ corpus.get_bigram_perc(k3, k6);
+ dsfb[i] += corpus.get_skipgram_perc(k4, k5)
+ + corpus.get_skipgram_perc(k4, k6)
+ + corpus.get_skipgram_perc(k5, k6)
+ + corpus.get_skipgram_perc(k1, k4)
+ + corpus.get_skipgram_perc(k1, k5)
+ + corpus.get_skipgram_perc(k1, k6)
+ + corpus.get_skipgram_perc(k2, k4)
+ + corpus.get_skipgram_perc(k2, k5)
+ + corpus.get_skipgram_perc(k2, k6)
+ + corpus.get_skipgram_perc(k3, k4)
+ + corpus.get_skipgram_perc(k3, k5)
+ + corpus.get_skipgram_perc(k3, k6);
} else if i == 4 {
let k4 = layout.get_key(5 + 10 * 0);
let k5 = layout.get_key(5 + 10 * 1);
@@ -121,6 +150,18 @@ impl Evaluation {
+ corpus.get_bigram_perc(k3, k4)
+ corpus.get_bigram_perc(k3, k5)
+ corpus.get_bigram_perc(k3, k6);
+ dsfb[i] += corpus.get_skipgram_perc(k4, k5)
+ + corpus.get_skipgram_perc(k4, k6)
+ + corpus.get_skipgram_perc(k5, k6)
+ + corpus.get_skipgram_perc(k1, k4)
+ + corpus.get_skipgram_perc(k1, k5)
+ + corpus.get_skipgram_perc(k1, k6)
+ + corpus.get_skipgram_perc(k2, k4)
+ + corpus.get_skipgram_perc(k2, k5)
+ + corpus.get_skipgram_perc(k2, k6)
+ + corpus.get_skipgram_perc(k3, k4)
+ + corpus.get_skipgram_perc(k3, k5)
+ + corpus.get_skipgram_perc(k3, k6);
}
}