Dr. C.V.
Raman University, Bhagwanpur
Department of Computer Science and Engineering
5th Semester MOOC Progress Report
Student Information
Name: Balwant Singh
Roll Number: R22ET1CSE0023
Course Enrolled: B-Tech in Computer Science and Engineering (CSE)
Semester: 5th
Academic Year: 3rd
MOOC Course Information
Course Title: [MOOC Course Name] – Google Cloud Computing
Course Registration No.: noc24-cs131
Platform: NPTEL
Instructor(s): Prof. Soumya Kanti Ghosh | IIT Kharagpur
Course Duration: [Start Date] - [End Date] - 19 Aug 2024 - 11 Oct 2024
Week Number: 8
Week Starting Date: 7th Oct 2024
Week Ending Date: 16th Oct 2024
Weekly Progress Overview
Total No. Of Modules Assigned This Week: 5
Total No. Of Modules Completed This Week: 5
Assignments Assigned This Week: 1
Assignments Submitted This Week: 1
Total Assignments Submitted So Far: 1
Assignment Score This Week: (If Available): 90%
Quizzes/Exams Attempted: 1
Detailed Weekly Progress
Module Completion Date Major Points Learned
Module 1 9th Oct 2024 Introduction to ML
1. Overview of Machine Learning (ML):
Machines struggle to interpret the world as humans do,
making ML crucial for improving technologies like maps,
search engines, and recommendations.
2. What is ML?
Predictive Insights: ML derives future predictions from data,
unlike traditional BI, which focuses on past data analysis.
3. Scaling Business with ML:
Automation: ML processes large datasets to automate
decisions, such as adjusting prices in real-time.
4. ML Models:
Algorithms: General algorithms are trained on data to make
predictions, allowing models to apply across different
domains.
Generalization: Models are trained on past data to predict
unseen data.
5. Applications:
ML models, like those used for image classification, can be
applied to various tasks thanks to standard algorithms like
ResNet.
6. Data Importance:
High-quality data is key to accurate ML predictions.
Module 2 10th Sept 2024 Types of Machine Learning
Types of ML Algorithms:
1. Supervised Learning:
Involves training a model on labeled data (input-
output pairs) to predict outputs for new inputs.
Examples: Classification and regression tasks.
2. Unsupervised Learning:
Uses unlabelled data to find patterns or grouping
in the data.
Examples: Clustering and association tasks.
3. Reinforcement Learning:
An agent learns by interacting with an
environment, receiving rewards or penalties
based on its actions.
Used in gaming, robotics, and autonomous
systems.
Choosing the Right ML Type:
The choice depends on the problem you're
solving and the data available.
Module 3 11th Oct 2024 Building Bespoke ML Models
1. Introduction to TensorFlow
TensorFlow is an open-source, high-performance library
for numerical computation.
Originally designed for machine learning, it can be used
for any numerical computation, such as solving partial
differential equations.
TensorFlow allows you to write code in Python, and it’s
executed efficiently at scale using GPU computing.
2. Directed Acyclic Graph (DAG)
TensorFlow uses DAGs to represent computations.
Directed: has a flow direction.
Acyclic: no cycles, meaning it doesn’t loop back to the
start.
Graph: consists of nodes (mathematical operations like
adding, multiplying) and edges (arrays of data flowing
between operations).
Example: a node can represent a softmax or matrix
multiplication operation, and edges represent data arrays.
3. TensorFlow and Tensors
In TensorFlow, data is represented as tensors, which are
n-dimensional arrays.
A scalar is a simple number (like 3), a vector is a 1D
array, a matrix is a 2D array, and higher dimensions are
called tensors (e.g., 3D tensors).
Tensors "flow" through the graph, which explains the
name TensorFlow.
4. TensorFlow’s Portability and Abstraction Layers
Portability: TensorFlow code can be written in Python
but executed in C++ for low-latency predictions,
supporting both CPUs and GPUs.
Abstraction Layers:
Hardware Abstraction: TensorFlow targets different
hardware platforms, including mobile devices. The XLA
framework is used for faster math computations.
Execution Engine: Efficient, written in C++. Custom
TensorFlow operations can be registered in C++.
SDK Layer: APIs in Python, C++, Go, Java, etc., allow
easier access to TensorFlow operations.
High-Level APIs: TensorFlow includes libraries like
Keras, a high-level neural networks API, simplifying the
building of ML models.
5. Handling Large Datasets
Scaling Out: Instead of scaling up (getting a bigger
machine), it’s important to scale out by distributing the
training across many machines.
Feature Engineering: Involves human insights to refine
features and pre-process raw data. Pre-processing and
feature engineering often need to be distributed for
scalability, which is easier to handle in the cloud.
6. Model Deployment and Performance
Once trained, models need to be deployed, requiring
solutions that can scale to support prediction queries per
second (QPS).
Challenges in Deployment: Consider retraining, changing
parameters, and handling differences between the training
and production models.
TensorFlow APIs can be used from various programming
languages to deploy models and scale the prediction service
as needed.
7. AI Platforms for Model Management
AI Platform: Helps manage the training and serving of
models, addressing the potential problem of training-
serving skew (when the data used for predictions differs
from the training data).
The AI platform keeps track of pre-processing steps, feature
engineering, and versioning of models.
It ensures the deployed model is the same as the one
trained, reducing inconsistencies.
8. Stages in the Machine Learning Workflow
Data Collection: Gather a large dataset of training data with
features (inputs) and labels (target variables).
Pre-processing: Clean and prepare the data for machine
learning using TensorFlow’s pre-processing libraries or
other GCP services like BigQuery and Cloud Dataprep.
Model Development: Use TensorFlow, SciKit-Learn, or
XGBoost to build your model.
Training and Evaluation: Train the model using historical
data, adjusting hyperparameters to improve accuracy, and
evaluate its performance on test data.
Deployment: After training, deploy the model to the cloud
for predictions. Save the trained model and upload it to
Google Cloud Storage.
Predictions: Use Online Prediction (real-time HTTP
requests) or Batch Prediction to infer data with your
trained model.
9. Monitoring and Managing Models
AI platform provides APIs and tools for managing deployed
models, including monitoring jobs and using Stackdriver for
logs.
Models can be managed via a REST API, command-line tool
(G-Cloud AI), or through the GCP console.
Module 4 12th Oct 2024 Cloud AutoML
Overview of Cloud AutoML:
Cloud AutoML allows users with minimal ML experience to train
high-quality custom models easily.
It leverages Google's advanced research to deliver faster and
more accurate predictions.
Challenges of Traditional ML:
Without managed services, solving ML problems involves data
wrangling, model coding, and setting up infrastructure, which is
complex and time-consuming.
AI Platform vs. Cloud AutoML:
The AI platform reduces the infrastructure and code needed,
but still requires extensive data and remains time-intensive.
Cloud AutoML eliminates the need for coding and infrastructure
setup, requiring less data and delivering faster results.
Key AutoML Products:
1. AutoML Vision:
o Enables custom image model training via an intuitive
interface.
o AutoML Vision Edge allows exporting models to the
cloud or edge devices.
o Includes a data labeling service for annotating images
or text.
o A lab exercise involves training a model to recognize
cloud types.
2. AutoML Video Intelligence:
o Facilitates custom video model training for object
classification and tracking.
o Ideal for custom entity labeling not covered by the pre-
trained API.
3. AutoML Natural Language:
o Trains models to classify, extract, and detect sentiment
in text.
o Useful for identifying domain-specific entities and
sentiment.
4. AutoML Translation:
o Allows users to train translation models for domain-
specific language pairs.
5. AutoML Tables:
o Accelerates the transition from raw data to production-
ready models, reducing development time from months
to days.
o Use cases: customer demand prediction, fraud
detection, marketing spend optimization, and policy
risk management.
Module 5 14th Oct 2024 Google's Pre-trained ML APIs
Google's pre-trained ML APIs allow users to leverage machine learning
capabilities without needing extensive expertise. These APIs, including
the Vision API, Natural Language API, and Translation API, cater to
common ML use cases such as image classification and text extraction.
Key Components:
1. Cloud Vision API:
o Image Classification: Identifies dominant objects in
images.
o Facial Detection: Detects faces and key facial features
but does not store facial data.
o Text Extraction: Uses OCR to convert text in images into
selectable formats.
o Entity Recognition: Identifies landmarks and logos,
enabling enhanced image cataloging and search
capabilities.
2. Speech APIs:
o Cloud Text-to-Speech API: Converts text into natural-
sounding speech in over 180 voices and 30 languages.
o Cloud Speech-to-Text API: Transcribes audio into text,
supporting real-time and pre-recorded formats in 120
languages.
3. Cloud Translation API: Provides dynamic translation of text
between languages, including language detection for unknown
sources.
4. Cloud Natural Language API: Offers syntax analysis, entity
recognition, and sentiment analysis to understand text and
extract insights.
5. Cloud Video Intelligence API: Annotates videos stored in
Google Cloud, providing contextual information to make
content searchable and accessible.
***IMPORTANT***
Also Upload the Screenshot of your submitted assignment
Mentor/Instructor Feedback
Comments:
Weekly Performance Assessment:
o Overall Engagement:
o Assignment Quality:
o Concept Understanding:
o Suggestions for Improvement:
Signatures
Student's Signature: Balwantsingh
Mentor/Instructor's Signature: ______________________
Date:
This detailed MOOC Progress Report provides a comprehensive overview of the student's weekly
activities, achievements, and areas for growth within their online course. Regular completion of this
report facilitates effective monitoring, constructive feedback, and continuous improvement
throughout the duration of the course.