216
body_expose.tex
216
body_expose.tex
@ -41,7 +41,7 @@ of technology to allow adoption in mass. Obviously this setting
|
|||||||
poses the question, how such an endeavour can be achieved.
|
poses the question, how such an endeavour can be achieved.
|
||||||
|
|
||||||
For neural networks there are fundamentally two type of tasks:
|
For neural networks there are fundamentally two type of tasks:
|
||||||
regression, and classification. Regression deals with any case
|
regression and classification. Regression deals with any case
|
||||||
where the goal for the network is to come close to an ideal
|
where the goal for the network is to come close to an ideal
|
||||||
function that connects all data points. Classification, however,
|
function that connects all data points. Classification, however,
|
||||||
describes tasks where the network is supposed to identify the
|
describes tasks where the network is supposed to identify the
|
||||||
@ -71,7 +71,7 @@ This goes back to the need for automatic explanation. Such a system
|
|||||||
should by itself recognize that the given object is unknown and
|
should by itself recognize that the given object is unknown and
|
||||||
hence mark any classification result of the network as meaningless.
|
hence mark any classification result of the network as meaningless.
|
||||||
Technically there are two slightly different things that deal
|
Technically there are two slightly different things that deal
|
||||||
with this type of task: model uncertainty, and novelty detection.
|
with this type of task: model uncertainty and novelty detection.
|
||||||
|
|
||||||
Model uncertainty can be measured with dropout sampling.
|
Model uncertainty can be measured with dropout sampling.
|
||||||
Dropout is usually used only during training but
|
Dropout is usually used only during training but
|
||||||
@ -190,4 +190,214 @@ but not critical for successful completion of the thesis.
|
|||||||
|
|
||||||
\section{Timetable}
|
\section{Timetable}
|
||||||
|
|
||||||
% TODO
|
This timetable is structured by milestones that I want to
|
||||||
|
achieve. Every milestone has the related tasks grouped beneath it.
|
||||||
|
The scheduling is done with respect to my full personal calendar
|
||||||
|
and will only account Monday through Friday at most. Weekends will
|
||||||
|
not be scheduled work time for the thesis. This allows for
|
||||||
|
some additional unreliable emergency buffer in the end if things do
|
||||||
|
not proceed as planned. Furthermore I will only be able to
|
||||||
|
regularly plan the time between 11 am and 5 pm for working on the
|
||||||
|
thesis as the evenings are mostly full and regardless of that
|
||||||
|
fact I do want to reserve free time.
|
||||||
|
|
||||||
|
\subsection*{Environment set up}
|
||||||
|
|
||||||
|
\textbf{Due date:} 20th March
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[Download SceneNet RGB-D to cvpc\{7,8\} computer]
|
||||||
|
Requires external resource.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\subsection*{Fine-tuned SSD on SceneNet RGB-D}
|
||||||
|
|
||||||
|
\textbf{Due date:} 5th April
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[Download pre-trained weights of SSD for MS COCO]
|
||||||
|
This is trivial. Takes not more than two hours.
|
||||||
|
\item[Modify SSD Keras implementation to work inside masterthesis package]
|
||||||
|
Should be possible to achieve within one day.
|
||||||
|
\item[Implement integration of SSD into masterthesis package]
|
||||||
|
Implementing the glue code between the git submodule and
|
||||||
|
my own code. Should be doable within one day.
|
||||||
|
\item[Group SceneNet RGB-D classes to MS COCO classes]
|
||||||
|
SceneNet contains more classes than COCO. Miller et al have
|
||||||
|
grouped, for example, various chair classes in SceneNet into
|
||||||
|
one chair class of COCO. This grouping involves researching
|
||||||
|
the 80 classes of COCO and finding all related SceneNet
|
||||||
|
classes and then writing a mapper between them.
|
||||||
|
|
||||||
|
All in all this could take up a full day and perhaps slip
|
||||||
|
into a second one.
|
||||||
|
\item[Implement variant of SSD with dropout layers (Bayesian SSD)]
|
||||||
|
This is a rather trivial task as it only involves adding two
|
||||||
|
Keras dropout layers into SSD. Can be done in one hour.
|
||||||
|
\item[Fine-tune vanilla SSD on SceneNet RGB-D]
|
||||||
|
Requires external resource and length of required training is
|
||||||
|
unknown. Due to two unknown factors (availability of resource,
|
||||||
|
and length of training) this task can be considered a project
|
||||||
|
risk.
|
||||||
|
\item[Fine-tune Bayesian SSD on SceneNet RGB-D]
|
||||||
|
Similar remarks like the previous task.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
The tasks prior to the training could be achievable by the 21st
|
||||||
|
March if work starts on the 18th. Buffer time will go to the 25th
|
||||||
|
of March. Training is scheduled to commence as early as possible
|
||||||
|
but no later than the 26th of March.
|
||||||
|
|
||||||
|
Since the SSD network is a proven one, I am confident that this
|
||||||
|
milestone can be reached and the time between 26th of March and
|
||||||
|
5th April should provide more than enough time for training.
|
||||||
|
Once training has started, I can work on tasks from other milestones
|
||||||
|
so that the training time is used as efficiently as possible.
|
||||||
|
|
||||||
|
\subsection*{Fine-tuned GPND on SceneNet RGB-D}
|
||||||
|
|
||||||
|
\textbf{Due date:} 12th April
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[Adapt GPND implementation for SceneNet RGB-D using MS COCO classes]
|
||||||
|
Requires research to figure out the exact architecture needed
|
||||||
|
for a different data set. The code is not well
|
||||||
|
documented and some logical variables like image size are
|
||||||
|
sometimes hard-coded, which makes this adaption difficult
|
||||||
|
and error-prone.
|
||||||
|
|
||||||
|
Furthermore, some trial-and-error regarding training successes
|
||||||
|
is likely needed, which makes this task a project risk.
|
||||||
|
If the needed architecture was known the time to implement
|
||||||
|
it would be at most one day. The uncertainty therefore
|
||||||
|
lies with the research part.
|
||||||
|
\item[Implement novelty score calculation for GPND]
|
||||||
|
There is an implementation for this in the original
|
||||||
|
author's implementation. It would have to be ported
|
||||||
|
to Tensorflow and integrated into the package structure.
|
||||||
|
Takes likely one day or two.
|
||||||
|
\item[Apply insights of GAN stability to GPND implementation]
|
||||||
|
The insights from the GAN stability\footnote{\url{https://avg.is.tuebingen.mpg.de/publications/meschedericml2018}} research should be applied to
|
||||||
|
my GPND implementation. Requires research what, if any,
|
||||||
|
insights can be used for this thesis. The research is
|
||||||
|
doable within one day and the application of it
|
||||||
|
within another.
|
||||||
|
\item[Train GPND on SceneNet RGB-D]
|
||||||
|
Requires external resource.
|
||||||
|
In contrast to the SSD network, there are no pre-trained
|
||||||
|
weights available for the GPND. Therefore it has to be
|
||||||
|
trained from scratch. Furthermore, it will have to be
|
||||||
|
trained for every class separately, which prolongs the
|
||||||
|
training even further. This task than be classified as
|
||||||
|
project risk.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
I will only be able to start working on these tasks on April 1st.
|
||||||
|
Assuming that the research in the first task goes well, I will
|
||||||
|
be able to finish the preparatory work on April 5th. Training
|
||||||
|
could start as early as April 5th. The seven days to the due date
|
||||||
|
April 12th are tight and maybe it takes longer but this is
|
||||||
|
the aggressive date I will work towards.
|
||||||
|
|
||||||
|
\subsection*{Networks evaluated}
|
||||||
|
|
||||||
|
\textbf{Due date:} 10th May
|
||||||
|
|
||||||
|
\begin{description}
|
||||||
|
\item[Implement evaluation pipeline for vanilla SSD]
|
||||||
|
Involves the implementation of the evaluation steps
|
||||||
|
according to the chosen metrics. Takes likely two days.
|
||||||
|
\item[Implement evaluation pipeline for Bayesian SSD]
|
||||||
|
Involves the implementation of the evaluation steps
|
||||||
|
for the Bayesian variant. As more is has to be done,
|
||||||
|
it will likely take three days.
|
||||||
|
\item[Implement evaluation pipeline for vanilla SSD with GPND for novelty score]
|
||||||
|
The implementation of this pipeline will take probably two
|
||||||
|
days.
|
||||||
|
\item[Run vanilla SSD on test data]
|
||||||
|
The trained network is run on the test data and the results
|
||||||
|
are stored. Requires external resource but should be
|
||||||
|
far quicker than the training and will probably be done
|
||||||
|
in two days at most.
|
||||||
|
\item[Run Bayesian SSD on test data]
|
||||||
|
Similar remarks to previous task.
|
||||||
|
\item[Run vanilla SSD detections through GPND]
|
||||||
|
For my approach the SSD detections need to be run through
|
||||||
|
the GPND to have all the relevant data for evaluation.
|
||||||
|
Requires external resource. Will take likely two days.
|
||||||
|
\item[Calculate evaluation metrics for vanilla SSD]
|
||||||
|
Takes one day.
|
||||||
|
\item[Calculate evaluation metrics for Bayesian SSD]
|
||||||
|
Takes one day.
|
||||||
|
\item[Calculate evaluation metrics for vanilla SSD with GPND]
|
||||||
|
Takes one day
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
If I can start on April 15th with the preparatory work it should be
|
||||||
|
done by April 23rd. The testing runs can begin as early as April 24th
|
||||||
|
and should finish around April 30th. This leaves the week from
|
||||||
|
May 6th up to the due date to finish the calculations, which can
|
||||||
|
happen on the CPU as all the data is already there by then.
|
||||||
|
|
||||||
|
\subsection*{Visualizations created}
|
||||||
|
|
||||||
|
\textbf{Due date:} 31st May
|
||||||
|
|
||||||
|
I won't be able to work on the thesis between May 13th and May 26th
|
||||||
|
due to the election campaign. I am involved into the campaign already
|
||||||
|
as of this writing but I hope that up until May 10th both thesis
|
||||||
|
and campaign can somewhat co-exist.
|
||||||
|
|
||||||
|
The visualizations should be creatable within one week from May 27th
|
||||||
|
to May 31st.
|
||||||
|
|
||||||
|
\subsection*{Stretch goals}
|
||||||
|
|
||||||
|
\textbf{Due date:} 27th June
|
||||||
|
|
||||||
|
As I mentioned earlier, there are no specific tasks for the
|
||||||
|
stretch goals. If the critical path is finished by the end
|
||||||
|
of May as planned then the month of June is available for
|
||||||
|
stretch goals. If the critical path is not finished then
|
||||||
|
June serves as a buffer zone to prevent spillover into the
|
||||||
|
writing period.
|
||||||
|
|
||||||
|
\subsection*{Thesis writing}
|
||||||
|
|
||||||
|
\textbf{Due date:} 30th August
|
||||||
|
|
||||||
|
A first complete draft of the thesis should be finished
|
||||||
|
at the latest by August 16th. The following week I am not
|
||||||
|
able to work on the thesis but it can be used for feedback.
|
||||||
|
|
||||||
|
The last week of August should allow for polishing of the
|
||||||
|
thesis with a submission-ready candidate by August 30th.
|
||||||
|
|
||||||
|
\subsection*{Finishing touches}
|
||||||
|
|
||||||
|
\textbf{Due date:} 13th September
|
||||||
|
|
||||||
|
The submission requires three printed copies of the thesis,
|
||||||
|
together with any digital components on a CD glued to the back
|
||||||
|
of the thesis. A non-editable CD ensures that the code submitted
|
||||||
|
cannot be modified and will be exactly as submitted when reviewed.
|
||||||
|
|
||||||
|
I will use these two weeks to print the copies and to make
|
||||||
|
last publication steps for the code like improving the code
|
||||||
|
documentation and adding usage examples.
|
||||||
|
|
||||||
|
\subsection*{Colloquium}
|
||||||
|
|
||||||
|
Last but not least is the colloquium which will probably take
|
||||||
|
place within the second half of September. I will prepare
|
||||||
|
a presentation for the colloquium in the time before such date.
|
||||||
|
|
||||||
|
\section{Project Risks}
|
||||||
|
|
||||||
|
In this section other project risks will be listed in
|
||||||
|
addition to those indicated in the timetable section.
|
||||||
|
|
||||||
|
The workload for the election campaign, in which I have an
|
||||||
|
organizational responsibility in addition to being a candidate
|
||||||
|
myself, could come into conflict with the progress of the
|
||||||
|
thesis.
|
||||||
|
|||||||
Reference in New Issue
Block a user