CCD Chapter 6 Notes
CCD Chapter 6 Notes
various Machine Learning (ML) systems available in the market, classified into
different categories based on their applications and capabilities:
− Amazon sagemaker
− google Auto ML
− azure ML studio
− TensorFlow
− PyTorch
− Scikit-learn
− keras
1) TensorFlow
advantages :
Applications :
2) PyTorch
Advantages :
Disadvantages :
Applications:
3) Scikit-learn
Advantages
Disadvantages
application :
4) keras
− Keras is a high level deep learning API developed by Google for
implementing neural networks.
− Keras is a high-level, user-friendly deep learning library written in Python.
− It is designed to enable fast experimentation with deep learning models and
is built on top of backend engines like TensorFlow, Theano
− Provides a simple, intuitive interface for building and training neural
networks.
− It Includes tools for preprocessing, visualization, and training neural
networks.
Advantages
− Easy to Use: Simplifies the process of creating deep learning models with
minimal code.
− Extensive Documentation and Community: Offers detailed documentation,
tutorials, and a large community for support.
− Can switch between TensorFlow, Theano, or CNTK without changing the
code.
− Built-in Pretrained Models: Saves time with ready-to-use models for transfer
learning.
− Allows quick experimentation, making it ideal for research and iterative
development.
Disadvantages
Applications
1) Easy to use : Managed ML platforms make it easy to get started with machine
learning.There is need to worry about setting up servers or complex systems.
They provide simple interfaces, like drag-and-drop features, to create models
without deep technical knowledge.
2) Time saving : They automate things like data cleaning and model tuning, so
you can focus on solving the problem at hand. You can quickly build and train
models without wasting time on setup.
3) scalability: These platforms can automatically adjust based on your needs. If
you're working with a small project, they use fewer resources, saving costs.
For large projects or big data, they automatically scale up to handle the extra
work. Dynamically allocate resources based on the complexity of the task.
4) cost effective : Users only have to pay for the resources they use. There's no
need to buy expensive hardware or worry about maintenance. The platform
optimizes resources to avoid waste, saving you money.
5) integrated tools : The platform includes tools for everything: data handling,
model training, and deployment. You don't have to look for separate services
for each step of the ML process
6) pre-Built models: Many platforms offer ready-made models for common
tasks. For example, you can use models that already understand images, text,
or speech. This saves you time by not having to train a model from scratch.
7) Security: Managed ML platforms keep your data safe. They encrypt your data
to protect it from unauthorized access. These platforms also follow security
standards to comply with legal requirements.
8) Easy Collaboration: If you're working in a team, these platforms make it easy
to share work and ideas. You can share models, data, and code with others on
the same platform. It helps everyone stay on the same page and makes
teamwork easier. Multiple users can access and modify resources in real-time.
9) Monitoring and maintenance: Once the model is deployed these platforms
monitor it to make sure it’s working well. They automatically track
performance, and you get alerts if something goes wrong. The platform helps
you keep your model updated when new data comes in.
10) cloud integration : Since everything is in the cloud, there's no need for heavy
local infrastructure. You can access the platform and work from anywhere,
without needing powerful local machines. It also integrates with cloud storage
and computing services, so you don't have to worry about running out of
resources
• jupyter notebook – introduction , workflow
− cells: The notebook consists of cells, where each cell can contain code or
text. There are two main types of cells:
Code Cells: Contain code that can be executed within the
notebook.
Markdown Cells: Contain formatted text, equations, and other
narrative components.
− kernel: The kernel is responsible for executing code. When you open a
notebook, Jupyter launches a kernel associated with the language you
choose (Python is the default). The kernel maintains the state of variables
and objects during execution.
− Notebook Interface: The Jupyter interface allows you to add, delete, or
modify cells. It also lets you run code, view results, and export the notebook
to other formats (like HTML or PDF).
advantages
disadvantages :
4. Writing Documentation
You can add Markdown cells to document your process, explain your
code, and write mathematical equations in LaTeX format.
Markdown cells allow you to structure your notebook into sections, add
bullet points, hyperlinks, and even images to improve readability.
5. Adding Visualizations
You can integrate libraries like Matplotlib, Seaborn, or Plotly to generate
visualizations within the notebook.
Visualizations are automatically rendered and displayed directly beneath
the code that generates them.
Advantages:
1. User-Friendly:
The drag-and-drop interface simplifies machine learning for non-
experts and speeds up the workflow for data scientists.
2. Scalable and Flexible:
Azure ML Studio can handle large datasets and scale according to the
needs of the project, making it suitable for both small experiments and
large enterprise applications.
3. Integration with Azure Ecosystem:
Azure ML Studio works seamlessly with other Azure services like
storage, databases, and compute resources, enhancing its capabilities
and ease of use.
4. Collaborative:
The platform supports collaboration, allowing teams to work together
on projects and share insights efficiently.
5. Automated ML:
AutoML makes it easy for users to build models without needing deep
expertise, allowing for faster experimentation.
6. Secure:
With Azure’s robust security features, you can ensure that your data
and models are protected and comply with industry regulations.
1. Learning Curve:
While the platform is user-friendly, new users might still face a
learning curve, especially those unfamiliar with machine learning
concepts or the Azure ecosystem.
2. Cost:
Although Azure offers flexible pricing, the costs can add up when
dealing with large datasets or deploying models at scale. Budgeting
for usage is necessary.
3. Limited Customization in Some Areas:
While the drag-and-drop interface is helpful for beginners, it can be
limiting for advanced users who want complete control over the
model-building process.
4. Internet Dependency:
As a cloud-based service, Azure ML Studio requires an internet
connection, which might be a limitation in environments with
unreliable internet access.
5. Resource Intensive:
Running large-scale models or processing large datasets can require
significant cloud resources, which may lead to high operational costs.
Applications :
• AWS Sagemaker
− Amazon SageMaker is a fully managed machine learning (ML) service
offered by Amazon Web Services (AWS) that makes it easier to build, train,
and deploy machine learning models.
− It helps developers and data scientists to focus on creating models without
having to manage the underlying infrastructure.
1. Build Models:
SageMaker provides tools to help you prepare your data, select the right
algorithms, and create a model from scratch or using pre-built templates.
You don’t need to worry about setting up servers or managing resources.
2. Train Models:
Once you’ve prepared your data and built your model, SageMaker lets
you train it using AWS’s powerful cloud computing resources. It helps
speed up the training process by handling the infrastructure and scaling
automatically.
3. Hyperparameter Tuning:
SageMaker can automatically adjust the settings (hyperparameters) of
your model to improve its performance. This is done using techniques like
Bayesian optimization, which helps find the best parameters for your
model.
4. Deploy Models:
After training, SageMaker makes it easy to deploy your model into
production. It automatically sets up endpoints, allowing you to get
predictions from your model quickly and at scale.
5. Model Monitoring:
SageMaker provides tools to monitor the performance of your model in
real-time. You can track its accuracy, ensure it continues to work well
over time, and retrain it if needed.
6. Pre-built Algorithms:
If you don’t want to build a model from scratch, SageMaker offers several
pre-built machine learning algorithms that you can use for different tasks,
such as image classification, text analysis, and recommendation systems.
7. Notebook Instances:
SageMaker provides Jupyter Notebooks as part of the service, where you
can write and run your code interactively. It’s a convenient way to explore
data, build models, and visualize results.
8. Integration with Other AWS Services:
SageMaker integrates with other AWS services, such as AWS S3 for
storage and AWS Lambda for serverless functions, making it easier to
build end-to-end machine learning workflows.
9. Security and Compliance:
AWS SageMaker offers built-in security features like encryption, and it
complies with various standards, making it suitable for industries that
require high levels of data security and privacy.
1. Prepare Data:
First, you prepare and clean your data. SageMaker integrates with AWS
S3 for storing data, so you can easily access and process it.
2. Build and Train Models:
You select or build a machine learning algorithm and train the model on
your data. SageMaker provides several options, such as using built-in
algorithms or bringing your custom algorithms.
3. Optimize the Model:
SageMaker uses hyperparameter optimization to improve your model by
finding the best settings that make it more accurate.
4. Deploy the Model:
Once trained, the model is deployed to an endpoint, where it can start
making predictions on new data.
5. Monitor the Model:
After deployment, you can track the performance of the model, ensure
it’s working well, and retrain it if necessary.
1. Fully Managed:
SageMaker takes care of the infrastructure, so you don’t need to
manage servers or worry about scaling. This saves time and resources.
2. Flexible and Scalable:
It allows you to use a wide range of machine learning frameworks (like
TensorFlow, PyTorch) and scale up or down based on your needs. It
also integrates with other AWS services to create complete ML
pipelines.
3. Easy to Use:
SageMaker simplifies many machine learning tasks like data
preparation, training, and deployment, making it easier even for
beginners or those with less ML expertise.
4. Cost-Effective:
You only pay for the resources you use. SageMaker offers flexible
pricing, so you can scale as needed without upfront costs.
5. Speed:
SageMaker provides fast processing and model training, using AWS’s
powerful computing infrastructure. This makes it suitable for projects
with large datasets or complex models.
6. Security:
SageMaker provides features like encryption for data and complies
with industry standards, making it a secure option for businesses
dealing with sensitive data.
Disadvantages of AWS SageMaker
applications :