Intership
Intership
Internship Report
On
“INNOVATION PROJECT ON PYTHON AND MACHINE LEARNING”
Bachelor of Engineering
In
Electronics and Communication Engineering
Submitted By
SYEDA AFIFA ADILA
1BO22EC404
2023-24
i
Department of Electronics and communication Engineering
CERTIFICATE
This is to certify that the Internship entitled “Innovation Project on Python & Machine
Learning” is a bonafide work carried out by SYEDA AFIFA ADILA 1BO22EC404 in the
partial fulfillment for the award of Bachelor of Engineering in Electronics and
Communication Engineering of Visvesvaraya Technological University, Belagavi during
the year 2023-24. It is certified that all corrections and suggestions indicated for the internal
assessment have been incorporated in the report. The internship report has been approved as it
satisfies the academic requirements in respect to the work prescribed for the Bachelor of
Engineering degree.
……………………………………… ……………………………………………
ii
iii
ABSTRACT
Customer subscription prediction is a critical task for businesses aiming to enhance customer retention
and optimize marketing strategies. Accurate predictions can help companies identify potential
subscribers, tailor marketing campaigns, and improve customer engagement. This study explores the
development of a machine learning model to predict customer subscriptions using historical data,
focusing on preprocessing, feature selection, model training, and evaluation.
The dataset used in this study comprises various features such as customer demographics (age, gender),
interaction history, annual income, and subscription details (subscription length). Data preprocessing
steps include handling missing values, encoding categorical variables using Label Encoding, and
scaling numerical features with StandardScaler to ensure the data is suitable for modeling. Feature
selection is conducted to identify the most relevant variables that influence subscription behavior.
A Random Forest Classifier is chosen for its robustness, ability to handle complex interactions between
features, and inherent feature importance capabilities. The model is trained on a preprocessed dataset,
and its performance is evaluated using a comprehensive set of metrics, including accuracy, precision,
recall, F1-score, and ROC-AUC, to ensure its effectiveness and reliability. To further enhance the
model's performance, hyperparameter tuning is conducted through GridSearchCV, optimizing
parameters such as the number of trees, maximum depth, and minimum samples split.
The results of this study indicate that machine learning models, particularly ensemble methods like
Random Forest, can significantly enhance the ability to predict customer subscriptions. The model
achieved high accuracy and robustness in predicting whether customers would subscribe based on
historical data. This capability allows businesses to make data-driven decisions, improving customer
retention strategies and optimizing marketing efforts. The study also highlights the importance of
proper data pre processing and hyper parameter tuning in achieving a high-performance model.
iv
ACKNOWLEDGEMENT
First and foremost I would like to thank God Almighty for giving me the
opportunity to undertake this Internship. Without his blessings, it would not
have been possible to take up this Internship work.
I express my sincere thanks to Padma Shri Dr. B.R. Shetty, Chairman, Brindavan Group of
Institutions, Bengaluru, for providing excellent facilities in the institution.
I convey my sincere thanks to Dr. Shruti Sharma, CEO, Brindavan Group of Institutions for
her support and motivation.
I wish to express my sincere thanks to Dr. Venugopal A R, Director, Brindavan Group of
Institutions for his support and motivation.
I express my sincere thanks to Dr. Bhagappa, Principal, Brindavan College of Engineering,
Bengaluru, for providing the necessary facilities and motivation to carry out Internship work
successfully.
I express my heartfelt gratitude and humble thanks to , Dr.K Chenna Reddy, Head of
Department, Electronics and Communication Engineering, Brindavan College of
Engineering, Bengaluru for the constant encouragement and help to carry my Internship
work successfully.
I am profoundly grateful to my internal guide Mrs . Jahnavi D M Assistant Professor,
Electronics and Communication Engineering, Bengaluru for guiding and having facilitated us
to complete Internship work successfully.
I am profoundly grateful to my external guide Mr Mohammed Azhar Hussain , Chief
Technology Officer, AQMENZ Automation Pvt.Ltd , Bengaluru for guiding and having
facilitated us to completing Internship work successfully.
I would like to mention my special thanks to all the faculty members of Department of
Electronics and Communication Engineering, Brindavan College of Engineering, Bengaluru
for their invaluable support and guidance. I finally thank my family and friends who have been
encouraging me constantly and inspiring me throughout the completion of my Internship
work.
1BO22EC404
v
TABLE OF CONTENTS
1 About Company 1
1.1 Services offered 1
1.2 Overview of company 2-3
2 About the internship program 4
2.1 Benefits of internship 4-5
3 The project assignment 6
3.1 Abstract 7
3.2 Introduction 7
3.3 System Requirements and Specification 8-9
4 System design 10
4.1 Building app 10
4.2 Adding Functionalities 11
5 Implementation and results 12-16
Conclusion 17
References 18
vi
CHAPTER-1
Organization structure The organization structure is having three different departments such as
design department, software department and sales and marketing
• All type of automation projects to companies using PLC’s, SCADA embedded systems.
• We provide robots and robotic solutions to small and medium scale companies.
1 1
• Mohammed Azhar Hussain, Chief Technology Officer (CTO) AAPL DESIGN
SOFTWARE SALES &MARKETING DATA ANALYSIS
Ongoing projects
Formation of company :
Aqmenz Automation Private Limited is a private incorporated on 15th October 2018. It is
classified as Non-Govt Company and is registered at Registrar of companies, Bangalore.
Major Milestones:
We have under gone many industrial projects. Our major clients are BIAL (Bangalore
International Airport Limited), GE (General Electric) and Amics technologies
2
1.2.1 Vision and Mission
Our Motto and Vision are to create awareness & training young generation to current and future
jobs demands and also help to current and future jobs demand mean while help the students and
employees to meet the mandatory necessities of future human resourses and skill
demands. We are in the 4th industrial revolution. The technological revolution is catastrophic
like never before, hence continues awareness for the up-gradation environment is much essential.
Aqmenz Automation Pvt. Ltd. is working to help and enhance the potential of students and
employees. So that future human resources will be very beneficial, purposeful and profitable to
the nation.
1.2.2 Objectives
• AAPL had a trust in Skill India mission & vision, hence our utmost priority is to add skill to
the young Generation and make them Profitable and productive for the nation.
• Identifying young entrepreneurs and motivate, training them to establish Start-up to create
Employment as well as prosperity for the nation.
• Consultation, Sourcing and supplying highly skilled Manpower to Industry for better
efficiency and productivity.
3
CHAPTER -2
Finding work can be a real challenge, especially if you don't have any experience. Yet to get
experience you must first find a job.
It is a nasty catch that can be difficult to get around but an internship is a good way to do it.
Internships provide work experience opportunities to university students like me, recent
graduates and people considering career changes.
Universities encourage students like me to participate in internship programs because they
believe that there are many benefits that student’s get in a supervised real life work environment
in which they have the opportunity to put theory into practice.
of students after attachment These studies have 5 shown that subsequent academic performance
of students who return from internship programs tend to be better than those who did not go for
internship.
4
However, have found little evidence that intern ship programs help students to perform better in
4
class.
Apart from possible improvement in academic performance, another benefit that students get is a
chance to acquire some generic employability skills, which help them to easily transition from
the learning institution to employment.
These employability skills include teamwork, relationship building, leadership, human relations,
presentation, communication, time management, initiative, enterprise and abilities to problem
solve and persuade.
The students also improve in their use of technologies, ability to take criticism, and to see the
bigger challenges. When job opportunities are hard to come by, students increasingly relied on
internships to differentiate themselves from their non-participating counterparts.
It seems employers are willing to give employment to a job seeker who has a working experience
even if it is in the form of internship attachment.
The link between internship participation and securing of a job sometimes tends to be taken for
granted. Students expected to be provided with full-time employment at the completion of the
internship.
Many students enroll into degree programs without having a clear understanding of the
profession they are getting into.
Participation in internship programs gives students a chance to know the profession and a
possibility of making a final decision on whether they are in the right career path or not
5
CHAPTER-3
3.1 ABSTRACT
6
6
Customer subscription prediction is a critical task for businesses aiming to enhance customer retention and
optimize marketing strategies. Accurate predictions can help companies identify potential subscribers, tailor
marketing campaigns, and improve customer engagement. This study explores the development of a machine
learning model to predict customer subscriptions using historical data, focusing on preprocessing, feature selection,
model training, and evaluation.
The dataset used in this study comprises various features such as customer demographics (age, gender), interaction
history, annual income, and subscription details (subscription length). Data preprocessing steps include handling
missing values, encoding categorical variables using Label Encoding and scaling numerical features with Standard
Scaler to ensure the data is suitable for modeling. Feature selection is conducted to identify the most relevant
variables that influence subscription behavior.
3.2 INTRODUCTION
In the competitive landscape of modern business, customer retention and subscription management have become
paramount for sustaining growth and ensuring long-term success. Subscription-based models, prevalent in
industries ranging from media streaming to software services, rely heavily on understanding and predicting
customer behavior to optimize marketing strategies, personalize customer interactions, and enhance overall service
delivery. The ability to accurately predict customer subscriptions allows businesses to identify potential
subscribers, tailor promotional efforts, and improve customer satisfaction, ultimately driving revenue growth.
Traditional methods of predicting customer subscriptions often involve manual analysis and heuristic-based
approaches, which can be time-consuming and prone to inaccuracies. With the advent of machine learning,
businesses now have the opportunity to leverage advanced predictive models that can process vast amounts of data,
uncover hidden patterns, and provide more reliable predictions. Machine learning models, particularly those based
on ensemble methods, have shown considerable promise in various predictive analytics tasks due to their
robustness and ability to handle complex interactions between features.
7
This study aims to develop a machine learning model for predicting customer subscriptions using historical data.
The dataset comprises diverse features, including customer demographics, interaction history, annual income, and
subscription details. The primary objectives are to preprocess the data to ensure its suitability for modeling, select
relevant features that significantly influence subscription behavior, and train a robust predictive model.
Furthermore, the study emphasizes the importance of model evaluation and hyperparameter tuning to optimize
performance.
The methodology involves a systematic approach to data preprocessing, which includes handling missing values,
encoding categorical variables, and scaling numerical features. A Random Forest Classifier is selected due to its
ability to handle a variety of data types, robustness to overfitting, and interpretability through feature importance
measures. The model is trained and evaluated using metrics such as accuracy, precision, recall, F1-score, and ROC-
AUC, ensuring a comprehensive assessment of its predictive capabilities.
Hardware requirements:
Any 4-core CPU like the i3 9100F or better. 4 cores are a must to get the indexings
and downloads done faster, besides other stuff that goes in the background.
4GB+4GB of RAM. Or just 8GB is going to be good.
SSDs are recommended for quick load-ups. Besides, Windows doesn't run without an
SSD now.
GPUs are recommended if you are going to game development or ML works. For
games, any 4GB card works fine, make sure to use NVIDIA Cards. For ML, don't go
below an RTX 3060 12GB.
Software requirements:
Visual Studio Code. Visual Studio Code is an open-source (and free) IDE created by
Microsoft. ...
CHAPTER-4
8
SYSTEM DESIGN
The first step in building the image viewer app is to import the required libraries and create a
GUI window using Tkinter. You'll then need to specify the dimensions of the window, as well as
its title, font, and other visual elements.
Once the window is set up, you can start adding widgets to it. In this case, we'll be using label
widgets to display the images. To navigate through the images, we'll add buttons for "Next" and
"Previous" navigation. The code will load the next or previous image in the folder based on the
button that is pressed.
Next, we'll add the functionality to our image viewer. This includes defining the folder that
contains the images, parsing the values of the images, and loading each image in turn. We'll also
specify what happens when the "Next" and "Previous" buttons are pressed.
The code for this step involves a bit of logic, but don't worry, it's not too difficult. Essentially, the
code checks the current location of the image within the folder, and either increments or
decrements it depending on the button that was pressed. The code then loads the image at the
new location and displays it in the window.
9
10
4.3 Finishing Up
Finally, we'll add the finishing touches to our image viewer app. This includes
positioning the "Next" and "Previous" buttons, as well as adding a "Close" button to
close the window.
With these few simple steps, you now have a functional image viewer app built
using Python and Tkinter. You can now easily view folders of images in an
organized and user-friendly manner.
Building a simple image viewer is just the beginning of what you can do with
Python and Tkinter. There are many more features and capabilities that you can add
to this app, such as zooming in on images, adding a thumbnail view, and much
more. The possibilities are endless, and the best part is, you can build it all with just
a little bit of Python code. So go ahead and try it out for yourself!
10
CHAPTER-5
5.1 Implementation
Below is a basic implementation using Python:
11
X_scaled = scaler.fit_transform(X)
# Split the data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)
Dept.of ECE
'n_estimators': [50, 100, 200],
12
'max_depth': [None, 10, 20, 30],
'min_samples_split': [2, 5, 10]
}
# Initialize the grid search
grid_search = GridSearchCV(model, param_grid, cv=3, scoring='accuracy')
# Fit the grid search
grid_search.fit(X_train, y_train)
# Get the best parameters
best_params = grid_search.best_params_
# Initialize the model with the best parameters
best_model = RandomForestClassifier(**best_params, random_state=42)
# Train the best model
best_model.fit(X_train, y_train)
# Evaluate the best model
y_pred_best = best_model.predict(X_test)
accuracy_best = accuracy_score(y_test, y_pred_best)
print(f'Best Model Accuracy: {accuracy_best}')
Step 6: Deployment
Deployment can be done using various methods, including:
• Saving the model: Save the trained model using joblib or pickle and load it for prediction.
• Using web frameworks: Deploy the model using web frameworks like Flask or Django to create a
web serviSaving and Loading the Model
python
Copy code
import joblib
# Save the model
joblib.dump(best_model, 'subscription_model.pkl')
# Load the model
model = joblib.load('subscription_model.pkl')
# Make predictions
new_data = [[30, 1, 50000, 12]] # Example new data
13
new_data_scaled = scaler.transform(new_data)
prediction = model.predict(new_data_scaled)
print(f'Prediction: {prediction}')
14
5.2 RESULT
15
CONCLUSION
16
REFERENCES
1. Shah, D., Isah, H., & Zulkernine, F. (2019). Predicting the Effects of Inflation and Exchange
Rates on the Price of Gold Using Machine Learning. Procedia Computer Science, 154, 72-79.
2. Cavalcante, R. C., Brasileiro, R. C., Souza, V. L. F., Nobrega, J. P., & Oliveira, A. L. I. (2016).
Computational Intelligence and Financial Markets: A Survey and Future Directions. Expert
Systems with Applications, 55, 194-211.
3. Ghayekhloo, S., Paim, H. J., & Jafarinejad, M. (2015). Gold Price Forecasting Using ARIMA
Model. Journal of Multidisciplinary Engineering Science and Technology (JMEST), 2(3), 268-
275.
4. Patel, J., Shah, S., Thakkar, P., & Kotecha, K. (2015). Predicting Stock and Stock Price Index
Movement Using Trend Deterministic Data Preparation and Machine Learning Techniques.
Expert Systems with Applications, 42(1), 259-268.
5.Adebiyi, A. A., Adewumi, A. O., & Ayo, C. K. (2014). Stock Price Prediction Using the
ARIMA
Model. UKSim-AMSS 16th International Conference on Computer Modelling and Simulation,
105-111.
6. Jha, M. K., Jain, R. K., & Bhatia, S. (2012). Prediction of Stock Market Behavior: An
Application of Machine Learning. Proceedings of the International Conference on Soft
Computing
for Problem Solving (SocProS 2011), 1051-1057.
7. Aggarwal, R., & Lucey, B. M. (2007). Psychological Barriers in Gold Prices? Review of
Financial Economics, 16(2), 217-230.
8. Huang, W., Nakamori, Y., & Wang, S. Y. (2005). Forecasting Stock Market Movement
Direction with Support Vector Machine. Computers & Operations Research, 32(10), 2513-2522.
9. Zhang, G. P. (2003). Time Series Forecasting Using a Hybrid ARIMA and Neural Network
Model. Neuro computing, 50, 159-175.
17