2
0
Fork 0
mirror of https://github.com/MartinThoma/LaTeX-examples.git synced 2025-04-24 22:08:04 +02:00

Tippfehler verbessert

This commit is contained in:
Martin Thoma 2014-01-12 18:14:47 +01:00
parent e0421134c2
commit 3973b07951
10 changed files with 21 additions and 44 deletions

View file

@ -1,11 +0,0 @@
Der in dieser Ausarbeitung vorgestellte DYCOS-Algorithmus wurde 2011 von
Charu~C. Aggarwal und Nan~Li in \cite{aggarwal2011} vorgestellt.
Es gibt jedoch viele Klassifizierungsalgorithmen, die ähnliche Ideen
nutzen. Einige dieser Algorithmen werden im Folgenden kurz vorgestellt
und Probleme, die der DYCOS-Algorithmus behebt, erläutert.
\cite{DBLP:conf/kdd/BhagatCR07} nutzt nur die Struktur des Graphen
zur Klassifizierung.
Der MUCCA-Algorithmus aus \cite{zappella} sei der erste. Dieser
arbeitet auf gewichteten Graphen, im Gegensatz zu DYCOS.

View file

@ -23,4 +23,4 @@ DYCOS beschränkt sich bei inhaltlichen Mehrfachsprüngen
auf die Top-$q$-Wortknoten, also die $q$ ähnlichsten Knoten
gemessen mit der Aggregatanalyse, allerdings wurde bisher noch nicht
untersucht, wie der Einfluss von $q \in \mathbb{N}$ auf die
Klassifkationsgüte ist.
Klassifikationsgüte ist.

View file

@ -22,7 +22,7 @@ genannt.
Ein Strukturknoten $v$ wird genau dann mit einem Wortknoten $w \in W_t$
verbunden, wenn $w$ in einem Text von $v$ vorkommt.
Der DYCOS-Algorithmus betrachtet also die Texte, die einem Knoten
zugeornet sind, als eine Multimenge von Wörtern. Das heißt, zum einen
zugeordnet sind, als eine Multimenge von Wörtern. Das heißt, zum einen
wird nicht auf die Reihenfolge der Wörter geachtet, zum anderen wird
bei Texten eines Knotens nicht zwischen verschiedenen
Texten unterschieden. Jedoch wird die Anzahl der Vorkommen
@ -64,9 +64,9 @@ springt über einen Wortknoten und ist ein Pfad der Länge~2.
Ob in einem Sprung der Random Walks ein struktureller Sprung oder
ein inhaltlicher Mehrfachsprung gemacht wird, wird jedes mal zufällig
neu entschiden. Dafür wird der Parameter $0 \leq p_S \leq 1$ für den Algorithmus
neu entschieden. Dafür wird der Parameter $0 \leq p_S \leq 1$ für den Algorithmus
gewählt. Mit einer Wahrscheinlichkeit von $p_S$ wird eine struktureller
Sprung durchgefürt und mit einer Wahrscheinlichkeit
Sprung durchgeführt und mit einer Wahrscheinlichkeit
von $(1-p_S)$ ein modifizierter inhaltlicher Mehrfachsprung, wie er in
\cref{sec:sprungtypen} erklärt wird, gemacht. Dieser
Parameter gibt an, wie wichtig die Struktur des Graphen im Verhältnis
@ -137,7 +137,7 @@ verwaltet der DYCOS-Algorithmus zwei weitere Datenstrukturen:
\item Für jedes Wort des Vokabulars $W_t$ wird eine Liste von
Knoten verwaltet, in deren Texten das Wort vorkommt.
\item An einigen Stellen macht ein assoziatives Array, auch
\enquote{dictionary} oder \enquote{map} genannt, sinn.
\enquote{dictionary} oder \enquote{map} genannt, Sinn.
Zustätzlich ist es nützlich, wenn diese Datenstruktur für
unbekannte Schlüssel keinen Fehler ausgibt, sondern für diese
Schlüssel den Wert 0 annimmt. Eine solche Datenstruktur

Binary file not shown.

View file

@ -9,7 +9,7 @@ Häufig sind Labels nur teilweise vorhanden und es ist wünschenswert die
fehlenden Labels zu ergänzen.
\subsection{Problemstellung}
Gegeben ist ein Graph, der teilweise gelabelt ist. Zustäzlich stehen
Gegeben ist ein Graph, der teilweise gelabelt ist. Zusätzlich stehen
zu einer Teilmenge der Knoten Texte bereit. Gesucht sind nun Labels
für alle Knoten, die bisher noch nicht gelabelt sind.\\

View file

