Implementation of covariance-like matrix layer for deep neural networks
Recrutement: 
Recrutement en cours/passé: 
Recrutement en cours
Periode: 
2018

Keywords Machine learning, deep neural network, GPU, Cuda, C++, python, mathematical optimization, image segmentation


Context Deep neural networks are a representation of function of high dimensional input.They have been very effectively as classifier for image recognition or image segmentation.One of our research axis in CREATIS, is to improve and specialize these tools in the context ofmedical image segmentation.Our current work has led us to investigate covariance like matrices to provides \textit{prior}knowledge into the learning process. Our results are promising buttheir use involves a important computational overhead. This overhead is mainly due to our ineffective python implementationwhen most of the other layers of the network are in C++ or use the GPU.As the parameters of the network are then optimized to minimize a given loss function, the implementation ofthe gradient of this layer is necessary as well.


Objectives The objective of this internship is to implement in C++/cuda the layer we proposed as well as its derivatives.These developments involve:

  • the development of the layer in C++/cuda
  • the derivation of the formula and the implementation of the gradient of the layer w.r. the network parameter
  • the integration of the layer into a stochastic gradient descent algorithm and our image segmentation framework

Our current code is proposed Python and make use of the pytorch\footnote{http://pytorch.org} library. 


ApplicationFor the internship, the candidate will be asked serious and autonomy as well as:

  • good programming skills
  • knowledge in python, c++ or cuda
  • notions of machine learning, deep learning

Interested candidates will send any relevant documents (cover letter, CV, letters of reference, transcripts, ...) to:\url{michael.sdika [at] creatis.insa-lyon.fr}.


Location, Duration

  • CREATIS \footnote{\url{www.creatis.insa-lyon.fr}} laboratory, Lyon, France
  • Applications for internships of 6 to 8 weeks will be evaluated