Welcome to the first week of CSOC ML. This will be a two month long course where we will be developing various aspects of machine learning from basic concepts to advanced ones. There are no major prerequisites for this course. Only basic programming skills and some high school mathematics - linear algebra (matrices), calculus and probability is required. There will be a new blog every week containing all the resources for the week. There will be some links of exciting blogs which will help you gain a lot of knowledge so do go through them. So lets get started!!!
Anaconda is a python and R distribution. It aims to provide everything you need (python wise) for machine learning “out of the box”. Installing this will setup Python and all the major data science libraries and Jupyter Notebook. here are some links to help you install Anaconda on Linux and Windows
Throughout the course we will be using Jupyter Notebook for doing assignments so getting familiar with it is very necessary. Run the Jupyter Notebook by either starting the Anaconda Navigator or by typing jupyter notebook in the terminal. You can find a brief introduction of Jupyter Notebook in these tutorial.
Python and its Data Science libraries are used predominantly in competitive Machine Learning. Python is used even in Machine Learning research, because of its simplicity and availability of a wide array of machine learning libraries in Python. So it is essential to have a good grasp over Python. If you have some basic knowledge of any programming language then learning python wont take long. The first nine chapters of the official documentation of Python is an excellent resource to start with. You can also watch the first 34 videos of Python series by Sentdex.Also you can practise by solving problems on Hackerrank. The links to all these resources are given below.
The last task for the week would be to learn Numpy. NumPy is the fundamental package for scientific computing in Python. It is a Python library that provides a multidimensional array object, various derived objects (such as masked arrays and matrices), and an assortment of routines for fast operations on arrays, including mathematical, logical, shape manipulation, sorting, selecting, I/O, discrete Fourier transforms, basic linear algebra, basic statistical operations, random simulation and much more. Some references are:
Here are links to some amazing blogs. Reading various blogs is a very good practise as it helps you gain immense amount of knowledge and helps to be up-to-date with the recent trends in technology.