Esempio n. 1
0
        public int TermFrequency(TokenUrl tokenUrl)
        {
            int res = 0;

            Uris.TryGetValue(tokenUrl, out res);
            return(res);
        }
Esempio n. 2
0
        public double Weight(TokenUrl tokenUrl, int n)
        {
            // The weight is 0 if the url doesn't have the token
            if (!this.Uris.ContainsKey(tokenUrl))
            {
                return(0);
            }

            return(LogTermFrequency(tokenUrl, 10) * InverseDocumentFrequency(n));
        }
Esempio n. 3
0
        public double NormalisedWeight(TokenUrl tokenUrl, int n)
        {
            // The weight is 0 if the url doesn't have the token
            if (!this.Uris.ContainsKey(tokenUrl))
            {
                return(0);
            }

            return(Weight(tokenUrl, n) / Math.Sqrt(SqrtFactor(tokenUrl)));
        }
Esempio n. 4
0
 public double LogTermFrequency(TokenUrl tokenUrl, double logbase)
 {
     return(1.0 + Math.Log(TermFrequency(tokenUrl), logbase));
 }
Esempio n. 5
0
        public double SqrtFactor(TokenUrl tokenUrl)
        {
            var sum = tokenUrl.Tokens.Sum(x => Math.Pow(x.LogTermFrequency(tokenUrl, 2), 2));

            return(sum);
        }