public void TestLinearInterpolation2() { var set = new List <StringList> { new StringList("D", "N", "V", "STOP"), new StringList("D", "N", "V", "STOP") }; var lambda = 1d / 3d; var d = NGramUtils.CalculateTrigramLinearInterpolationProbability("N", "V", "STOP", set, lambda, lambda, lambda); Assert.That(d, Is.EqualTo(1d).Within(0.75d)); }
public void TestLinearInterpolation() { var set = new List <StringList> { new StringList("the", "green", "book", "STOP"), new StringList("my", "blue", "book", "STOP"), new StringList("his", "green", "house", "STOP"), new StringList("book", "STOP") }; var lambda = 1d / 3d; var d = NGramUtils.CalculateTrigramLinearInterpolationProbability("the", "green", "book", set, lambda, lambda, lambda); Assert.That(d, Is.EqualTo(0.5714285714285714d).Within(0.000000000001)); }