Forráskód Böngészése

Verbesserungsvorschlaege von C. Oessner (Email vom 15.01.2014) eingearbeitet; Definition von 'Random Walk' hinzugefügt

Martin Thoma 12 éve
szülő
commit
3c8ca52391

+ 3 - 3
documents/DYCOS/Ausblick.tex

@@ -3,9 +3,9 @@ vielen Punkten verbessern. So könnte man vor der Auswahl des
 Vokabulars jedes Wort auf den Wortstamm zurückführen.
 Dafür könnte zum Beispiel der in \cite{porter} vorgestellte 
 Porter-Stemming-Algorithmus verwendet werden. Durch diese Maßnahme wird das
-Vokabular kleiner gehalten, mehr Artikel können mit einander
-durch Vokabular verbunden werden und der Gini-Koeffizient wird ein
-besseres Maß für die Gleichheit von Texten.
+Vokabular kleiner gehalten wodurch mehr Artikel mit einander
+durch Vokabular verbunden werden können. Außerdem könnte so der 
+Gini-Koeffizient ein besseres Maß für die Gleichheit von Texten werden.
 
 Eine weitere Verbesserungsmöglichkeit besteht in der Textanalyse.
 Momentan ist diese noch sehr einfach gestrickt und ignoriert die

BIN
documents/DYCOS/DYCOS.pdf


+ 3 - 0
documents/DYCOS/README.md

@@ -10,3 +10,6 @@ TODO
 * Abschnitt "Problemstellung" überarbeiten
 * Abbildung verlinken
 * Algorithmen erklären
+* Warum sind Stellenangaben überflüssig?
+* Map erklären
+* Algorithmus 4, S. 9

+ 5 - 30
documents/DYCOS/SchwaechenVerbesserungen.tex

@@ -2,10 +2,9 @@ Der in \cite{aggarwal2011} vorgestellte Algorithmus hat einige Probleme,
 die im Folgenden erläutert werden. Außerdem werden Verbesserungen
 vorgeschlagen, die es allerdings noch zu untersuchen gilt.
 
-\subsection{Schwächen von DYCOS}
-\subsubsection{Anzahl der Labels}
+\subsection{Anzahl der Labels}
 So, wie der DYCOS-Algorithmus vorgestellt wurde, können nur Graphen bearbeitet werden, 
-deren Knoten höchstens ein Label haben. In vielen Fällen, wie z.~B. 
+deren Knoten jeweils höchstens ein Label haben. In vielen Fällen, wie z.~B. 
 Wikipedia mit Kategorien als Labels haben Knoten jedoch viele Labels.
 
 Auf einen ersten Blick ist diese Schwäche einfach zu beheben, indem 
@@ -22,7 +21,7 @@ sowohl für diese Kategorie als auch für die Kategorie \enquote{Klassifikation}
 zählen.
 
 
-\subsubsection{Überanpassung und Reklassifizierung}
+\subsection{Überanpassung und Reklassifizierung}
 Aggarwal und Li beschreiben in \cite{aggarwal2011} nicht, auf welche
 Knoten der Klassifizierungsalgorithmus angewendet werden soll. Jedoch
 ist die Reihenfolge der Klassifizierung relevant. Dazu folgendes 
@@ -71,7 +70,7 @@ Knoten einfügt:
 Wird zum Zeitpunkt $t=4$ ein ungelabelter Knoten $v_4$ und die Kanten
 $(v_1, v_4)$, $(v_2, v_4)$, $(v_3, v_4)$ hinzugefügt, so ist die 
 Wahrscheinlichkeit, dass $v_4$ mit $A$ gelabelt wird bei $\frac{2}{3}$.
-Werden die als ungelabelten Knoten jedoch erst jetzt und alle gemeinsam
+Werden die ungelabelten Knoten jedoch erst jetzt und alle gemeinsam
 gelabelt, so ist die Wahrscheinlichkeit für $A$ als Label bei nur $50\%$.
 Bei dem DYCOS-Algorithmus findet also eine Überanpassung an vergangene
 Labels statt.
@@ -81,28 +80,4 @@ Problem sein. Knoten, die durch den DYCOS-Algorithmus gelabelt wurden
 könnten eine Lebenszeit bekommen (TTL, Time to Live). Ist diese 
 abgelaufen, wird der DYCOS-Algorithmus erneut auf den Knoten angewendet.
 
