inline double BigramModel::seq_surprisal(std::vector<std::string> &seq) { double s = 0.; for(int i = 1; i <seq.size(); ++i) { s += surprisal(seq[i-1], seq[i]); } return s; }
inline double BigramModel::surprisal(std::string first, std::string second) { Bigram b(first, second); return surprisal(b); }
fracfloat_t RealDist::surprisal(fracfloat_t trueValue, fracfloat_t predictedValue) const { return surprisal(predictedValue - trueValue); }