Powered By Blogger

Thursday, April 2, 2020

Book Reviewed: Tanmay Teaches Julia for Beginners: A Springboard to Machine Learning for All Ages by Tanmay Bakshi

Machine Learning

This book introduces the basics of Julia programming. It is essential for beginners but written to be concise and straightforward. The text is very well described with easy to follow step-by-step instructions by a 15-year-old whiz kid. His writing style is amazing, and book-reading is flawless!

For example, we can recognize objects, perceive depth, communicate and understand perspectives and measure outcome of our actions. These are skills that evolved over billions of years. But computers can't understand the contents of images or skills of animal communication, but with machine learning (ML), this challenge is accomplished. Animals learn from experience and so do machine learning algorithms. We can "train" a ML algorithm on a data set, and it'll try to "model" that data set, understand the intricacies and patterns, then define the mapping from input to output. But there's one key difference between training a human and training a machine: a human can learn from very few examples, but a machine requires thousands or even millions of examples to be trained. Training these algorithms requires lot of compute power or parallel computing. In this regard Julia is extremely helpful. It provides a package called Flux that helps you with all your ML needs! A part of the Flux project is called the Metalhead project, which enables us to use pretrained ML algorithms on a computer without having to train them by users of the program.

How does ML works? In machine learning, backpropagation (backprop,[1] BP) is a widely used algorithm in training feedforward neural networks for supervised learning. The algorithms enable computers to find mathematical patterns in vast amounts of data. There are many programming languages like C++, Python and R available for Julia. This enables Julia to combine the simplicity of Python with the speed of C++. One of the prominent features of Julia is its ability to handle mathematical expressions with elegance. Julia is faster than Python because it is designed to quickly implement the math concepts like linear algebra and matrix representations. It is excellent for numerical computing.

Prediction of a physical event does not produce additional energy or matter, but it puts some information from which we can put that in perspective. Information itself is not physical but physical reality may be understood by processing information. My main interest in computing is to simulate the evolution of simple living systems from primordial organic soup. I am very hopeful that ML and programming languages like Julia will enable us in this journey!

No comments:

Post a Comment