-\subsection{Schwächen des Papers}
-In \cite{aggarwal2011} wurde eine experimentelle Analyse mithilfe 
-des DBLP-Datensatzes\footnote{http://dblp.uni-trier.de/} und des
-CORA-Datensatzes\footnote{\href{http://people.cs.umass.edu/~mccallum/data/cora-classify.tar.gz}{http://people.cs.umass.edu/~mccallum/data/cora-classify.tar.gz}} durchgeführt.
-Die Ergebnisse dieser Analyse können aus folgenden Gründen
-nicht überprüft werden:
-\begin{itemize}
-    \item Der Parameter $a \in \mathbb{N}$, der die Anzahl der ausgehenden Kanten
-          aller Wortknoten beschränkt, wird erst mit der Experimentellen
-          Analyse auf S.~362 eingeführt.
-          Es ist nicht klar, wie entschieden wird welche Kanten
-          gespeichert werden und welche nicht.
-    \item Für die Analyse der CORA-Datensatzes analysiert.
-          Dieser beinhaltet Forschungsarbeiten, wobei die 
-          Forschungsgebiete die in einen Baum mit 73 Blättern 
-          eingeordnet wurden. Aus diesen 73 Blättern wurden 5 Klassen
-          extrahiert und der Graph, der keine Zeitpunkte beinhaltet,
-          künstlich in 10 Graphen mit Zeitpunkten unterteilt. Wie
-          jedoch diese Unterteilung genau durchgeführt wurde kann nicht
-          nachvollzogen werden.
-    \item Der auf S. 360 in \enquote{Algorithm 1} vorgestellte
-          Pseudocode soll den DYCOS-Algorithmus darstellen. Allerdings
-          werden die bereits klassifizierten Knoten $\T_t$ neu klassifiziert
-          und mit $\theta$ die Klassifikationsgüte gemessen.
-\end{itemize}
+

+ 8 - 6
documents/DYCOS/Sprungtypen.tex

@@ -54,14 +54,16 @@ die Anzahl der möglichen Zielknoten $v' \in V_T$ auf diejenigen
 $q$ Knoten, die $v$ bzgl. der Textanalyse am ähnlichsten sind.
 
 In \cref{alg:l2} bis \cref{alg:l5} wird \cref{step:c1} durchgeführt.
+
 In \cref{alg:l6} wird \cref{step:c2} durchgeführt. Bei der
-Wahl der Datenstruktur $M_H$ ist zu beachten, dass man in
-\cref{alg:21} über Indizes auf Elemente aus $M_H$ zugreifen können muss.
+Wahl der Datenstruktur von $T$ ist zu beachten, dass man in
+\cref{alg:21} über Indizes auf Elemente aus $T$ zugreifen können muss.
 
 In \cref{alg:l8} bis \cref{alg:l13} wird ein Wörterbuch erstellt,
 das von $v' \in T(v)$ auf die relative
 Häufigkeit bzgl. aller Pfade von $v$ zu Knoten aus den Top-$q$ abbildet.
 
+In allen folgenden Zeilen wird \cref{step:c3} durchgeführt. 
 In \cref{alg:15} bis \cref{alg:22} wird ein Knoten $v' \in T(v)$ mit
 einer Wahrscheinlichkeit, die seiner relativen Häufigkeit am Anteil
 der Pfaden der Länge 2 von $v$ nach $v'$ über einen beliebigen 
@@ -78,14 +80,14 @@ Wortknoten entspricht ausgewählt und schließlich zurückgegeben.
                     \State $reachableNodes[x] \gets reachableNodes[x] + 1$
                 \EndFor
             \EndFor\label{alg:l5}
-            \State \label{alg:l6} $M_H \gets \Call{max}{reachableNodes, q}$ \Comment{Also: $|M_H| = q$, falls $|reachableNodes|\geq q$}
+            \State \label{alg:l6} $T \gets \Call{max}{reachableNodes, q}$ \Comment{Also: $|T| = q$, falls $|reachableNodes|\geq q$}
             \\
             \State \label{alg:l8} $s \gets 0$
-            \ForAll{Knoten $x$ in $M_H$}
+            \ForAll{Knoten $x \in T$}
                 \State $s \gets s + reachableNodes[x]$
             \EndFor
             \State $relativeFrequency \gets $ Dictionary
-            \ForAll{Knoten $x$ in $M_H$}
+            \ForAll{Knoten $x \in T$}
                 \State $relativeFrequency \gets \frac{reachableNodes[x]}{s}$
             \EndFor\label{alg:l13} 
             \\
@@ -97,7 +99,7 @@ Wortknoten entspricht ausgewählt und schließlich zurückgegeben.
                 \State $i \gets i + 1$
             \EndWhile
             
-            \State $v \gets M_H[i-1]$ \label{alg:21}
+            \State $v \gets T[i-1]$ \label{alg:21}
             \State \Return $v$ \label{alg:22} 
         \EndProcedure
     \end{algorithmic}

+ 7 - 3
documents/DYCOS/Vokabularbestimmung.tex

@@ -62,7 +62,11 @@ von Mengen $M,N$ in $\mathcal{O}(\min{|M|, |N|})$ sein muss.
             \ForAll{Label $i \in \L_t$}
                 \State $p[i] \gets \frac{cLabelWords[i][w]}{cLabelWords[i][|\L_t|]}$
             \EndFor
-            \State $w$.gini $\gets$ \Call{sum}{{\sc map}({\sc square}, $p$)}
+
+            \State $w$.gini $\gets 0$
+            \ForAll{$i \in 1, \dots, |\L_t|$}
+                \State $w$.gini $\gets$ $w$.gini + $p[i]^2$
+            \EndFor
         \EndFor
 
         \State $\M_t \gets \Call{SortDescendingByGini}{\M_t}$
@@ -72,6 +76,6 @@ von Mengen $M,N$ in $\mathcal{O}(\min{|M|, |N|})$ sein muss.
 \label{alg:vokabularbestimmung}
 \end{algorithm}
 
-Die Menge $S_t$ kann durch Aus der Menge aller Dokumenten, deren 
-Knoten gelabelt sind, mithilfe des in \cite{Vitter} vorgestellten
+Die Menge $S_t$ kann aus der Menge aller Dokumente, deren 
+Knoten beschriftet sind, mithilfe des in \cite{Vitter} vorgestellten
 Algorithmus bestimmt werden.

+ 25 - 0
documents/DYCOS/schwaechenPaper.tex

@@ -0,0 +1,25 @@
+\subsection{Schwächen des Papers}
+In \cite{aggarwal2011} wurde eine experimentelle Analyse mithilfe 
+des DBLP-Datensatzes\footnote{http://dblp.uni-trier.de/} und des
+CORA-Datensatzes\footnote{\href{http://people.cs.umass.edu/~mccallum/data/cora-classify.tar.gz}{http://people.cs.umass.edu/~mccallum/data/cora-classify.tar.gz}} durchgeführt.
+Die Ergebnisse dieser Analyse können aus folgenden Gründen
+nicht überprüft werden:
+\begin{itemize}
+    \item Der Parameter $a \in \mathbb{N}$, der die Anzahl der ausgehenden Kanten
+          aller Wortknoten beschränkt, wird erst mit der Experimentellen
+          Analyse auf S.~362 eingeführt.
+          Es ist nicht klar, wie entschieden wird welche Kanten
+          gespeichert werden und welche nicht.
+    \item Für die Analyse der CORA-Datensatzes analysiert.
+          Dieser beinhaltet Forschungsarbeiten, wobei die 
+          Forschungsgebiete die in einen Baum mit 73 Blättern 
+          eingeordnet wurden. Aus diesen 73 Blättern wurden 5 Klassen
+          extrahiert und der Graph, der keine Zeitpunkte beinhaltet,
+          künstlich in 10 Graphen mit Zeitpunkten unterteilt. Wie
+          jedoch diese Unterteilung genau durchgeführt wurde kann nicht
+          nachvollzogen werden.
+    \item Der auf S. 360 in \enquote{Algorithm 1} vorgestellte
+          Pseudocode soll den DYCOS-Algorithmus darstellen. Allerdings
+          werden die bereits klassifizierten Knoten $\T_t$ neu klassifiziert
+          und mit $\theta$ die Klassifikationsgüte gemessen.
+\end{itemize}