Techniques for Approximating a Trigram Language Model