// 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); }
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(); * } * } * } * } * } * }*/ }