If you’ve ever looked into what it takes to become a developer of AI software, you probably know that Python is the language of choice for 95% of Machine Learning applications out there.
So, why Python? It’s not super easy to learn. Students can learn graphical programming languages like Apple’s Swift much faster. It’s not the speediest. There are other programming languages that are better optimized to develop the GPU and CPU intensive tasks that Machine Learning software requires. Unfortunately, it’s not even the most ubiquitous (for applications outside of machine learning and data science). Many programmers are much more familiar with Javascript for web development. It is free, so it does have that going for it.
Here’s what Quora has to say about it:
“…it is a general language that does a little of everything at a good enough complexity-performance tradeoff with a full suite of tools for
productionizing machine learning.”Thia Kai Xin, Head of Data (Tech In Asia), Co-Founder of DataScience SG.
Essentially, Python is effective enough to get the job done. Major companies like Google, Facebook, and Uber all use Python for the majority of their ML software development, so that helps. If you want a job at a major tech company, and you want to develop artificial intelligence applications, you’ll probably need to understand Python pretty well.
So, what can Python do? It’s built on an open-source licence, so there’s no need to worry about licensing fees. Python comes pre-installed on all Apple desktops and can be easily installed on Windows or Linux builds. The latest version of Python (Python 3.7) can be easily integrated with mathematical packages like NumPy and with clever development visualization tools like Jupyter Notebooks.
“The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Uses
include: data cleaning and transformation, numerical simulation, statisticalmodeling , data visualization, machine learning, and much more.”Project Jupyter – jupyter.org
There are many, many online and in-person courses available that teach Python, including many free and
Python is easy to learn and powerful. It’s accessible to pretty much anyone with a computer and there are lots of ways to get started. Here’s an example of what you can do with Python in only a few days of practice:
Using only freely available libraries and packages, along with some tutelage from Udacity’s AI Programming Fundamentals program, a student can learn to program a deep-neural-net, a type of machine learning tool, that is able to distinguish images of various types of animals, including dog breeds, with a high degree of accuracy. That’s pretty amazing. Someone with limited programming experience can learn how to build their own AI program in less time than it takes to fail your first University midterm.
If you’re interested in programming these types of tools or if you’re curious about how they work, I highly suggest you head over to the 3 Blue 1 Brown YouTube channel and watch his videos on Neural Networks. The animations are world-class and the topics are simplified enough to be understood but still cover the topic in great depth. I’ve linked the first video in the series below and I can’t recommend the channel enough.
So where is this all going and what applications does this have for people in finance?
Using the tools described above, I have already created software that tracks the share price of several tech giants and tries to predict their short-term market performance. Mind you, I have about a decade of software development experience, but nearly all of my experience is outside of the machine learning space.
Python is a great tool for experienced programmers and beginners alike to build some amazing software. Try it out for yourself, and when you get hooked, don’t blame me when you inevitably find yourself up past midnight solving