예제 #1
0
 public function testTrainUpdatesTransitionMatrix()
 {
     $sentences = ['my blue car', 'red and blue flowers', 'his blue car'];
     $chain = new MarkovChain();
     foreach ($sentences as $sentence) {
         $tokens = explode(" ", $sentence);
         $chain->train($tokens);
     }
     $this->assertEquals(['my' => ['blue' => 1], 'blue' => ['car' => 0.66666666666667, 'flowers' => 0.33333333333333], 'red' => ['and' => 1], 'and' => ['blue' => 1], 'his' => ['blue' => 1]], $chain->getTransitionMatrix());
 }