Praxisteil Seminar experimentelle Evaluierung in IR WS05/06 Gruppe A
Experimental setup Collections: TREC-123, wt10g Index:BM25 und TFIDF Queries: -Topics aus trec123.topics (für den ersten Teil) -Topics ,... Aus wt10g.topics.1000 (100 aus 1000 Topics für den zweiten Teil)
Aufgabenstellung Experiment (1) DTF vs. DTF max. 5 DL vs. DTF max. 10 DLs BM 25 vs. TF.IDF c=0.5 P0=0.5 vs. P0=1 Experiment (2) DTF vs. DTF max. 10 DLs c=0.5 vs. c=1 P0=1
Vorgehensweise Indexierung Resource description Kostenberechnung Resource selection
Vorgehensweise Indexierung eigentliche Inhalte rausnehmen und zusammen mit Dokument-ID in PIRE speichern
Vorgehensweise Indexierung (cont.) Show tables from exp_a like ap88%; | ap88_8c_text_stemen_bm25_dl | | ap88_8c_text_stemen_bm25_docid | | ap88_8c_text_stemen_bm25_expectation | | ap88_8c_text_stemen_bm25_idb_rd | | ap88_8c_text_stemen_bm25_rd | | ap88_8c_text_stemen_bm25_tf | | ap88_8c_text_stemen_bm25_tmp1 | | ap88_8c_text_stemen_bm25_variance | | ap88_8c_text_stemen_bm25_weight | | ap88_8c_text_stemen_tfidf_df | | ap88_8c_text_stemen_tfidf_dl | | ap88_8c_text_stemen_tfidf_docid | | ap88_8c_text_stemen_tfidf_expectation | | ap88_8c_text_stemen_tfidf_idb_rd | | ap88_8c_text_stemen_tfidf_maxTF | | ap88_8c_text_stemen_tfidf_rd | | ap88_8c_text_stemen_tfidf_tf | | ap88_8c_text_stemen_tfidf_tmp1 | | ap88_8c_text_stemen_tfidf_variance | | ap88_8c_text_stemen_tfidf_weight |
Vorgehensweise Resource description
Vorgehensweise Resource selection
Vorgehensweise Resource selection ResourceSelection{ GenericDL[ap88_4c]=[num=50,costs= ], Generic DL[ap88_4a]=[num=71,costs= ], GenericDL[ap88_2c]=[num=41,costs= ], GenericDL[ap88_3a]=[num=42,costs= ], GenericDL[ap88_4b]=[num=96,costs= ]} ResourceSelection{ GenericDL[ap88_3b]=[num=62,costs= ], GenericD L[ap88_4a]=[num=55,costs= ], GenericDL[ap88_2c]=[num=56,costs= ], GenericDL[ap88_3a]=[num=58,costs= ], Gene ricDL[ap88_1b]=[num=69,costs= ]}...
Vorgehensweise Resource selection (Durchlaufen von 100 Topics): Relevanzurteile: (DTF5, bm25) AP AP AP AP AP AP AP …
BM25 vs. TFIDF BM25 - Ein Ranking Modell - Die Performance von BM25 Ranking Algorithmus ist sehr abhängig von der Auswahl der Parameter. - Dieses Modell ist nur dann möglich wenn die Dokumentkollektionen, die Anfragenmenge und die Menge von dem Relevanzurteil vorher schon vorhanden sind. TF-IDF -TF: Term Frequency -IDF: Inverse Document Frequency log(N/DF) N: Gesamtzahl der Dokumente der Kollektion DF: Dokumentfrequenz = Anzahl Dokumente, in denen Term i auftritt
BM25 vs. TFIDF (cont.) BM25 TFIDF
Trec_eval (Bsp.) Queryid (Num): 100 Total number of documents over all queries Retrieved: Relevant: Rel_ret: 2030 Interpolated Recall - Precision Averages: at at at at at at at at at at at Average precision (non-interpolated) for all rel docs(averaged over queries) Precision: At 5 docs: At 10 docs: At 15 docs: At 20 docs: At 30 docs: At 100 docs: At 200 docs: At 500 docs: At 1000 docs: R-Precision (precision after R (= num_rel for a query) docs retrieved): Exact:
Ergebnisse
DTF vs. DTF5 vs. DTF10 (BM 25, c = 0.5, P0=1) Evaluation: fixed number of selected DLs (BM25)
DTF vs. DTF5 vs. DTF10 (BM 25, c = 0.5, P0=1)
Evaluation: fixed number of selected DLs (BM25)
DTF vs. DTF5 vs. DTF10 (TFIDF, c = 0.5, P0=1)
Evaluation: fixed number of selected DLs (TFIDF)
Ergebnisse (BM25 vs. TFIDF) Run Number of retrieved relevant documents Average Precision R Precision BM25, DTF 2489 out of TFIDF, DTF 2030 out of BM25, DTF out of TFIDF, DTF out of BM25, DTF out of TFIDF, DTF5 767 out of
Parameterauswahl Die Veränderung von dem Parameter p0 wird die gesamten Retrievalergebnisse nicht beeinflussen. Die Veränderung von c führt aber zur Änderung der Retrievalqualität. Run Number of retrieved relevant documents Average Precision R Precision TFIDF, DTF10 c = out of TFIDF, DTF10 c = out of
Experiment Teil2 Fast gleicher Code für Retrieval Unterschiedliche Topics Änderung von Operator (plain statt stemen_bm25 oder stemen_tfidf) Größere Kollektionsmenge
Probleme (1)ArrayIndexOutOfBounds Exception bei ComputeForTopic Grund: Ohne Indexierung und Resource Description können Kosten nicht berechnet werden und somit ist costs leer. Intern löst das dann die ArrayIndexOutOfBoundsException aus. Lösung: Erst Indexierung, um die Datenbanken zu erzeugen. (2) Bei jedem Durchlauf des Programms erscheint immer dasselbe Ergebnis in der Result Datei. Grund: Jedes mal werden die Ergebnisse immer wieder an der Datei angehängt. Lösung: Man muss die Datei jedes mal leeren oder man kann bei jedem Durchlauf eine neue Datei mit anderem Namen auswählen.
Probleme (cont.) (3)Bei dem zweiten Teil wurden nur leere Menge bei Resource Selection geliefert. Grund: Zu jeder Kollektion wurden PIRE nicht richtig erzeugt, so dass Resource Description nicht richtig funktioniert hat. Lösung: Bei DTFPDatalogConfig exp_ durch wt10g_ ersetzen (4)Nachdem die codes geändert worden sind, wurde komischerweise ein java.lang.OutOfMemoryError geliefert... Grund: Das hat irgendwie mit Speicher von Heap zu tun... Lösung: ?
Zusammenfassung DTF: - guter Ranking Algorithmus - abhängig von der Anzahl der zu selektierenden DLs - bessere Ergebnisse – ohne Beschränkung auf die Anzahl der zu selektierenden DLs Bei BM25 können im Vergleich zu TFIDF bessere Ergebnisse geliefert werden. Die Recall-Precision Funktion p0 hat keinen Einfluss auf die Retrievalergebnisse. Eine Erhöhung von der linearen mapping Funktion c führt aber zur Verbesserung der Retrievalqualität. Wie kann man die Ergebnisse noch verbessern? -> Relevance Feedback, DTF-cori
Vielen Dank für die Aufmerksamkeit!