Unit 6-CCD
Unit 6-CCD
2. Cloud-Based ML Platforms
3. End-to-End ML Platforms
H2O.ai: An open-source platform designed to make machine learning
faster and easier. H2O provides tools like Driverless AI for automatic
feature engineering, model training, and hyperparameter tuning.
1. Cost
Open-Source Systems:
o Cost: Free to use, but may require investments in hardware,
infrastructure, and skilled personnel to set up, maintain, and
optimize the systems.
o Example Tools: TensorFlow, PyTorch, Scikit-learn.
o Benefit: No direct licensing fees or vendor lock-in.
o Downside: Hidden costs such as time, support, and infrastructure
can arise.
Commercial Systems:
o Cost: Paid subscription or usage-based pricing (especially for
cloud-based services), but they often come with comprehensive
features, support, and resources.
o Example Tools: Amazon SageMaker, Google AI Platform,
DataRobot.
o Benefit: Costs are predictable, and enterprises can allocate
resources efficiently without worrying about infrastructure.
o Downside: Long-term subscriptions and vendor lock-in can result
in higher total costs over time.
2. Ease of Use
Open-Source Systems:
o Ease of Use: Typically require significant technical expertise to set
up, configure, and maintain. Open-source frameworks often
involve coding, library integrations, and managing dependencies.
o Benefit: Provides greater flexibility and control over the ML
workflow.
o Downside: Steeper learning curve, especially for teams without
deep ML expertise.
Commercial Systems:
o Ease of Use: Generally offer user-friendly interfaces, including
drag-and-drop tools, automated pipelines (AutoML), and
simplified deployment options.
o Benefit: Suitable for non-technical users or smaller teams without
extensive ML backgrounds.
o Downside: Customization may be limited compared to open-
source systems, and some solutions may "abstract away" too much
for highly specialized use cases.
9. Vendor Lock-In
Open-Source Systems:
o Lock-In: No vendor lock-in since the code is open-source and can
be modified, transferred, or used in any environment.
o Benefit: Full ownership and control of models, data, and
infrastructure.
o Downside: Open-source solutions may require a significant time
and effort investment for migration, customization, or integration
with other systems.
Commercial Systems:
o Lock-In: Often results in vendor lock-in as organizations become
dependent on the platform’s ecosystem, APIs, and services.
o Benefit: Seamless integrations within the vendor ecosystem.
o Downside: Migrating away from the platform can be costly and
time-consuming, especially if proprietary tools are used.
1. Code Execution: Notebooks allow you to write and execute code one
cell at a time. You can rerun cells independently, which is great for
interactive exploration and debugging.
2. Inline Documentation: You can add markdown cells that contain text,
images, HTML, and LaTeX (for mathematical equations). This makes it
easy to document the process alongside the code.
3. Rich Visualizations: Jupyter integrates with many data visualization
libraries, allowing charts, plots, and graphs to be rendered directly within
the notebook.
4. Kernel-based Execution: A notebook connects to a kernel that executes
the code. While Python is the default kernel, Jupyter supports many other
languages, such as R, Julia, and Scala, through additional kernels.
5. Interactive Widgets: Jupyter supports the creation of interactive UI
elements such as sliders, dropdowns, and buttons. These can be useful for
creating interactive data applications or tuning parameters interactively.
To use Jupyter Notebook, you need to install it. It is commonly installed via
Anaconda (a popular Python distribution), or it can be installed using pip:
bash
Copy code
pip install notebook
bash
Copy code
jupyter notebook
Once Jupyter is running, the dashboard interface opens, where you can
create a new notebook.
Notebooks consist of cells. Each cell can contain either code or
markdown text.
To create a new notebook, click New and select the language kernel (e.g.,
Python 3).
You can type your code into the code cells and execute them by pressing
Shift + Enter.
Each cell is independent, meaning you can run cells in any order.
The results of the code execution, such as variables, plots, or printed
output, are displayed directly beneath the code cell.
Example:
python
Copy code
a = 10
b = 20
print(a + b)
Output:
Copy code
30
You can switch any cell to Markdown mode (using the dropdown or
pressing M on the keyboard) to write text, which is useful for
explanations or instructions.
Markdown also supports LaTeX for writing mathematical equations.
Example:
markdown
Copy code
## This is a Markdown Cell
You can write regular text here, as well as **bold** and *italic* styles.
One of the powerful features of Jupyter is that you can create rich
visualizations directly within the notebook.
Popular libraries like Matplotlib, Seaborn, Plotly, or Bokeh can be used
to generate plots.
python
Copy code
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 30, 40]
plt.plot(x, y)
plt.title("Sample Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()
Example:
python
Copy code
!pip install numpy
9. Interactive Widgets
python
Copy code
import ipywidgets as widgets
def square_number(n):
return n**2