Life with scikit-learn

Machine learning (ML), the phrase itself explains everything. ML teaches machines how to carry out tasks by themselves without a human guide. The explanation can be defined in one sentence but the complexity comes with the details ;) and that is most likely you probably go into big confusions.

Machine learning focuses on the development of computer programs that can teach themselves to grow and change when exposed to new data. Simply if we say, we have a set of training dataset, a selected model/algorithm for a specific problem and we train the data using it until we get higher accuracy level in our prediction result.

Learning a language is easy than learning a model

I started to work on ML without an idea of it and everything seemed to be magic and cool. If you’re also in the same stage don’t worry ☺,

Welcome to the club!

Let us assume that each morning when you turn on your computer, you filter, sort and arrange your emails in to different folders or labeling it. Obviously you will perform the same task again and again. After some time, you feel bored and you will feel “wish it was automated”. One way would be to start analyzing your emails
 and write down all the rules your brain processes to shuffle and arrange your emails. But at the end it will be like a statistical model where it will perform according to the rules and think of the list of the rules that you’re going to implement. However, this will be quite cumbersome and always imperfect. While you will miss some rules, and it will be very difficult to solve by a human. A better and more future-proof way would be to automate this process by choosing a set of e-mail as train dataset and train with a model like “Multinomial Naive Bayes”. After training it use this model to predict the new email. This is machine learning in its simplest form. Multinomial Naive Bayes is a text classification model. If time permits I will surely try to discuss about Machine Learning models and we will try to implement it in near future ☺.

If you want to try with some Artificial intelligence implementation I would recommend to use Python based application. Python is a widely used general-purpose, high-level programming language. We can find so many mathematical libraries like NumPy, SciPy and Scikit-learn, which will help to easily customize and to implement a model to our specific problems. And also it will help to speedup and to reduce the time we spend for implementation.

Work Smarter – Not Harder ☺

Scit-learn is Machine Learning library in Python, which contains lots of Classification and Neural Network models. This library helped me a lot to implement Artificial intelligence based Search engine ☺ and I was able to implement the Search Engine with a higher accuracy prediction. Text classification is a major area; I will talk about the implementation for AI based search engine in my next article ☺.

Learning Guide

image

Building Machine Learning Systems with Python – 2013 by Willi Richert, Luis Pedro Coelho, book helped me on Machine Learning ☺. This book that not only gives a quick introduction to machine learning, but also teaches you lessons that we have learned along the way. I will 100% guarantee and recommend this book for machine learning and will surely help you to build the ground level basics on machine learning ☺