summaryrefslogtreecommitdiffstats
path: root/container-search
diff options
context:
space:
mode:
authorArne Juul <root@screwdriver.com>2023-10-10 12:56:18 +0000
committerArne Juul <root@screwdriver.com>2023-10-10 12:56:18 +0000
commite3401296f36818430e580d9522772f6d5ab2e43f (patch)
tree9cbd1e3ce61cacdd2a625ef4435d398f27968feb /container-search
parent54c1885ae2c0a672b67618e3871482c374d753ae (diff)
simplify Normalizer
Diffstat (limited to 'container-search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/ranking/LinearNormalizer.java4
-rw-r--r--container-search/src/main/java/com/yahoo/search/ranking/Normalizer.java10
-rw-r--r--container-search/src/main/java/com/yahoo/search/ranking/ReciprocalRankNormalizer.java4
-rw-r--r--container-search/src/test/java/com/yahoo/search/ranking/NormalizerTestCase.java20
4 files changed, 10 insertions, 28 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/ranking/LinearNormalizer.java b/container-search/src/main/java/com/yahoo/search/ranking/LinearNormalizer.java
index dfba337c8e0..a3fb86bb9b5 100644
--- a/container-search/src/main/java/com/yahoo/search/ranking/LinearNormalizer.java
+++ b/container-search/src/main/java/com/yahoo/search/ranking/LinearNormalizer.java
@@ -3,8 +3,8 @@ package com.yahoo.search.ranking;
class LinearNormalizer extends Normalizer {
- LinearNormalizer(String name, String input, int maxSize) {
- super(name, input, maxSize);
+ LinearNormalizer(int maxSize) {
+ super(maxSize);
}
void normalize() {
diff --git a/container-search/src/main/java/com/yahoo/search/ranking/Normalizer.java b/container-search/src/main/java/com/yahoo/search/ranking/Normalizer.java
index 987065b29f2..269d4e6ed11 100644
--- a/container-search/src/main/java/com/yahoo/search/ranking/Normalizer.java
+++ b/container-search/src/main/java/com/yahoo/search/ranking/Normalizer.java
@@ -3,14 +3,10 @@ package com.yahoo.search.ranking;
abstract class Normalizer {
- private final String name;
- private final String needInput;
protected final double[] data;
protected int size = 0;
- Normalizer(String name, String needInput, int maxSize) {
- this.name = name;
- this.needInput = needInput;
+ Normalizer(int maxSize) {
this.data = new double[maxSize];
}
@@ -21,10 +17,6 @@ abstract class Normalizer {
double getOutput(int index) { return data[index]; }
- String name() { return name; }
-
- String input() { return needInput; }
-
abstract void normalize();
abstract String normalizing();
diff --git a/container-search/src/main/java/com/yahoo/search/ranking/ReciprocalRankNormalizer.java b/container-search/src/main/java/com/yahoo/search/ranking/ReciprocalRankNormalizer.java
index d3cdfc4bc78..6716485e343 100644
--- a/container-search/src/main/java/com/yahoo/search/ranking/ReciprocalRankNormalizer.java
+++ b/container-search/src/main/java/com/yahoo/search/ranking/ReciprocalRankNormalizer.java
@@ -7,8 +7,8 @@ class ReciprocalRankNormalizer extends Normalizer {
private final double k;
- ReciprocalRankNormalizer(String name, String input, int maxSize, double k) {
- super(name, input, maxSize);
+ ReciprocalRankNormalizer(int maxSize, double k) {
+ super(maxSize);
this.k = k;
}
diff --git a/container-search/src/test/java/com/yahoo/search/ranking/NormalizerTestCase.java b/container-search/src/test/java/com/yahoo/search/ranking/NormalizerTestCase.java
index 144ca0e8bae..7373fb489f4 100644
--- a/container-search/src/test/java/com/yahoo/search/ranking/NormalizerTestCase.java
+++ b/container-search/src/test/java/com/yahoo/search/ranking/NormalizerTestCase.java
@@ -12,7 +12,7 @@ public class NormalizerTestCase {
@Test
void requireLinearNormalizing() {
- var n = new LinearNormalizer("foo", "bar", 10);
+ var n = new LinearNormalizer(10);
assertEquals(0, n.addInput(-4.0));
assertEquals(1, n.addInput(-1.0));
assertEquals(2, n.addInput(-5.0));
@@ -22,14 +22,12 @@ public class NormalizerTestCase {
assertEquals(0.25, n.getOutput(0));
assertEquals(0.5, n.getOutput(3));
assertEquals(1.0, n.getOutput(1));
- assertEquals("foo", n.name());
- assertEquals("bar", n.input());
assertEquals("linear", n.normalizing());
}
@Test
void requireLinearHandlesInfinity() {
- var n = new LinearNormalizer("foo", "bar", 10);
+ var n = new LinearNormalizer(10);
assertEquals(0, n.addInput(Double.NEGATIVE_INFINITY));
assertEquals(1, n.addInput(1.0));
assertEquals(2, n.addInput(9.0));
@@ -47,14 +45,12 @@ public class NormalizerTestCase {
assertEquals(0.25, n.getOutput(5));
assertEquals(Double.POSITIVE_INFINITY, n.getOutput(6));
assertEquals(0.875, n.getOutput(7));
- assertEquals("foo", n.name());
- assertEquals("bar", n.input());
assertEquals("linear", n.normalizing());
}
@Test
void requireReciprocalNormalizing() {
- var n = new ReciprocalRankNormalizer("foo", "bar", 10, 0.0);
+ var n = new ReciprocalRankNormalizer(10, 0.0);
assertEquals(0, n.addInput(-4.1));
assertEquals(1, n.addInput(11.0));
assertEquals(2, n.addInput(-50.0));
@@ -64,14 +60,12 @@ public class NormalizerTestCase {
assertEquals(0.3333333, n.getOutput(0), 0.00001);
assertEquals(0.5, n.getOutput(3));
assertEquals(1.0, n.getOutput(1));
- assertEquals("foo", n.name());
- assertEquals("bar", n.input());
assertEquals("reciprocal-rank{k:0.0}", n.normalizing());
}
@Test
void requireReciprocalNormalizingWithK() {
- var n = new ReciprocalRankNormalizer("foo", "bar", 10, 4.2);
+ var n = new ReciprocalRankNormalizer(10, 4.2);
assertEquals(0, n.addInput(-4.1));
assertEquals(1, n.addInput(11.0));
assertEquals(2, n.addInput(-50.0));
@@ -81,14 +75,12 @@ public class NormalizerTestCase {
assertEquals(1.0/7.2, n.getOutput(0), 0.00001);
assertEquals(1.0/6.2, n.getOutput(3));
assertEquals(1.0/5.2, n.getOutput(1));
- assertEquals("foo", n.name());
- assertEquals("bar", n.input());
assertEquals("reciprocal-rank{k:4.2}", n.normalizing());
}
@Test
void requireReciprocalInfinities() {
- var n = new ReciprocalRankNormalizer("foo", "bar", 10, 0.0);
+ var n = new ReciprocalRankNormalizer(10, 0.0);
assertEquals(0, n.addInput(Double.NEGATIVE_INFINITY));
assertEquals(1, n.addInput(1.0));
assertEquals(2, n.addInput(9.0));
@@ -107,8 +99,6 @@ public class NormalizerTestCase {
assertEquals(1.0/1.0, n.getOutput(6));
assertEquals(1.0/3.0, n.getOutput(7));
n.normalize();
- assertEquals("foo", n.name());
- assertEquals("bar", n.input());
assertEquals("reciprocal-rank{k:0.0}", n.normalizing());
}