Marcin Bogdanski, Developer in Bristol, United Kingdom
Marcin is available for hire
Hire Marcin

Marcin Bogdanski

Verified Expert  in Engineering

Machine Learning Developer

Location
Bristol, United Kingdom
Toptal Member Since
March 28, 2019

Marcin is passionate about artificial intelligence especially about deep learning and related technologies. In 2007, he completed his bachelor's degree in computer science with a focus on AI and then pursued a career in robotics but his first love remained AI. Within the past few years, he's refocused his attention on deep learning projects, drawing upon his more than a decade's worth of hands-on experience in software as a team lead.

Portfolio

Consulting Work
Amazon Web Services (AWS), Google Cloud Platform (GCP), Python, PyTorch, Keras...
DroneX, Ltd.
C++, C, Robot Operating System (ROS), Python, Keras
Go Science
C++, Embedded C

Experience

Availability

Part-time

Preferred Environment

Visual Studio, Windows, Jupyter, Visual Studio Code (VS Code), Ubuntu Linux

The most amazing...

...project I've implemented was a vision system which won first prize along with $20,000.

Work Experience

Deep Learning Engineer

2017 - PRESENT
Consulting Work
  • Provided NLP solutions to data-mine and analyze a call center's transcript database.
  • Extended AlphaZero to imperfect information games, validated against Facebook OpenGo.
  • Built a vision system that won $20,000 first prize at Melbourne Knowledge Week.
  • Designed the NLP algorithm for automated text summarization of financial news articles.
  • Designed the neural architecture for fault detection on images of wind turbine blades.
  • Developed algorithm for time-series analysis and prediction based on home IoT sensors.
  • Introduced a vision system for tooling wear assessment for a major aerospace manufacturer.
  • Implemented face detection and auto-tagging for a family journal iPhone/Mac app.
Technologies: Amazon Web Services (AWS), Google Cloud Platform (GCP), Python, PyTorch, Keras, TensorFlow

Technical Director

2014 - 2019
DroneX, Ltd.
  • Developed real-time image segmentation for obstacle avoidance in a prototype ground robot.
  • Implemented AI that coordinated 200+ mobile mining robots in simulation (a US customer).
  • Led a team of engineers to design and build hardware and software for many drone projects.
  • Delivered all projects to full customer satisfaction (with some projects resulting in patents).
Technologies: C++, C, Robot Operating System (ROS), Python, Keras

Team Leader

2011 - 2014
Go Science
  • Oversaw and managed multiple software and hardware system integrations on an experimental autonomous deep-water vehicle.
  • Led a team of engineers in the delivery of multiple successful customer-facing trials.
Technologies: C++, Embedded C

Co-founder

2009 - 2010
Giko Games
  • Programmed a 3D game engine for Android in Java which was used in two published games.
Technologies: Java, Android

Software Engineer

2008 - 2009
Imagination Technologies
  • Built parts of the Windows 7 GPU driver in C++ and programmed a full test suite in Python.
Technologies: Python, C++, DirectX, Windows 7

NLP Data Mining and Analysis of Call Center Transcripts

PROJECT DESCRIPTION:
I needed to analyze a database of transcripts in a deeper language context and identify advisory skill sets and their applied sales strategies (e.g., up-selling and cross-selling) for training purposes.

TECHNOLOGIES:
I identified key phrases using both metadata and BERT-based deep learning architecture, a popular choice for language modeling and analysis.

Parking Sign Detection and Recognition

PROJECT DESCRIPTION:
Parking signs in Australia are notoriously complicated. The project was to build a proof-of-concept vision system to detect and recognize signs with a mobile phone and let the user know whether they can park at that location.

TECHNOLOGIES:
The system uses a customized state-of-the-art multi-stage neural network for detection. The main challenge was working with a tiny data set and a large variety of backgrounds, lighting and weather conditions and obstructions. We deployed the system for production on Amazon EC2

This project won first place and a monetary prize of $20,000 at the Melbourne Knowledge Week. I was fully responsible for the AI technology and the demo was delivered by the customer.

Automatic Text Summarization of Financial News Articles

PROJECT DESCRIPTION:
Stock traders need to process a large quantity of complex information in real-time to be able to compete. The project was to analyze input PDFs and present to the user a short 2-3 sentence summary.

TECHNOLOGIES:
During the research phase, we experimented with both extractive and abstractive text summarization, sentiment analysis, and translation techniques to get all the pieces necessary for the final product. Decoding raw PDFs was a significant challenge as well.

Time Series Analysis and Prediction for Housing Occupancy

PROJECT DESCRIPTION:
Smart home and IoT technologies offer huge potential savings in heating, power, air conditioning, and predictive maintenance. Combining sensor data from thousands of properties, we could identify actionable insights for occupants and landlords.

TECHNOLOGIES:
Houses were equipped with a variety of sensors like power, temperature, humidity, and CO2. We used a range of models like ARIMA, Gaussian processes, neural networks to detect latent variables (e.g., occupancy status), predict behavioral patterns (e.g., heating requirements), and risk of issues (e.g., hidden mold).

