OpenEVA

An Extravehicular Maintenance Sim

Neural Style | 2017 - 06 - 15

This past weekend I spent some time working on a simple project somewhat unrelated to OpenEVA but I have decided to document it here anyway: I have been interested in using convolutional neural networks for artistic style transfer for some time and have experimented using my own hardware. However, my personal hardware budget is somewhat limited, my 560ti can just barely run a 512px transfer using simplified models if you don’t mind the smell of hot silicone.Since then, I have wanted to set up an Amazon Web Services Elastic Compute Cloud (EC2) instance capable of producing artistic style transfers which would enable all sorts of interesting things. Over the weekend I set up a simple Docker file and AWS host provisioning script which sets everything needed to run the artistic style transfer algorithm in a docker container on the host.

Getting everything set up was surprisingly easy, and the only material cost is to pay for server time ( ~$0.90USD/hr in my case ). The first step of course was to do a bit of research. My experience with docker is fairly limited but I have experimented previously with neural-style at home. It quickly became obvious that I would be using nvidia-docker to run dockerized neural-style containers, which could then be run on an AWS EC2 instance. I found albajari/neural-style-docker which was almost exactly what I needed and served as a great reference for writing my dockerfile. For the AWS side the nvidia-docker wiki has great reference for EC2 deployment.

I am pretty happy with the end result which you can check out here. It has already given some good results and should serve as a platform for more experiments with neural networks and machine learning in the future.