\subsection{Überblick}
\begin{frame}{Überblick}
    \begin{itemize}
        \item Graph ist gegeben
        \item Knoten sind teilweise beschriftet
        \item Fehlende Beschriftungen sollen berechnet werden
    \end{itemize}

    \uncover<2>{
    \textbf{Idee}: Homophilie nutzen\\
    Nahe Knoten sind ähnlich\\
    $\Rightarrow$ Random Walks zur Klassifizierung nutzen
    }
\end{frame}

\pgfdeclarelayer{background}
\pgfsetlayers{background,main}

\tikzstyle{vertex}=[circle,fill=black!25,minimum size=20pt,inner sep=0pt]
\tikzstyle{selected vertex} = [vertex, fill=red!24]
\tikzstyle{blue vertex} = [vertex, fill=blue!24]
\tikzstyle{edge} = [draw,thick,-]
\tikzstyle{weight} = [font=\small]
\tikzstyle{selected edge} = [draw,line width=5pt,-,red!50]
\tikzstyle{ignored edge} = [draw,line width=5pt,-,black!20]

\begin{frame}{Knotenklassifizierung mit Random Walks}
    \begin{figure}
        \begin{tikzpicture}[->,scale=1.8, auto,swap]
            % Draw the vertices. First you define a list.
            \foreach \pos/\name/\ltext in {{(0,0)/a/}, {(0,2)/b/b}, {(1,2)/c/},
                                    {(1,0)/d/}, {(2,1)/e/e}, {(3,1)/f/b}, 
                                    {(4,2)/g/a}, {(5,2)/h/a}, {(4,0)/i/a},
                                    {(5,0)/j/}}
                \node[draw,circle,fill=white] (\name) at \pos {$\ltext$};

            \node[draw,circle,red,fill=red] (e) at (2,1) {$e$};

            % Connect vertices with edges and draw weights
            \foreach \source/ \dest /\pos in {a/b/, b/c/, c/d/, d/a/,
                                        c/e/bend left, d/e/, e/c/,
                                        e/f/, f/g/, f/i/,
                                        g/f/bend right, i/f/bend left,
                                        g/h/, h/j/, j/i/, i/g/}
                \path (\source) edge [\pos] node {} (\dest);

            \foreach \fr / \number in {1/,
                2/b=1,
                3/b=1\, a=1,
                4/b=1\, a=2,
                5/b=2\, a=2,
                6/b=2\, a=3,
                7/b=2\, a=4,
                13/b=3\, a=4
                }
                \node<\fr->[fill=white] (Tlabel) at (2,0) {$\number$};

            % Start animating the edge selection. 
            % For convenience we use a background layer to 
            % highlight edges. This way we don't have to worry about 
            % the highlighting covering weight labels. 
            \begin{pgfonlayer}{background}
                \foreach \source / \dest / \fr / \colorf /\pos in {e/f/2/red/,f/g/3/red/,g/h/4/red/, e/f/5/blue/, f/i/6/blue/, i/g/7/blue/,e/c/8/green/,c/d/9/green/, d/a/10/green/,e/c/11/yellow/,c/e/12/yellow/bend left,e/f/13/yellow/}
                    \path<\fr->[selected edge, \colorf!20] (\source.center) edge 
                                        [\pos] node {} (\dest.center);
            \end{pgfonlayer}
        \end{tikzpicture}
    \end{figure}

    Klassifizieren des roten Knotens:
    \begin{itemize}
        \item Zählen von Knotenbeschriftungen in Random Walks
        \item 4 Random Walks, beginnend bei Rot
        \item 3 Sprünge pro Random Walk
        \item<14> $4 \cdot a$, $3 \cdot b \Rightarrow$ Rot mit $a$ klassifizieren
    \end{itemize}
\end{frame}

\begin{frame}{Wortknoten}
    \begin{itemize}
        \item Bisher wurden keine Texte genutzt
        \item Idee: Graph erweitern
        \begin{itemize}
            \item Texte als Wortmengen
            \item Strukturknoten verweisen auf Wortknoten
            \item vice versa
        \end{itemize}
    \end{itemize}
\end{frame}

\framedgraphic{}{../images/wortknoten-visualisierung.pdf}
\framedgraphic{Erweiterter, semi-bipartiter Graph}{../images/graph-content-and-structure.pdf}