@ -1,12 +0,0 @@
\subsection{DBLP}
Im Folgenden wird die in \cite{aggarwal2011} durchgeführte
experimentelle Analyse des DYCOS-Algorithmus anhand des DBLP-Datensatzes
(\underline{d}ata\underline{b}ase systems and \underline{l}ogic \underline{p}rogramming)
der Universität Trier nachfolzogen. Dieser Datensatz beinhaltet
bibliographische Daten von Informatik-Publikationen. Der Datensatz
wird unter \href{http://dblp.uni-trier.de/xml/}{dblp.uni-trier.de/xml}
zur Verfügung gestellt. Die folgenden Informationen beziehen sich
auf den Datensatz vom 28.~Dezember~2013.
http://dumps.wikimedia.org/enwiki/20131202/
https://de.wikipedia.org/wiki/Hilfe:Download

View file

@ -13,4 +13,4 @@ ebook:
ebook-convert $(DOKUMENT).html $(DOKUMENT).epub --language de --no-default-epub-cover
clean:
rm -rf $(TARGET) *.class *.html *.log *.aux *.out *.thm *.idx *.toc *.ind *.ilg *.glg *.glo *.gls *.ist *.xdy *.bbl *.blg
rm -rf $(TARGET) *.class *.html *.log *.aux *.out *.thm *.idx *.toc *.ind *.ilg *.glg *.glo *.gls *.ist *.xdy *.bbl *.blg *.bak

View file

@ -14,7 +14,7 @@ wäre noch die Frage zu klären, mit wie vielen Labels der betrachtete
Knoten gelabelt werden soll.
Jedoch ist z.~B. bei Wikipedia-Artikeln auf den Knoten eine
Hirarchie definiert. So ist die Kategorie \enquote{Klassifikationsverfahren}
Hierarchie definiert. So ist die Kategorie \enquote{Klassifikationsverfahren}
eine Unterkategorie von \enquote{Klassifikation}. Bei dem Kategorisieren
von Artikeln sind möglichst spezifische Kategorien vorzuziehen, also
kann man nicht einfach bei dem Auftreten der Kategorie \enquote{Klassifikationsverfahren}
@ -65,7 +65,7 @@ Zeitpunkt $t=2$ zum Zeitpunkt $t=3$ auf den Knoten $v_2$ anwenden, so
würde eine $50\%$-Wahrscheinlichkeit bestehen, dass dieser mit $B$
gelabelt wird. Aber in diesem Beispiel wurde der Knoten schon
zum Zeitpunkt $t=2$ gelabelt. Obwohl es in diesem kleinem Beispiel
noch keine Rolle spielt, wird das Problem klar, wennn man weitere
noch keine Rolle spielt, wird das Problem klar, wenn man weitere
Knoten einfügt:
Wird zum Zeitpunkt $t=4$ ein ungelabelter Knoten $v_4$ und die Kanten
@ -73,7 +73,7 @@ $(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
gelabelt, so ist die Wahrscheinlichkeit für $A$ als Label bei nur $50\%$.
Bei dem DYCOS-Algorithmus findet also eine Überanpassung and vergangene
Bei dem DYCOS-Algorithmus findet also eine Überanpassung an vergangene
Labels statt.
Das Reklassifizieren von Knoten könnte eine mögliche Lösung für dieses
@ -85,7 +85,7 @@ abgelaufen, wird der DYCOS-Algorithmus erneut auf den Knoten angewendet.
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 Ergebnise dieser Analyse können aus folgenden Gründen
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
@ -104,5 +104,5 @@ nicht überprüft 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 Klassifkationsgüte gemessen.
und mit $\theta$ die Klassifikationsgüte gemessen.
\end{itemize}

View file

@ -22,7 +22,7 @@ Bei inhaltlichen Mehrfachsprüngen ist jedoch nicht sinnvoll so direkt
nach der Definition vorzugehen, also
direkt von einem strukturellem Knoten
$v \in V_t$ zu einem mit $v$ verbundenen Wortknoten $w \in W_t$ zu springen
und von diesem wieder zu einem verbundenem strutkurellem Knoten
und von diesem wieder zu einem verbundenem strukturellem Knoten
$v' \in V_t$. Würde man dies machen, wäre zu befürchten, dass
aufgrund von Homonymen die Qualität der Klassifizierung verringert
wird. So hat \enquote{Brücke} im Deutschen viele Bedeutungen.
@ -43,7 +43,7 @@ CORA-Datensatz wurde in \cite[S. 364]{aggarwal2011} $q=10$ gewählt.} \label{lis
\end{enumerate}
Konkret könnte also ein Inhaltlicher Mehrfachsprung sowie wie in
\cref{alg:DYCOS-content-multihop} beschrieben umgesetz werden.
\cref{alg:DYCOS-content-multihop} beschrieben umgesetzt werden.
\begin{algorithm}
\caption{Inhaltlicher Mehrfachsprung}
@ -64,7 +64,7 @@ Konkret könnte also ein Inhaltlicher Mehrfachsprung sowie wie in
\State \textit{//Elemente aus $M_H$ zugreifen kann. Dies muss bei der konkreten Wahl}
\State \textit{//der Datenstruktur berücksichtigt werden.}
\State $M_H \gets \Call{max}{reachableNodes, q}$ \Comment{Also: $|M_H| = q$, falls $|reachableNodes|\geq q$}
\State \textit{//Generate dictionary with relative frequencies}
\State \textit{//Dictionary mit relativen Häufigkeiten erzeugen}
\State $s \gets 0$
\ForAll{Knoten $x$ in $M_H$}
\State $s \gets s + reachableNodes[x]$

View file

@ -1,14 +1,14 @@
\subsection{Vokabularbestimmung}\label{sec:vokabularbestimmung}
Da die größe des Vokabulars die Datenmenge signifikant beeinflusst,
Da die Größe des Vokabulars die Datenmenge signifikant beeinflusst,
liegt es in unserem Interesse so wenig Wörter wie möglich ins
Vokabular aufzunehmen. Insbesondere sind Wörter nicht von Interesse,
die in fast allen Texten vorkommen, wie im Deutschen z.~B.
\enquote{und}, \enquote{mit} und die Pronomen. Es ist wünschenswert
Wörter zu wählen, die die Texte möglichst start voneinander Unterscheiden.
Wörter zu wählen, die die Texte möglichst stark voneinander Unterscheiden.
Der DYCOS-Algorithmus wählt die Top-$m$ dieser Wörter als Vokabular,
wobei $m \in \mathbb{N}$ eine Festzulegende Konstante ist. In \cite[S. 365]{aggarwal2011}
wird der Einfluss von $m \in \Set{5,10, 15,20}$ auf die Klassifikationsgüte
untersucht und festegestellt, dass die Klassifikationsgüte mit größerem
untersucht und festgestellt, dass die Klassifikationsgüte mit größerem
$m$ sinkt, sie also für $m=5$ für den DBLP-Datensatz am höchsten ist.
Für den CORA-Datensatz wurde mit $m \in \set{3,4,5,6}$ getestet und
kein signifikanter Unterschied festgestellt.
@ -17,7 +17,7 @@ Nun kann man manuell eine Liste von zu beachtenden Wörtern erstellen
oder mit Hilfe des Gini-Koeffizienten automatisch ein Vokabular erstellen.
Der Gini-Koeffizient ist ein statistisches Maß, das die Ungleichverteilung
bewertet. Er ist immer im Intervall $[0,1]$, wobei $0$ einer
Gleichverteilung entspricht und $1$ der größt möglichen Ungleichverteilung.
Gleichverteilung entspricht und $1$ der größtmöglichen Ungleichverteilung.
Sei nun $n_i(w)$ die Häufigkeit des Wortes $w$ in allen Texten mit
dem $i$-ten Label.
@ -47,7 +47,7 @@ von Mengen $M,N$ in $\mathcal{O}(\min{|M|, |N|})$ sein muss.
\State $S_t \gets \Call{Sample}{V_{L,t}}$ \Comment{Wähle eine Teilmenge $S_t \subseteq V_{L,t}$ aus}
\State $\M_t \gets \bigcup_{v \in S_t} \Call{getTextAsSet}{v}$ \Comment{Menge aller Wörter}
\State $cLabelWords \gets (|\L_t|+1) \times |\M_t|$-Array, mit 0en initialisert\\
\State $cLabelWords \gets (|\L_t|+1) \times |\M_t|$-Array, mit 0en initialisiert\\
\ForAll{$v \in V_{L,t}$} \Comment{Gehe jeden Text Wort für Wort durch}
\State $i \gets \Call{getLabel}{v}$
@ -73,5 +73,5 @@ von Mengen $M,N$ in $\mathcal{O}(\min{|M|, |N|})$ sein muss.
\end{algorithm}
Die Menge $S_t$ kann durch Aus der Menge aller Dokumenten, deren
Knoten gelabelt sind, mithile des in \cite{Vitter} vorgestellten
Knoten gelabelt sind, mithilfe des in \cite{Vitter} vorgestellten
Algorithmus bestimmt werden.