def test_fit(self): gmm = GMM(self.num_centers, initial_clusters='random', batch_size=self.batch_size, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=1) score1 = gmm.score(x=self.points) gmm = GMM(self.num_centers, initial_clusters='random', batch_size=self.batch_size, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=10) score2 = gmm.score(x=self.points) self.assertGreater(score1, score2) self.assertNear(self.true_score, score2, self.true_score * 0.15)
def test_fit(self): gmm = GMM(self.num_centers, initial_clusters='random', batch_size=self.batch_size, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=1) score1 = gmm.score(x=self.points) gmm = GMM(self.num_centers, initial_clusters='random', batch_size=self.batch_size, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=10) score2 = gmm.score(x=self.points) self.assertGreater(score1, score2) self.assertNear(self.true_score, score2, self.true_score * 0.15)
def test_infer(self): gmm = GMM(self.num_centers, initial_clusters=self.initial_means, batch_size=self.batch_size, steps=40, continue_training=True, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=60) clusters = gmm.clusters() # Make a small test set points, true_assignments, true_offsets = (self.make_random_points( clusters, 40)) assignments = np.ravel(gmm.predict(points)) self.assertAllEqual(true_assignments, assignments) # Test score score = gmm.score(points) self.assertNear(score, np.sum(true_offsets), 4.05)
def test_infer(self): gmm = GMM(self.num_centers, initial_clusters=self.initial_means, batch_size=self.batch_size, steps=40, continue_training=True, random_seed=4, config=run_config.RunConfig(tf_random_seed=2)) gmm.fit(x=self.points, steps=60) clusters = gmm.clusters() # Make a small test set points, true_assignments, true_offsets = ( self.make_random_points(clusters, 40)) assignments = np.ravel(gmm.predict(points)) self.assertAllEqual(true_assignments, assignments) # Test score score = gmm.score(points) self.assertNear(score, np.sum(true_offsets), 4.05)