Deep Learning taken world by storm in recent years, and most of the time it's powered by Python language. Working with 3D data is computationally demanding even by most powerful GPUs. A lot of times 3D data is in sparse form, or can be turned without loosing too much of it's usefulness. We combined high performance of CUDA library with ease of use and power of Python by getting good with Cython.
We live in great time for development of Machine Learning algorithms. There is an abundance of ways to implement models, a lot of them are in Python or have a python API. Python is a great way to implement high level APIs and connect your code to other parts of data processing. Learning how to write in Theano or Tensorflow can be very helpful for most of the people facing problems with complex data. But for a niche area like Deep Learning for sparse 3D data there was no solutions. Our python module enables creation of deep neural networks to process sparse data quickly using combination of Python and fast C++/CUDA code underneath. In my talk I'll explain how to connect high performance code with practical user level abstractions using Cython, as it was done in our project.