Пример #1
0
        // Dictionary<string, double> finalRank;

        public Searcher(Dictionary <string, TermInfo> d, Dictionary <string, DocumentInfo> doc, string pp, int countD, int countDLengths, string stopPath)
        {
            dict        = d;
            docs        = doc;
            postingPath = pp;
            double avg = countDLengths / countD;

            ranker = new Ranker(countD, avg);
            readStopWords(stopPath);
        }
Пример #2
0
        public FindParam()
        {
            relevants = new HashSet <string>();
            loadDictionaryButton_Click();
            string postPath = @"C:\Users\ירדן\Desktop\לימודים\שנה ד\סמס1\אחזור מידע\data\posting";

            postPath = postPath + "\\postingNoStemm.txt";
            s        = new Searcher(d, docs, postPath, countDocs, countDocsLength, @"C:\Users\ירדן\Desktop\לימודים\שנה ד\סמס1\אחזור מידע\data\posting\stopwords.txt");
            string toSave   = @"C:\Users\ירדן\Desktop\לימודים\שנה ד\סמס1\אחזור מידע\data\results\";
            string filename = "";

            readRelevants();
            int countRel;

            filename = toSave + "result11.txt";
            double avg = countDocsLength / countDocs;

            ranker = new Ranker(countDocs, avg);
            string        qingleQuery = "space program";
            List <string> documentsFromQuery;

            // documentsFromQuery =
            parseQueryAndReturnRank(qingleQuery, false, null);
            //  documentsFromQuery = s.parseQueryAndReturnRank(qingleQuery, false, null);

            /*   countRel = 0;
             * foreach (string tmp in documentsFromQuery)
             * {
             *     string sub = tmp.Trim(' ');
             *
             *     if (relevants.Contains(sub))
             *     {
             *         countRel++;
             *     }
             * }*/
            /*
             * using (FileStream fs = new FileStream(filename, FileMode.Append))
             * {
             *  using (StreamWriter sw = new StreamWriter(fs))
             *  {
             *      if (countRel > 30)
             *          sw.WriteLine("*******************************");
             *      sw.WriteLine("b: " + bi);
             *      sw.WriteLine("k1: " + k1i);
             *      sw.WriteLine("k2: " + 0);
             *      //    sw.WriteLine("alpha: " + i);
             *      sw.WriteLine("count rel: " + countRel);
             *      sw.WriteLine();
             *      sw.WriteLine();
             *  }
             * }
             */
            /*
             *       s.ranker.k2 = 0;
             *
             *       for (double bi = 0.2; bi < 0.35; bi += 0.05)
             *       {
             *           s.ranker.b = bi;
             *           for (double k1i = 20; k1i < 100; k1i += 10)
             *           {
             *               s.ranker.k1 = k1i;
             *               //    for (double i = 0.55; i <=0.65; i += 0.02)
             *               {
             *                   //  s.ranker.alpha = i;
             *                   documentsFromQuery = s.parseQueryAndReturnRank(qingleQuery, false, null);
             *                   countRel = 0;
             *                   foreach (string tmp in documentsFromQuery)
             *                   {
             *                       string sub = tmp.Trim(' ');
             *
             *                       if (relevants.Contains(sub))
             *                       {
             *                           countRel++;
             *                       }
             *                   }
             *                   using (FileStream fs = new FileStream(filename, FileMode.Append))
             *                   {
             *                       using (StreamWriter sw = new StreamWriter(fs))
             *                       {
             *                           if (countRel > 30)
             *                               sw.WriteLine("*******************************");
             *                           sw.WriteLine("b: " + bi);
             *                           sw.WriteLine("k1: " + k1i);
             *                           sw.WriteLine("k2: " + 0);
             *                           //    sw.WriteLine("alpha: " + i);
             *                           sw.WriteLine("count rel: " + countRel);
             *                           sw.WriteLine();
             *                           sw.WriteLine();
             *                       }
             *                   }
             *
             *               }
             *           }
             *       }
             *
             *
             */
            /*   for (double b1i = 1; b1i < 3; b1i += 0.5)
             * {
             *     s.ranker.tobonusTitle = b1i;
             *     for (double b2i = 1; b2i < 2; b2i += 0.5)
             *     {
             *         s.ranker.tobonusTag100 = b2i;
             *         for (double b3i = 1; b3i < 2; b3i += 0.5)
             *         {
             *             s.ranker.tobonusTag101 = b3i;
             *             for (double b4i = 1; b4i < 3; b4i += 0.5)
             *             {
             *                 s.ranker.tobonusTheard = b4i;
             *
             *
             *                 documentsFromQuery = s.parseQueryAndReturnRank(qingleQuery, false, null);
             *                 countRel = 0;
             *                 foreach (string tmp in documentsFromQuery)
             *                 {
             *                     string sub = tmp.Trim(' ');
             *
             *                     if (relevants.Contains(sub))
             *                     {
             *                         countRel++;
             *                     }
             *                 }
             *
             *                 using (FileStream fs = new FileStream(filename, FileMode.Append))
             *                 {
             *                     using (StreamWriter sw = new StreamWriter(fs))
             *                     {
             *                         if (countRel > 30)
             *                             sw.WriteLine("*******************************");
             *                         sw.WriteLine("b: " + 0.3);
             *                         sw.WriteLine("k1: " + 13);
             *                         sw.WriteLine("k2: " + 5);
             *                         sw.WriteLine("title: " + b1i);
             *                         sw.WriteLine("tag100: " + b2i);
             *                         sw.WriteLine("tag101: " + b3i);
             *                         sw.WriteLine("3rd: " + b4i);
             *                         sw.WriteLine("count rel: " + countRel);
             *                         sw.WriteLine();
             *                         sw.WriteLine();
             *                     }
             *                 }
             *             }
             *         }
             *     }
             * }*/
        }