Integration of machine learning, devops, and MLOps.
Hello #connections ,
As we all know MLOps is very vast term we use while developing any project, but what is it exactly?We will divide the term in two parts for our understanding.
So, what is Machine Learning and DevOps?We have basic idea of both terms but what connection does it have with MLOps?
First, let us see the meaning of Machine Learning. In Simple terms we can define Machine Learning as a branch of Artificial Intelligence based of the idea of that system can learn from data, identify patterns & make decisions with minimal human interference.
There are three Learning types:
1)Supervised Learning
2)Unsupervised Learning
3)Reinforcement Learning
We’ll see those in brief.
?
1)Supervised Learning
?Supervised learning is the machine learning task of learning a function that maps an input to an output based on example input-output pairs. It works with labelled data.
For e.g. If I ask a person to forget everything and remember only 2 thing. There are 2 flowers. Red rose and other one is white Daisy. Then the person will remember and will be identify the 2 flowers solely based on the information I have provided him/her.
2)Unsupervised Learning
Unsupervised learning is a type of machine learning that looks for previously undetected patterns in a data set with no pre-existing labels and with a minimum of human supervision.
The unsupervised algorithm is handling data without prior training - it is a function that does its job with the data at its disposal. In a way, it is left at his own devices to sort things out as it sees fit.??
The unsupervised algorithm works with unlabelled data. Its purpose is exploration. If supervised machine learning works under clearly defines rules, unsupervised learning is working under the conditions of results being unknown and thus needed to be defined in the process.
The unsupervised machine learning algorithm is used to:
·??????Explore?the structure of the information and detect distinct patterns;
·??????Extract?valuable insights;
·??????Implement?this into its operation in order to increase the efficiency of?the decision-making process
For e.g.
Cluster analysis is an unsupervised learning method. It is?a data analysis technique that explores the naturally occurring groups within a data set known as clusters. Cluster analysis doesn't need to group data points into any predefined groups.
领英推荐
3)Reinforcement Learning
The Reinforcement Learning can be defined as, a machine learning training method based on rewarding desired behaviour and/or punishing undesired ones. In general, a reinforcement learning agent is able to perceive and interpret its environment, take actions and learn through trial and error.
For e.g If we take a example of training a Dog to catch a ball, we can train him by providing a reward for every throw he tried to catch in right way, in the same way we can show our disappointment by not giving a reward whenever he doesn’t show appropriate behaviour.
In that way he can learn through trial and error and in the he will catch the ball.
From the example given above we can understand that, data is not part of the input that we would find in supervised or unsupervised machine learning. Reinforcement learning uses algorithms that learn from outcomes and decide which action to take next. After each action, the algorithm receives feedback that helps it determine whether the choice it made was correct, neutral or incorrect. It is a good technique to use for automated systems that have to make a lot of small decisions without human guidance.
DevOps
DevOps is a set of?practices,?tools, and a?cultural philosophy?that automate and integrate the processes between software development and IT teams. It emphasizes team empowerment, cross-team communication and collaboration, and technology automation.DevOps can be also said as process to optimize Development, Testing and Deployment process within a team.
There are following phases in the DevOps which are pretty self-explanatory.
1)???Requirement Gathering
2)???Planning
3)???Development & Testing
4)???Deployment
5)???Monitoring
6)???Feedback
In this process we use CI/CD method. CI/CD is Continuous Integration Continuous Deployment. This means, CI/CD is a method to frequently deliver?apps?to customers by introducing?automation?into the stages of?app development. The main concepts attributed to CI/CD are continuous integration,?continuous delivery, and continuous deployment. CI/CD is a solution to the problems?integrating?new code can cause for development and operations teams.
MLOps
Till now we just learnt the pre-requisite knowledge we need before learning MLOps. MLOps is the concept which integrates both the concepts of Machine Learning and DevOps.
MLOps, short for "Machine Learning Operations," refers to a set of practices and methodologies that combine machine learning (ML) and artificial intelligence (AI) with DevOps principles to streamline and automate the end-to-end machine learning lifecycle.?
It aims to facilitate collaboration, communication, and integration between data scientists, ML engineers, and operations teams to effectively develop, deploy, monitor, and manage machine learning models in production environments.
MLOps is a set of engineering practices specific to machine learning projects that borrow from the more widely-adopted DevOps principles in software engineering. While DevOps brings a rapid, continuously iterative approach to shipping applications, MLOps borrows the same principles to take machine learning models to production. In both cases, the outcome is higher software quality, faster patching and releases, and higher customer satisfaction.
MLOps Life Cycle
Thank you Kushal Sharma sir for this wonderful session and guidance. Thank you AISSMS Institute of Information Technology for organizing this value addition course.
Intern @Byteplexure
1 年Keep going, Keep growing