DevDays Vilnius 2019


May 21-23, 2019


Wilder Rodrigues

Quby, The Netherlands


Wilder Rodrigues has 25 years of experience developing standalone, distributed and mobile systems. His passion for Artificial Intelligence made him an example of how one can go from Software Engineer to Machine Learning Engineer, give talks, get into competitions and become recognized by the AI community. His involvement with the IBM Watson AI XPRIZE competition has brought him to the AI for Good Summit, in Geneva at the United Nations, as a guest attendee. Wilder is currently Ambassador at the City.A, which is a large community present in 40+ cities.


Machine Learning for Software Engineers


The advancements in the achieved in the past 20 years with respect to Artificial Intelligence, plus the increase and availability of compute power, has created a new are of interest for Software Engineers, IT Specialists and Researchers.
It’s amazing that within 2 decades we went from postcode recognition to self-driving cars within 20 years. But when it comes to jobs, how can traditional Software Engineers get their hands on that slice of the cake?
In this workshop, we will cover the basics aspects of Artificial Intelligence, moving on to Neural Networks and theirs flavors, from shallow to deep neural net to work with both Image and Text Classification.


1. Theory

Artificial Intelligence

  • How it all started.
  • When it froze down during its Winters.
  • A new hope: Back Propagation.
  • A new flavor: Convolutional Neural Networks.

Machine Learning

  • With data becoming available, the need for optimisation kicked in.

Deep Learning

  • Traditional models can no longer suffice.

2. Practice 1

Building a Neural Network for Image Classification

Aspects to cover:

  • Bias / Variance
  • Underfitting / Overfitting
  • Loss Function
  • Gradient Descent
  • Learning Rate
  • Fully Connected Layers

Building a Deep Neural Network for Image Classification

Aspects to cover:

  • Mini-batch
  • Regularization
  • Gradient Optimizers
  • Model Checkpoints
  • Early StoppingBuilding a Deep Neural Network for Image Classification

Building a Convolutional Neural Network for Image Classification

Aspects to cover:

  • Kernel size
  • Strides
  • Pooling layers

3. Practice 2

Word Representation in Vector Space

Aspects to cover:

  • Word2Vec
  • Sentiment Analysis

Building a Deep Neural Network for Text Analysis

Aspects to cover:

  • Embedding Layer
  • Spacial Dropout

Building a Convolutional Neural Network for Text Analysis

  • 1D Convolutions

Target Audience

This workshop is target to Software Engineers willing to learn more about the existing developments surrounding Artificial Intelligence, with respect to Deep Learning, and that already have some knowledge about Python and Docker.

All the material and code will be offered in the form of Jupyter notebooks and a Docker image, so the attendees won’t need to install any dependencies on their machines.

 Course Prerequisites

Concerning hardware, it is expected for the attendees to have a 16GB RAM machine, either Windows or MacBook, with an i7 Intel processor and 50GB of free disk space.