informationsbasiertes Lernen hinzugefügt

This commit is contained in:
paul-loedige 2021-02-05 11:55:12 +01:00
parent 631f74c840
commit f6acce2cc4
7 changed files with 136 additions and 0 deletions

View File

@ -26,4 +26,5 @@
\acro{FPC}{(Bocklisch's) Fuzzy Pattern Classifier}
\acro{MFPC}{Modified-Fuzzy-Pattern-Classifier}
\acro{FPGA}{Field Programmable Gate Array}
\acro{ID3}{Iterative Dichotomizer 3}
\end{acronym}

View File

@ -1,4 +1,21 @@
# Zusammenfassung Künstliche Intelligenz
Dieses Repo beinhaltet die $\LaTeX$ Informationen für die Zusammenfassung im Fach Künstliche Intelligenz.
## Änderungen für die Zusammenfassung
- [ ] Lineare Programmierung hinzufügen
- [ ] Automated Machine Learning
- [ ] CRISP
- [ ] CRISP-DM
- [ ] Informationsbasiertes Lernen
- [ ] Entscheidungsbaum
- [ ] Entropie
- [ ] Kullback-Leibler-Divergenz
- [ ] ID3 Algorithmus
- [ ] Ähnlichkeitsbasiertes Lernen
- [ ] K-Nächste-Nachbarn
- [ ] Normalisierung
- [ ] Fehlerbasiertes Lernen
- [ ] Backpropagation
## Hinweise
Requires you to enable [--shell escape](https://tex.stackexchange.com/questions/516604/how-to-enable-shell-escape-or-write18-visual-studio-code-latex-workshop)

View File

@ -0,0 +1,117 @@
\chapter{Informationsbasiertes Lernen}
\label{information-based learning}
Beim \say{informationsbasierten} Lernen geht es im Kern darum die informativsten Features auszuwählen.
Die informativsten Features sind die, deren Werte die Instanzen in möglichst homogene (gleichgroße) Teilmengen teilen.
\paragraph{Beispiel: Guess Who}\mbox{}\\
\includegraphics[width = .6\textwidth]{guess who.png}
\includegraphics[width = .4\textwidth]{guess who2.png}\\
In den ersten 2 Beispielen werden schlechte Features gewählt.
Die durchschnittliche Anzahl an nötigen Fragen ist $\frac{1+2+3+3}{4}=2,25$.
Das 3.Beispiel benutzt die besten Features, da die Teilmengen hierbei maximal homogen sind.
Die durchschnittliche Anzahl an nötigen Fragen ist $\frac{2+2+2+2}{4}=2$.
\section{Entropie}
\label{entropie}
Die Entropie liefert eine numerische Metrik für die Reinheit einer Menge.
Sie beschreibt die Unsicherheit, die mit dem Raten eines Ergebnisses verbunden ist.
Hierbei gilt:
\begin{itemize}
\item Hohe Wahrscheinlichkeit $\rightarrow$ niedrige Entropie
\item Geringe Wahrscheinlichkeit $\rightarrow$ hohe Entropie
\end{itemize}
Die Formel für die Entropie lautet:
\Large
$$H(y)=-\sum^l_{i=1}\left(P(y=i)\cdot\log_2\left(P(y=1)\right)\right)$$
\normalsize
\subsection{Beispiele}
\label{entropie: beispiele}
\includegraphics[width = \textwidth]{entropie_beispiele.png}
\section{Informationsgewinn}
\label{information-based learning: informationsgewinn}
Der Informationsgewinn, den man durch ein bestimmtes Feature erreicht, ist gleichzusetzen mit der Reduktion der Entropie(\ref{entropie}) durch dieses Feature.
Man bezeichnet dies als \say{Kullback-Leibler-Divergenz}.
Der Informationsgewinn $IG$ lässt sich berechnen durch:
\Large
$$IG(d,D)=H(y,D)-rest(d,D)$$
$$H(y,D)=-\sum^l_{i=1}\left(P(y=i)\cdot\log_2\left(P(y=1)\right)\right)$$
$$rest(d,D)=\sum_{l\in Level(d)} \underbrace{\frac{|D_{d=l}|}{|D|}}_{\text{Gewichtung}}\cdot\underbrace{H(y,D_{d=l})}_{\text{Entropie von Partition $D_{d=l}$}}$$
\normalsize
\subsection{Beispiel: Spamfilter}
\label{informationsgewinn: spamfilter}
\begin{tabular}{ccccc}
\hline
ID &SUSPICIOUS WORDS & UNKNOWN SENDER & CONTAINS IMAGE & CLASS\\
\hline
376 & true & false & true & spam\\
489 & true & true & false & spam\\
541 & true & true & false & spam\\
693 & false & true & true & ham\\
782 & false & false & false & ham\\
976 & false & false & false & ham\\
\hline
\end{tabular}
\begin{align*}
H(t,D) =& -\sum_{l\in\{\text{'spam', 'ham'}\}}\left(P(t=l)\cdot \log_2\left(P(t=l)\right)\right)\\
=& -((P(t=\text{'spam'})\cdot\log_2(P(t=\text{'spam'})))\\
&+ (P(t=\text{'ham'})\cdot\log_2(P(t=\text{'ham'}))))\\
=& -\left(\left(\frac{3}{6}\cdot\log_2\left(\frac{3}{6}\right)\right) + ¸\left(\frac{3}{6}\cdot\log_2\left(\frac{3}{6}\right)\right)\right)\\
=& 1 [\text{bit}]
\end{align*}
\begin{align*}
rest(\text{SW},D)&=\left(\frac{|D_{\text{SW}=T}|}{|D|}\cdot H(t,D_{\text{SW}=T})\right) + \left(\frac{|D_{\text{SW}=F|}}{|D|}\cdot H(t,D_{\text{SW}=F})\right)\\
&=\left(\frac{3}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&+\left(\frac{3}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&=\left(\frac{3}{6}\cdot\left(-\left(\left(\frac{3}{3}\cdot\log_2\left(\frac{3}{3}\right)\right)+\left(\frac{0}{3}\cdot\log_2\left(\frac{0}{3}\right)\right)\right)\right)\right)\\
&+\left(\frac{3}{6}\cdot\left(-\left(\left(\frac{0}{3}\cdot\log_2\left(\frac{0}{3}\right)\right)+\left(\frac{3}{3}\cdot\log_2\left(\frac{3}{3}\right)\right)\right)\right)\right)\\
&= 0 [\text{bit}]
\end{align*}
\begin{align*}
rest(\text{US},D)&=\left(\frac{|D_{\text{US}=T}|}{|D|}\cdot H(t,D_{\text{US}=T})\right) + \left(\frac{|D_{\text{US}=F|}}{|D|}\cdot H(t,D_{\text{US}=F})\right)\\
&=\left(\frac{3}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&+\left(\frac{3}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&=\left(\frac{3}{6}\cdot\left(-\left(\left(\frac{2}{3}\cdot\log_2\left(\frac{2}{3}\right)\right)+\left(\frac{1}{3}\cdot\log_2\left(\frac{1}{3}\right)\right)\right)\right)\right)\\
&+\left(\frac{3}{6}\cdot\left(-\left(\left(\frac{1}{3}\cdot\log_2\left(\frac{1}{3}\right)\right)+\left(\frac{2}{3}\cdot\log_2\left(\frac{2}{3}\right)\right)\right)\right)\right)\\
&= 0.9183 [\text{bit}]
\end{align*}
\begin{align*}
rest(\text{CI},D)&=\left(\frac{|D_{\text{CI}=T}|}{|D|}\cdot H(t,D_{\text{CI}=T})\right) + \left(\frac{|D_{\text{CI}=F|}}{|D|}\cdot H(t,D_{\text{CI}=F})\right)\\
&=\left(\frac{2}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&+\left(\frac{4}{6}\cdot\left(-\sum_{l\in\{\text{'spam', 'ham'}\}} P(t=l)\cdot\log_2(P(t=l))\right)\right)\\
&=\left(\frac{2}{6}\cdot\left(-\left(\left(\frac{1}{2}\cdot\log_2\left(\frac{1}{2}\right)\right)+\left(\frac{1}{2}\cdot\log_2\left(\frac{1}{2}\right)\right)\right)\right)\right)\\
&+\left(\frac{4}{6}\cdot\left(-\left(\left(\frac{2}{4}\cdot\log_2\left(\frac{2}{4}\right)\right)+\left(\frac{2}{4}\cdot\log_2\left(\frac{2}{4}\right)\right)\right)\right)\right)\\
&= 1 [\text{bit}]
\end{align*}
\normalsize
Folglich ergeben sich die folgenden Informationsgewinne:
\begin{align*}
IG(\text{SUSPICIOUS WORDS},D)&=H(CLASS,D)-rest(\text{SW},D) \\
&=1-0=1[\text{bit}]\\\\
IG(\text{UNKNOWN SENDER},D)&=H(CLASS,D)-rest(\text{US},D) \\
&=1-0.9183=0.0817[\text{bit}]\\\\
IG(\text{CONTAINS IMAGES},D)&=H(CLASS,D)-rest(\text{CI},D) \\
&=1-1=0[\text{bit}]
\end{align*}
\section{\acf{ID3} Algorithmus}
\label{id3 algorithmus}
Der \ac{ID3} Algorithmus versucht den Flachsten Baum, der mit den Daten konsistent ist, zu erstellen.
\paragraph{Algorithmus}
\begin{enumerate}
\item Wähle das beste Merkmal für die Teilung mit Hilfe des Informationsgewinns aus.
\item Wurzelknoten wird erstellt, der mit dem gewählten Merkmal teilt.
\item Trainingsdaten werden anhand des gewählten Merkmals aufgeteilt.
\item Für jede Teilmenge wird ein Zweig erstellt.
\item Der Prozess wird für jeden der Zweige mit dem ausgewählten Teil der Daten wiederholt.
\end{enumerate}
\paragraph{Abbruchbedingungen}
\begin{enumerate}
\item Alle Instanzen im (Teil)Datensatz haben die gleiche Klassifikation (Zielmerkmal y). Erstelle einen Blattknoten mit dieser Klassifikation als Label.
\item Menge der zu testenden Merkmal ist leer. Erstelle einen Blattknoten mit der Mehrheitsklasse des Teildatensatzes als Klassifikation.
\item Der Teildatensatz ist leer. Erstelle einen Blattknoten mit der Mehrheitsklasse des Teildatensatzes des Elternknotens.
\end{enumerate}

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

BIN
images/guess who.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

BIN
images/guess who2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

View File

@ -2,5 +2,6 @@
\label{ml}
\input{chapters/Maschinelles Lernen/Einführung.tex}
\input{chapters/Maschinelles Lernen/Informationsbasiertes Lernen.tex}
\input{chapters/Maschinelles Lernen/Lernbarkeit.tex}
\input{chapters/Maschinelles Lernen/Reinforcement Learning.tex}