From 29eefafba31abcef3af2f09d82f5cbf3519dcd5d Mon Sep 17 00:00:00 2001
From: Paweł Dybiec <pawel.to.malpa@gmail.com>
Date: Mon, 12 Feb 2018 09:00:38 +0100
Subject: wiecej tekstu, blisko final

---
 Chapters/chapter3.tex | 90 +++++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 77 insertions(+), 13 deletions(-)

(limited to 'Chapters/chapter3.tex')

diff --git a/Chapters/chapter3.tex b/Chapters/chapter3.tex
index 000eec0..e18e293 100644
--- a/Chapters/chapter3.tex
+++ b/Chapters/chapter3.tex
@@ -1,22 +1,86 @@
-\chapter{Sieć pod Łazik}
-TODO:  obrazki aktywacji dla przeuczonej sieci
+\chapter{Wyniki sieci}
+Wytrenowana sieć potrafi przejechać zarówno cały tor na symulatorze jak i
+podziemny garaż instytutu. Na dodatek sieć trenowana pod symulator uczyła się,
+tylko jeździć przeciwnie do ruchu wskazówek zegara, a po ustawieniu modelu w przeciwnym
+kierunku potrafi przejechać cały tor bezproblemowo.
 
-Po co wgl był ten symulator? - jakby siec nie działała na symulatorze 
-to raczej nie zadziała na prawdziwych danych
+\section{Na co zwraca uwagę}
+Aktywność sieci dla obrazków została wygenerowana za pomocą metody
+Integrated Gradients\footnote{\href{https://arxiv.org/abs/1703.01365}{https://arxiv.org/abs/1703.01365}}.
 
-\section{Co trzeba było dodać/zmienić}
-Obsługa rosa i rosbagów
+Co było oczywiste w przypadku symulatora,sieć zwraca głównie uwagę na miejsca,
+gdzie pojawiają się granice drogi\ref{sim_act}. Co ciekawe reaguje też na ścianę
+tworzącą horyzont, ponieważ zmienia wygląd w zależności od odległości i może
+pomóc w orientacji (na tej trasie).
+\begin{figure}
+  \centering
+  \fbox{
+  \scalebox{0.5}{\includegraphics{img/sim_img.png}}
+  }
+  \label{sim_img}
+  \caption{Obraz z symulatora}
+\end{figure}
+\begin{figure}
+  \centering
+  \fbox{
+  \scalebox{0.5}{\includegraphics{img/sim_img_act.png}}
+  }
+  \label{sim_act}
+  \caption{Na co sieć patrzy, symulator}
+\end{figure}
+\begin{figure}
+  \centering
+  \fbox{
+  \scalebox{0.5}{\includegraphics{img/real_img.png}}
+  }
+  \label{real_img}
+  \caption{Obraz z nagrania}
+\end{figure}
+\begin{figure}
+  \centering
+  \fbox{
+    \scalebox{0.5}{\includegraphics{img/real_img_act.png}}
+  }
+  \label{real_act}
+  \caption{Na co sieć patrzy, nagranie}
+\end{figure}
 
-\section{Problemy}
-Przetestowanie jest bardziej ryzykowne
+Z kolei dla łazika intensywność w najbardziej aktywnym miejscu jest dużo mniejsza,
+co oznacza że nie sugeruje się tylko jednym miejscem. Ale mimo tego najbardziej 
+zwraca uwagę na kratkę na podłodze, która mogła by wystarczyć do nawigacji.
 
-Pominięcie sporej ilości nagrań i mierzenie MSE na nich
+\section{W porównaniu do nagrania}
+Na wykresie \ref{plot_ang} widać że sieć (pomarańczowy kolor), mniej gwałtownie 
+zmienia szybkość obrotu niż kierowca (kolor niebieski). Ale w podobnych momentach
+zauważa, że należy skręcić.
+\begin{figure}
+  \centering
+  \fbox{
+    \scalebox{0.5}{\includegraphics{img/real_data_ang.png}}
+  }
+  \label{plot_ang}
+  \caption{Prędkość obrotowa: sieć vs kierowca}
+\end{figure}
 
-\section{Dane}
-Jak długie przejazdy, i ile ich: 180GB z jednego dnia, łącznie 240GB
+\section{Wpływ architektury}
+W przypadku sieci pod symulator, usunięcie niektórych warstw konwolucyjnych
+pozwalało modelowi utrzymać się na torze, a taka sama zredukowana architektura 
+nie radziła sobie dobrze w przypadku nagrań z prawdziwego łazika. Natomiast
+usunięcie nieliniowości z warstw konwolucyjnych tak okaleczyła zdolności sieci,
+że nie potrafiła się utrzymać na wirtualnym torze.
 
-Mamy bufor głębokości dodatkowo
+Z kolei usunięcie dropoutu, bardzo szybko powodowało overfitting i radziła sobie
+dobrze tylko na danych uczących. Z kolei dodanie warstw liniowych na końcu nie 
+poprawiało, ani nie pogorszało zbytnio wydajności sieci, przynajmniej dla
+nagrań z symulatora. Widocznie większość interesujących cech już jest znaleziona
+w ramach konwolucji, i dla tak prostych danych nie pomaga zwiększenie modelu.
 
-Skupialiśmy się na tym żeby widział kratkę (kąty proste)
+Co ciekawe w przypadku wytrenowanego już modelu do symulatora zredukowanie 
+rozdzielczości obrazów dziesięciokrotnie w każdym wymiarze(z rozdzielczości 
+320x160 do 32x16),
+i zwykłe przeskalowanie w górę przed zewaluowaniem wystarczy żeby urzymać się 
+na torze.
 
+Na dodatek sieć uczona na obrazie kolorowym bezproblemowo działa, gdy
+zredukuje się obraz do skali szarości a następnie powtórzy kanał trzykrotnie.
 
-- 
cgit 1.4.1