Automated Wind Turbine Fault Detection

PROJECT DESCRIPTION:
This project is a proof-of-concept neural architecture for automated fault detection on high-resolution images of wind turbine blades. I provided know-how via ongoing consulting as well as developed actual software for data pre-processing and model training and testing. The customer provided images and preliminary labels in a raw format. A large part of the project was to browse, clean, select, and label data provided so it can be feed into the machine learning component.

TECHNOLOGIES:
Due to the unique technical challenges that we encountered, we developed two non-standard components:
01. A completely custom preprocessing pipeline to handle the characteristics of the input data.
02. A far-reaching optimization of a neural network subsystem to allow for fast training time.

Self-driving Software for a Semi-autonomous Unmanned Ground Vehicle

https://marcinbogdanski.github.io/commercial-portfolio.html
PROJECT DESCRIPTION:
In this project, I worked as the principal software developer responsible for designing and implementing a self-driving module for an unmanned ground vehicle (UGV). The robot needed to navigate with GPS for predetermined routes where an obstacle avoidance module would be responsible for detecting unexpected obstacles like pedestrians, parked vehicles, and similar challenges (the robot would use walking paths).

TECHNOLOGIES:
The primary sensor was a front-facing monocular RGB camera (i.e., a webcam). Images from the camera were processed by two independent neural networks.

01. YOLO for object detection and localization—pedestrians, parked vehicles, and more. The network was trained on both a pre-existing dataset as well as a mix-in of our own training data.
02. SegNet was used for detecting if the ground in front of the vehicle is drivable (e.g., pavement, tarmac). The network was trained on cityscapes with a few added images.

Tool Wear Assessment for a CNC Router

https://marcinbogdanski.github.io/commercial-portfolio.html
PROJECT DESCRIPTION:
A CNC router is a machine that uses a rotational tool bit (drill) to remove material from a solid block to manufacture a target part. The tool bits wear down and technicians often forget to check and replace them. This system automatically takes a picture of the tool bit before the job has started and feeds it into a convolutional neural network to evaluate the current wear of the tool bit.

TECHNOLOGIES:
Image classification is performed with DenseNet-201 which showed the best performance out of the attempted architectures. CNN was initially trained on ImageNet and then trained further. The classifier was trained on a target dataset with heavy data augmentation and applied regularization. Afterward, the training network was able to detect cracked, chipped, or overheated (changed color) tool bits.

The system is currently operating in a machine shop at an aerospace manufacturing facility.

Interactive Simulation for a Mining Robot Swarm

https://marcinbogdanski.github.io/commercial-portfolio.html
PROJECT DESCRIPTION:
The purpose of this project was to assess in detail the performance of a swarm of 200+ mining and support robots. The swarm would start in containers, then deploy solar panels, build a surface base, excavate tunnels, process raw materials, and finally wind up in an operation. The complexity of the project was similar to a simple strategy video game.

TECHNOLOGIES:
The simulation is physics-based and built in a Unity3D game engine along with a set of plugins for dynamic volumetric terrain (so that the robots can freely excavate). An individual robot AI manages energy, navigation, task queues, and more. The swarm AI manages task allocation, robot coordination, excavation orders, and similar.

At any point, a user can override the high-level strategy or take over full control over an individual robot.

Languages

Python, C, C++, C#, Embedded C, Java, SQL

Libraries/APIs

Keras, PyTorch, TensorFlow, DirectX

Tools

Jupyter, Visual Studio

Platforms

Jupyter Notebook, Docker, Amazon Web Services (AWS), Ubuntu Linux, Windows, Windows 7, Android, Google Cloud Platform (GCP), Visual Studio Code (VS Code)

Other

Machine Learning, Deep Learning, Reinforcement Learning, Deep Reinforcement Learning, Artificial Intelligence (AI), Research, Robotics, Drones, Software Engineering, Computer Vision, Machine Vision, Natural Language Processing (NLP), Neural Networks, Deep Neural Networks, Convolutional Neural Networks (CNN), Recurrent Neural Networks (RNNs), GPT, Generative Pre-trained Transformers (GPT), Computer Vision Algorithms, Mathematics, Natural Language Understanding (NLU), Custom BERT, Scientific Data Analysis, Time Series, Robot Operating System (ROS), Artificial General Intelligence (AGI), Voice Recognition

Paradigms

Agile, Testing, Data Science

2004 - 2007

Bachelor of Engineering (BEng) Degree in Computer Science

University of Bielsko-Biała - Bielsko-Biała, Poland

JANUARY 2019 - PRESENT

Natural Language Processing Nanodegree

Udacity

JANUARY 2019 - PRESENT

Computer Vision Nanodegree

Udacity

AUGUST 2018 - PRESENT

Deep Learning Specialization

Coursera

OCTOBER 2017 - PRESENT

Deep Learning Nanodegree Foundation

Udacity

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring