diff --git a/mini_proj/report/waldo.tex b/mini_proj/report/waldo.tex index 84b2494..4492253 100644 --- a/mini_proj/report/waldo.tex +++ b/mini_proj/report/waldo.tex @@ -46,8 +46,7 @@ \end{abstract} \section{Introduction} - - Almost every child around the world knows about ``Where's Waldo?'', also + \tab Almost every child around the world knows about ``Where's Waldo?'', also known as ``Where's Wally?'' in some countries. This famous puzzle book has spread its way across the world and is published in more than 25 different languages. The idea behind the books is to find the character Waldo, @@ -59,7 +58,7 @@ that even adults will have trouble spotting Waldo is the fact that the pictures are full of ``Red Herrings'': things that look like (or are colored as) Waldo, but are not actually Waldo. - + \\ \begin{figure}[ht] \includegraphics[scale=0.35]{waldo.png} \centering @@ -69,7 +68,7 @@ } \label{fig:waldo} \end{figure} - + \par The task of finding Waldo is something that relates to a lot of real life image recognition tasks. Fields like mining, astronomy, surveillance, radiology, and microbiology often have to analyse images (or scans) to find @@ -77,7 +76,8 @@ are especially hard when the thing(s) you are looking for are similar to the rest of the images. These tasks are thus generally performed using computers to identify possible matches. - + \\ + \par ``Where's Waldo?'' offers us a great tool to study this kind of problem in a setting that is humanly tangible. In this report we will try to identify Waldo in the puzzle images using different classification methods. Every @@ -93,7 +93,7 @@ \section{Background} \label{sec:background} - The classification methods used can separated into two separate groups: + \tab The classification methods used can separated into two separate groups: classical machine learning methods and neural network architectures. Many of the classical machine learning algorithms have variations and improvements for various purposes; however, for this report we will be using their only @@ -103,7 +103,7 @@ \subsection{Classical Machine Learning Methods} - The following paragraphs will give only brief descriptions of the different + \tab The following paragraphs will give only brief descriptions of the different classical machine learning methods used in this reports. For further reading we recommend reading ``Supervised machine learning: A review of classification techniques'' \cite{MLReview}. @@ -158,8 +158,7 @@ of randomness and the mean of these trees is used which avoids this problem. \subsection{Neural Network Architectures} - - There are many well established architectures for Neural Networks depending + \tab There are many well established architectures for Neural Networks depending on the task being performed. In this paper, the focus is placed on convolution neural networks, which have been proven to effectively classify images \cite{NIPS2012_4824}. One of the pioneering works in the field, the @@ -185,7 +184,7 @@ \section{Method} \label{sec:method} - In order to effectively utilize the aforementioned modeling and + \tab In order to effectively utilize the aforementioned modeling and classification techniques, a key consideration is the data they are acting on. A dataset containing Waldo and non-Waldo images was obtained from an Open Database\footnote{``The Open Database License (ODbL) is a license @@ -238,7 +237,7 @@ \subsection{Neural Network Training}\label{nnTraining} - The neural networks used to classify the images were supervised learning + \tab The neural networks used to classify the images were supervised learning models; requiring training on a dataset of typical images. Each network was trained using the preprocessed training dataset and labels for 25 epochs (one forward and backward pass of all data) in batches of 150. The number of @@ -258,14 +257,14 @@ % Kelvin Start \subsection{Benchmarking}\label{benchmarking} - In order to benchmark the Neural Networks, the performance of these + \tab In order to benchmark the Neural Networks, the performance of these algorithms are evaluated against other Machine Learning algorithms. We use Support Vector Machines, K-Nearest Neighbors (\(K=5\)), Naive Bayes and Random Forest classifiers, as provided in Scikit-Learn~\cite{scikit-learn}. \subsection{Performance Metrics}\label{performance-metrics} - To evaluate the performance of the models, we record the time taken by + \tab To evaluate the performance of the models, we record the time taken by each model to train, based on the training data and the accuracy with which the model makes predictions. We calculate accuracy as \[a = \frac{|correct\ predictions|}{|predictions|} = \frac{tp + tn}{tp + tn + fp + fn}\] @@ -275,7 +274,7 @@ \section{Results} \label{sec:results} - The time taken to train each of the neural networks and traditional + \tab The time taken to train each of the neural networks and traditional approaches was measured and recorded alongside their accuracy (evaluated using a separate test dataset) in Table \ref{tab:results}.