Report of the Summer Internship project
ON
AI-ML VIRTUAL INTERNSHIP
Duration: July 2024 – September 2024
BY
Ms. MALLAREDDY PRANAVI(2451-22-750-011)
Department of Computer Science and Engineering
M.V.S.R. ENGINEERING COLLEGE
(Affiliated to Osmania University & Recognized by AICTE) Nadergul,
Saroor Nagar Mandal, Hyderabad – 501 510
2023-2024
i
CERTIFICATE
ii
DECLARATION
This is to certify that the work reported in the present project entitled “AI-ML virtual
internship” is a record of bonafide work done by us as part of internship. The report is
based on the project work done entirely by us and not copied from any other source.
MALLAREDDY PRANAVI
2451-22-750-011
iii
ACKNOWLEDGEMENT
I would like to express my deepest sense of gratitude to our esteemed institute Maturi
Venkata Subba Rao Engineering College (Autonomous), which has provided us an
opportunity to fulfil our cherished desire.
It is with a sense of great respect and gratitude that I express my sincere thanks to Dr
Rajesh Kulkarni Associate Professor, Department of Computer Science and
Engineering, Maturi Venkata Subba Rao Engineering College (A) for her inspiring
guidance, supervision, and encouragement towards the successful completion of my
internship.
We are also thankful to our principal Dr. Vijaya Gunturu and Prof. J Prasanna Kumar,
Professor and Head, Department of Computer Science and Engineering, MVSR
Engineering College, Hyderabad for providing excellent infrastructure and a nice
atmosphere for completing this project successfully as apart of our B.E. Degree (CSE).
We convey our heartfelt thanks to the lab staff for allowing us to use the required
equipment whenever needed.
Finally, we would like to take this opportunity to thank our family for their support
through the work. We sincerely acknowledge and thank all those who gave directly or
indirectly their support in completion of this work.
MALLAREDDY PRANAVI
2451-22-750-011
iv
VISION
To impart technical education of the highest standards, producing competent and
confident engineers with an ability to use computer science knowledge to solve societal
problems.
MISSION
To make the learning process exciting, stimulating, and interesting. To
impart adequate fundamental knowledge and soft skills to students. To
expose students to advanced computer technologies to excel in
engineering practices by bringing out creativity in students.
To develop economically feasible and socially acceptable software.
PROGRAM EDUCATIONAL OBJECTIVES (PEOs)
The bachelor’s program in Computer Science and Engineering is aimed at preparing
graduates who will: -
PEO-1: Achieve recognition through demonstration of technical competence for
successful execution of software projects to meet customer business objectives. PEO-2:
Practice life-long learning by pursuing professional certifications, higher education or
research in the emerging areas of information processing and intelligent systems at a
global level.
PEO-3: Contribute to society by understanding the impact of computing using a
multidisciplinary and ethical approach.
PROGRAM SPECIFIC OUTCOMES (PSOS)
PSO1: Demonstrate competence to build effective solutions for computational realworld
problems using software and hardware across multi-disciplinary domains.
v
PSO2: Adapt to current computing trends for meeting the industrial and societal needs
through a holistic professional development leading to pioneering careers or
entrepreneurship.
COURSE OBJECTIVES
• To give experience to the students in solving real life practical problems with all
its constraints.
• To give an opportunity to integrate different aspects of learning with reference to
real life problems.
• To enhance the confidence of the students while communicating with industry
engineers and give an opportunity for useful interaction with them and familiarize
with work culture and ethics of the industry.
COURSE OUTCOMES
On completion of this course, the student will be able to-
• Able to design/develop a small and simple product in hardware or software.
• Able to complete the task or realize a pre-specific, with limited scope, rather than
taking up a complex task and leaving it.
• Able to learn to find alternative variable solutions for a given problem and
evaluate these alternatives with reference to pre-specified criteria.
• Able to implement the selected solution.
• Able to document the same.
vi
ABSTRACT
This is a two-phase course comprising of CLOUD FOUNDATIONS and MACHINE
LEARNING.
AWS Academy Cloud Foundations is intended for students who seek an overall
understanding of cloud computing concepts, independent of specific technical roles. It
provides a detailed overview of cloud concepts, AWS core services, security,
architecture, pricing, and support. Machine learning is the use and development of
computer systems that can learn and adapt without following explicit instructions, by
using algorithms and statistical models to analyze and draw inferences from patterns in
data.
In this course, we will learn how to describe machine learning (ML), which includes
how to recognize how machine learning and deep learning are part of artificial
intelligence, it also describes artificial intelligence and machine learning terminology.
Through this we can identify how machine learning can be used to solve a business
problem. We can also learn how to describe the machine learning process in detail and
the list the tools available to data scientists to identify when to use machine learning
instead of traditional software development methods. Implementation of a machine
learning pipeline, which includes learning how to formulate a problem from a business
request, obtain and secure data for machine learning, use Amazon Sage Maker to build
a Jupyter notebook, outline the process for evaluating data, explanation of why data
must be pre-processed. Using open-source tools to examine and pre- process data. We
can use Amazon Sage Maker to train and host a machine learning model.
It also includes in the use of cross validation to test the performance of a machine
learning model, use of hosted model for inference and creating an Amazon Sage Maker
hyperparameter tuning job to optimize a model’s effectiveness.
vii
TABLE OF CONTENTS
PAGE NOS.
Certificate on company letter head. ................................................................... i
Declaration ...................................................................................................... ii
Acknowledgements .......................................................................................... iii
Vision & Mission, PO’s, PEO............................................................................ iv
Course Objectives & Outcomes… .................................................................... v
Abstract. ........................................................................................................... vi
Table of contents. ............................................................................................. vii
List of Figures................................................................................................. viii
List of Tables .................................................................................................. ix
viii
COURSE: GOOGLE AIML VIRTUAL INTERNSHIP
UNIT 1: Program Neural Networks with TensorFlow
Introduction to Neural Networks
TensorFlow Basics
Building Neural Network Models
Training Neural Networks
Improving Neural Network Performance
UNIT 2: Get Started with Object Detection
Introduction to Object Detection
Object Detection with TensorFlow
Data Preparation for Object Detection
Training an Object Detection Model
UNIT 3: Go Further with Object Detection
Advanced Object Detection Techniques
Optimizing Object Detection Models
Evaluating Object Detection Models
UNIT 4: Get Started with Product Image Search
Introduction to Product Image Search
Feature Extraction Techniques
Building a Product Image Search Model
Evaluating Image Search Performance
UNIT 5: Go Further with Product Image Search
Advanced Feature Extraction Techniques
Fine-Tuning Product Image Search Models
Scalability in Image Search Systems
UNIT 6: Go Further with Image Classification
Advanced Image Classification Techniques
ix
Transfer Learning for Image Classification
Improving Model Accuracy and Efficiency
Evaluating Image Classification Models
x
COURSE: GOOGLE AIML VIRTUAL INTERNSHIP
UNIT 1: Program Neural Networks with TensorFlow
Introduction to Neural Networks
Neural networks are a type of machine learning model that mimic the
structure and function of the human brain to process data and make
predictions. They consist of layers of interconnected "neurons" that adjust
their parameters based on input data. These networks can learn complex
patterns from data, making them highly effective for tasks like image
recognition, language processing, and more.
TensorFlow Basics
TensorFlow is an open-source library developed by Google, designed to
simplify the process of building and deploying machine learning models. It
offers tools for handling data, creating models, and performing mathematical
operations. In this topic, we’ll cover setting up TensorFlow, understanding its
basic components like tensors (multi-dimensional arrays), and performing
operations with them.
11
Building Neural Network Models
This topic covers how to design a neural network by arranging multiple
layers, each responsible for transforming input data step-by-step. Using
TensorFlow’s Sequential and Functional API, you’ll learn how to stack layers,
configure activation functions, and create models suited for different tasks,
such as classification and regression.
Training Neural Networks
Training involves feeding data to a neural network, adjusting its weights to
minimize error and improve predictions. This topic introduces loss functions
(which measure error) and optimizers like SGD and Adam, which adjust
weights to minimize loss. You’ll learn to train a model, evaluate its accuracy,
and visualize training results with TensorBoard.
Improving Neural Network Performance
Techniques such as dropout and regularization are useful to prevent
overfitting, where a model learns too much from training data and performs
poorly on new data. You’ll also explore hyperparameter tuning, which
involves adjusting model settings to improve accuracy, and data
augmentation, a method of creating varied training data for better
generalization.
12
UNIT 2: Get Started with Object Detection
Introduction to Object Detection
Object detection is a technique that identifies and locates objects within an
image, different from classification which only labels an entire image. This
topic covers the basics of object detection, its use cases, and how it’s applied
to tasks like facial recognition, self-driving cars, and retail analytics.
Object Detection with TensorFlow
TensorFlow offers a dedicated Object Detection API that simplifies training
and deploying object detection models. You’ll learn to set up this API, explore
pre-trained models, and use transfer learning—a technique that adapts existing
models to new tasks with less data and time.
Data Preparation for Object Detection
Object detection requires labeled data with bounding boxes around objects of
13
interest. This topic covers collecting images, using tools to annotate objects
with labels, and organizing the data for model training. Proper data
preparation is crucial for model accuracy.
Training an Object Detection Model
After data preparation, you’ll train a model by configuring settings like batch
size and learning rate. You’ll learn to monitor training progress, check for
overfitting, and make adjustments for optimal performance. Training involves
multiple steps, including validation to measure accuracy.
UNIT 3: Go Further with Object Detection
Advanced Object Detection Techniques
This topic explores popular advanced models like R-CNN, SSD, and YOLO.
These models are designed for efficient and accurate detection of multiple
objects in real-time. You’ll understand the strengths and trade-offs of each
approach and when to use them.
Optimizing Object Detection Models
Fine-tuning an object detection model involves adjusting hyperparameters,
balancing detection speed and accuracy, and optimizing computational
resources. Techniques like model pruning and quantization can help deploy
models on mobile devices or low-power environments.
Evaluating Object Detection Models
Evaluation metrics like Intersection over Union (IoU), mean Average Precision
(mAP), and precision-recall curves help assess a model’s accuracy in detecting
objects. You’ll learn to use these metrics to compare models and improve their
reliability.
14
UNIT 4: Get Started with Product Image Search
Introduction to Product Image Search
Product image search uses visual features to find similar items, helpful in
applications like e-commerce. This topic introduces the basics of visual search,
how it differs from text search, and how it can enhance user experience by
finding visually similar products.
Feature Extraction Techniques
In image search, feature extraction identifies important visual characteristics
(like color, shape, texture) that define a product. You’ll learn to use pre-trained
models to extract these features, transforming images into data representations
for comparison.
15
Building a Product Image Search Model
By comparing features extracted from images, this topic covers how to build a
search model that finds similar products based on visual similarity. You’ll learn
to implement similarity measures like cosine similarity to rank search results.
Evaluating Image Search Performance
Evaluating search accuracy involves measuring how well the model ranks
relevant products. Techniques include precision, recall, and ranking metrics that
help determine whether the model provides accurate and helpful results.
16
UNIT 5: Go Further with Product Image Search
Advanced Feature Extraction Techniques
For improved accuracy, this topic covers more sophisticated feature extraction
methods, like fine-tuning convolutional neural networks (CNNs) to detect
unique product characteristics. It also explores embeddings, which convert
images into dense feature vectors.
Fine-Tuning Product Image Search Models
Fine-tuning adjusts the search model for specific products by retraining it on
relevant images. This helps the model distinguish fine details, improving search
relevance and user satisfaction, especially for large product databases.
Scalability in Image Search Systems
Scalability involves handling large databases and quick searches. Techniques
like hashing and indexing help store and retrieve features efficiently, ensuring
that searches remain fast as the database grows.
17
UNIT 6: Go Further with Image Classification
Advanced Image Classification Techniques
Explore advanced methods like convolutional neural networks (CNNs) for
recognizing complex image patterns. Techniques like data augmentation and
transfer learning can help improve classification accuracy and adapt models for
specific tasks.
Transfer Learning for Image Classification
Transfer learning uses pre-trained models to save time and data when training
new models. You’ll learn to adapt models trained on large datasets (like
ImageNet) for tasks with limited data.
Improving Model Accuracy and Efficiency
Fine-tuning, dropout, and regularization help boost model performance. You’ll
explore methods to reduce computational costs and make models suitable for
real-world use, including mobile deployment.
Evaluating Image Classification Models
Accuracy, precision, recall, and confusion matrices are metrics for evaluating
classification models. This topic covers how to interpret these metrics and
improve model performance based on evaluation results.
18
CONCLUSION
The Google AI/ML Virtual Internship program offers a powerful journey
through key machine learning and AI concepts, enabling participants to
build skills that address real-world challenges. Each unit carefully
introduces complex topics in a structured manner, starting from
foundational neural network programming with TensorFlow to advanced
techniques in object detection, image search, and classification. This
progression ensures that learners acquire both theoretical knowledge and
practical skills, allowing them to develop and deploy AI solutions across a
variety of applications.
By guiding interns through object detection, the program reveals how AI
can understand and interact with the physical world, while the product
image search modules highlight the potential of AI in enhancing user
experiences in e-commerce and other domains. These modules also stress
the importance of feature extraction and model fine-tuning, critical steps in
achieving effective visual search systems. As participants advance to image
classification, they gain insights into building robust models that categorize
and make sense of diverse data, a skill applicable to industries ranging from
healthcare to agriculture.
Ultimately, this internship cultivates a comprehensive skill set in AI and
ML, encouraging participants to think creatively and innovate. Through
hands-on projects, interns learn to tackle AI challenges, optimize model
performance, and work with cutting-edge tools like TensorFlow. This
experience not only prepares them to develop impactful solutions but also
lays a foundation for continued growth in one of the most dynamic fields
today, opening doors to future opportunities in AI-driven careers.
19
REFERENCES
Here’s a set of references that would be helpful to cite for a Google AI/ML Virtual Internship or
related projects:
1. TensorFlow Documentation
TensorFlow is the primary tool used in this course. The official documentation provides
comprehensive information on setting up TensorFlow, building neural networks, and
implementing machine learning models.
o TensorFlow. (n.d.). TensorFlow Documentation. Retrieved from
https://www.tensorflow.org
2. Deep Learning with Python by François Chollet
This book covers fundamental concepts in deep learning and explains how to use the Keras
API (built into TensorFlow) to create neural networks, including model building, training, and
evaluation.
o Chollet, F. (2018). Deep Learning with Python. Manning Publications.
3. Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow by Aurélien
Géron
This book is a well-regarded resource for machine learning concepts and practical examples,
covering TensorFlow, neural networks, and various ML models, including object detection
and image classification.
o Géron, A. (2019). Hands-On Machine Learning with Scikit-Learn, Keras, and
TensorFlow (2nd ed.). O'Reilly Media.
4. ImageNet Database
ImageNet is one of the largest datasets for image classification and object detection,
frequently used for pre-trained model evaluations and transfer learning.
o Deng, J., Dong, W., Socher, R., Li, L.-J., Li, K., & Fei-Fei, L. (2009). ImageNet: A
Large-Scale Hierarchical Image Database. In CVPR09. Retrieved from
http://www.image-net.org
5. YOLO (You Only Look Once) - Real-Time Object Detection
YOLO is a popular object detection model for real-time applications. Its research papers and
resources explain the architecture and practical implementation.
o Redmon, J., Divvala, S., Girshick, R., & Farhadi, A. (2016). You Only Look Once:
Unified, Real-Time Object Detection. In Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition (CVPR). Retrieved from
https://pjreddie.com/yolo/
6. Amazon Web Services (AWS) Machine Learning Documentation
AWS provides documentation and guides on implementing machine learning models in the
cloud, covering services for model training, deployment, and scaling.
o Amazon Web Services. (n.d.). AWS Machine Learning Documentation. Retrieved
from https://docs.aws.amazon.com/machine-learning/index.html
20
21