From 799e29c2e06ac53aabb871539ab7f28b9980b30c Mon Sep 17 00:00:00 2001 From: Jim Martens Date: Sun, 4 Aug 2019 12:02:56 +0200 Subject: [PATCH] Wrote about design of code Signed-off-by: Jim Martens --- body.tex | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/body.tex b/body.tex index 6b36f2a..da6a6ed 100644 --- a/body.tex +++ b/body.tex @@ -219,6 +219,34 @@ outlined, followed by the implementation of the auto-encoder. \section{Design of Source Code} +The source code of many published papers is either not available +or seems like an afterthought: it is poorly documented, difficult +to integrate in your own work, and often does not follow common +software development best practices. Moreover, with Tensorflow, +PyTorch, and Caffe there are at least three machine learning +frameworks. Every research team seems to prefer another framework +and sometimes even develops their own; this makes it difficult +to combine the work of different authors. +In addition to all this, most papers do not contain proper information +regarding the implementation details, making it difficult to +accurately replicate them if their source code is not available. + +Therefore, it was clear to me: I will release my source code and +make it available as Python package on the PyPi package index. +This makes it possible for other researchers to simply install +a package and use the API to interact with my code. Additionally, +the code has been designed to be future proof and work with +the announced Tensorflow 2.0 by supporting eager mode. + +Furthermore, it is configurable, well documented, and conforms +to the clean code guidelines: evolvability and extendability among +others. Unit tests are part of the code as well to identify common +issues early on, saving time in the process. + +Lastly, the SSD implementation from a third party repository +has been modified to work inside a Python package architecture and +with Eager mode. + \section{Preparation of data sets} \section{Replication of Miller et al.}