Perceptron (unfinished)

This commit is contained in:
Niklas Birk
2019-06-24 00:23:19 +02:00
parent 5f9776c4ef
commit c44e53707d
4 changed files with 69 additions and 12 deletions

View File

@ -37,4 +37,20 @@ class PerceptronTest
{
new Perceptron().learn(this.positives, this.negatives);
}
@Test
void shouldClassifyCorrect2()
{
var positives = new ArrayList<>(List.of(
new Vector(List.of(0d, 1.8d)),
new Vector(List.of(2d, 0.6d)))
);
var negatives = new ArrayList<>(List.of(
new Vector(List.of(-1.2d, 1.4d)),
new Vector(List.of(0.4d, -1d)))
);
new Perceptron().learn(positives, negatives);
}
}

View File

@ -45,7 +45,7 @@ class VectorTest
}
@Test
void shouldReturnCorrectVectorWhenScalar()
void shouldReturnCorrectVectorWhenScalarMultiplying()
{
var v1 = new Vector(List.of(1d, 2d));
var v2 = new Vector(List.of(3d, 4d));
@ -55,4 +55,27 @@ class VectorTest
assertEquals(expected, result);
}
@Test
void shouldReturnCorrectVectorWhenEuclid()
{
var v1 = new Vector(List.of(1d, 2d));
var result = v1.euclid();
var expected = Math.sqrt(5);
assertEquals(expected, result);
}
@Test
void shouldReturnCorrectVectorWhenDividing()
{
var v1 = new Vector(List.of(1d, 2d));
var div = 2d;
var result = v1.divide(div);
var expected = new Vector(List.of(0.5d, 1d));
assertEquals(expected, result);
}
}