A good craftsman needs good tools. This is also true in Data Science and Machine Learning. There are three main categories of tools:
Integrated Tools that include everything necessary for a project: loading data, analyzing it, creating models, evaluating them, deploying, and generating reports.
Auto ML Tools that simplify the process for non-experts by automating most of the different phases.
Development Tools which allow for more customization, provided you code everything, for example in Python.
1. Integrated Tools
There are many tools in the first category, each requiring specific learning to use them effectively. Additionally, each has its strengths and weaknesses, so it is important to choose the right software based on the intended goal. Examples include: Dataiku DSS, SAS, QlikView, Tableau, Power BI, etc.
Some are very statistics-oriented (SAS), others focus on data visualization (Tableau), but all cover at least part of the process. These are mainly downloadable applications accessible via a web interface.
Most of these software tools are paid. Free versions often exist, but they are limited in functionality and usually restricted to personal use. To be compliant, it is important to contact the main providers.
2. Auto ML
Auto ML tools are generally accessible via a web interface. The user inputs their raw data and desired task: classification, regression, etc. The application then takes care of the rest: selecting data preparation methods, models, and parameters. The best-created model is then returned to the user. These tools have the huge advantage of being usable without any knowledge of Machine Learning. However, they lack flexibility and are often disliked by Data Scientists who prefer to have control over their modeling process.
However, they allow for a quick initial model, and a Data Scientist can then spend time on other models and optimizing the Auto ML results. Most cloud providers have their own tools.
3. Development Tools
It is entirely possible to code Machine Learning algorithms in all programming languages. Many frameworks or libraries exist, ready to be incorporated into projects. Classic development tools are therefore perfectly usable. Code editors like Atom, Visual Studio Code, or Sublime Text can all serve a project.
Moreover, code has the advantage of being easily shared and synchronized among multiple people thanks to version control systems like Git. Additionally, CI/CD (Continuous Integration/Continuous Deployment) tools like GitLab CI, Jenkins, or Ansible can facilitate deployment and updates. Again, each cloud provider offers additional tools, such as the series of Amazon Web Services (AWS) services starting with "Code": CodeCommit, CodeBuild... or Azure DevOps.
These tools are increasingly used today.
Top comments (0)