Getting started with Machine Learning
ℹ️ This is a a WIP project, join our team or contribute freely
- Python - Libraries - Editor
- Working online & offline
Version: Python 3.6.+ (not 2.7 or 3.7)
Windows - Download
- Preferably use Anaconda (see below)
- Or move to Unix Based System ![](https://emojipedia-us.s3.dualstack.us-west-1.amazonaws.com/thumbs/240/apple/155/smiling-face-with-open-mouth-and-cold-sweat_1f605.png =15x)
Linux Based - Already Installed
- Check version:
python --version
orpython3 --version
- Update/ Install:
sudo apt-get install python3
- Can also use Anaconda (see below)
macOS - Follow this guide or use Anaconda (see below)
Anaconda is a downloadable, free, open source, high-performance and optimized Python distribution.
Anaconda includes:
- conda & conda build
- Python (choose version, change versions easily)
- 100+ automatically installed, open source scientific packages and their dependencies that have been tested to work well together, including SciPy, NumPy and many others.
-- Includes everything that you need and is the best for new users--
Available for Windows, macOS and Linux, all versions of Anaconda are supported by the community.
Conda environments
With conda, you can create, export, list, remove, and update environments that have different versions of Python and/or packages installed in them. Switching or moving between environments is called activating the environment. You can also share an environment file.
Available Python is 3.7. You can downgrade it to 3.6.6 with conda install python=3.6
Using the command line:
- Verify conda is installed, check version number:
conda info
- Install package:
pip install package_name
orconda install package_name
- Create new empty environment named ENVNAME:
conda create --name ENVNAME
or clone an existing environmentconda create --name ENVNAME --clone EXISTING_ENVIRONMENT
- Activate a named conda environment
conda activate ENVNAME
- Deactivate the current environment
conda deactivate
- List all packages and versions in the active environment
conda list
- More commands on environments here
WILL BE UPDATED ACCORDINGLY
NumPy -> N-dimensional array for numerical computation.
Pandas -> Powerful Python data structures and data analysis toolkit.
scikit-learn -> Python modules for machine learning and data mining
Matplotlib Seaborn Bokeh -> Plotting libraries for Python
NLTK Gensim -> The leading platforms for building Python programs to work with human language data.
TensorFlow Keras PyTorch -> Deep learning frameworks
- Go for the ultimate version as a student
- Has everything you'll ever need (editor, auto-compeltion, debugger, database connect, a ton of plugins)
- Perfect if you already use JetBrains products
- Works with Anaconda (can create environments), remote interpreters and native python.
- Version Control (Git etc.) & Deployment
- Also cool, and open source
- Better for begginers and those coming from R Studio and MatLab...
- Variable Explorer
The notebook extends the console-based approach to interactive computing in a qualitatively new direction, providing a web-based application suitable for capturing the whole computation process: developing, documenting, and executing code, as well as communicating the results.
- Forget all the above, just a notebook - just for scripting
- Easy to use, comes with Anaconda
- A web application, combine explanatory text, mathematics, computations and their rich media output.
- Work from your browser, lightweight, further installs
- Execute code in pieces and in any way you want.
Command Cheatsheet - Applies to Colab also
Google Colaboratory or just Colab!
A jupyter notebook online
- No installation, both CPU and GPU/TPU usage
- Aims to collaboration and sharing
- Added support - LaTex Mathematics
- Can also run on your local Python Installation
- Interaction with GitHub and Google Drive
California Housing Dataset (with ocean proximity)
Other resources that can help you on your first steps with machine learning
- Géron, A. (2017). Hands-on machine learning with Scikit-Learn and TensorFlow: concepts, tools, and techniques to build intelligent systems. " O'Reilly Media, Inc.".
- Flach, P. (2012). Machine learning: the art and science of algorithms that make sense of data. Cambridge University Press.
- Mitchell, T., Buchanan, B., DeJong, G., Dietterich, T., Rosenbloom, P., & Waibel, A. (1990). Machine learning. Annual review of computer science, 4(1), 417-433.
- Machine Learning Certification by Stanford University (Coursera)
- Machine Learning A-Z™: Hands-On Python & R In Data Science (Udemy)
- Machine Learning – Artificial Intelligence by Columbia University (edX)
- 100 Days of ML Coding
- A complete daily plan for studying to become a machine learning engineer
- Data science Python notebooks
- A series of Jupyter notebooks that walk you through the fundamentals of Machine Learning and Deep Learning in python using Scikit-Learn and TensorFlow. & 🆕
- Oxford Deep NLP 2017 course