GraphAware\Reco4PHP\Tests\Algorithms\Model\KNNModelBuilderTest::testComputeSimilarity2 PHP Method

testComputeSimilarity2() public method

    public function testComputeSimilarity2()
    {
        $instance = new KNNModelBuilder(null, new CosineSimilarity());
        $source = new ObjectSet(Rating::class);
        $destination = new ObjectSet(Rating::class);
        $node1 = new FakeNode(1);
        $node2 = new FakeNode(2);
        $node3 = new FakeNode(3);
        $node4 = new FakeNode(4);
        $node5 = new FakeNode(5);
        $source->add(new Rating(1, $node1->identity()));
        $source->add(new Rating(3, $node4->identity()));
        $destination->add(new Rating(1, $node2->identity()));
        $destination->add(new Rating(2, $node4->identity()));
        $destination->add(new Rating(5, $node5->identity()));
        $similarity = $instance->computeSimilarity($source, $destination);
        $this->assertTrue($similarity >= 0.34641016 && $similarity <= 0.346410161514);
    }