Chotu 101
Chotu 101
An Internship Report On
“Machine Learning with Python”
Submitted in the partial fulfillment of the requirement for the award of the Degree Of
BACHELOR OF ENGINEERING (B.E)
In
ELECTRONICS AND COMMUNICATION ENGINEERING
Submitted by
Niranjan Reddy
DV
1OX21EC057
Mrs.Laya Tojo
Assistant Professor,
Department of ECE,
The Oxford College of Engineering
Compsoft Technologies
1
THE OXFORD COLLEGE OF ENGINEERING
Department of Electronics and Communication
Bommanahalli,Bengaluru,
Karnataka 560068
CERTIFICATE
This is to certify that the Internship titled “Machine Learning with Python” carried out by
Niranjan Reddy DV, a bonafide student of The Oxford College of Engineering, in partial
fulfillment for the award of Bachelor of Engineering, in Electronics and Communication
Engineering under Visvesvaraya Technological University,Belagavi, during the year 2023-
2024. It is certified that all corrections/suggestions indicated have been incorporated in the
report.
The internship report has been approved as it satisfies the academic requirements in
respectof Internship prescribed for the course Internship / Professional Practice.
1.
2.
II
DECLARATION
III
CERTIFICATE
IV
ACKNOWLEDGEMENT
V
ABSTRACT
VI
TABLE OF CONTENTS
Acknowledgement VII
Abstract VII
1 COMPANY PROFILE
1
1.1 History of Compsoft Technologies
2 Organization Profile
3 INTRODUCTION
3.1 Introduction to ML
5
3.2 Problem Statement
4 SYSTEM ANALYSIS
VII
5 REQUIREMENT ANALYSIS
7
5.1 Hardware Requirement Specification
5.2 Software Requirement Specification
7 IMPLEMENTATION
7.1 Testing 12
8 SNAPSHOTS
9 CONCLUSION
10 FUTURE SCOPE
11 REFERENCE
VIII
MACHINE LEARNING WITH PYTHON
CHAPTER 1
COMPANY PROFILE
Sarvamoola Software Services. is a Technology Organization providing solutions for all web
design and development, MYSQL, PYTHON Programming, HTML, CSS, ASP.NET and
LINQ. Meeting the ever increasing automation requirements, Sarvamoola Software Services.
specialize in ERP, Connectivity, SEO Services, Conference Management, effective web
promotion and tailor-made software products, designing solutions best suiting clients’
requirements.
Compsoft Technologies, strive to be the front runner in creativity and innovation in software
development through their well-researched expertise and establish it as an out of the box
software development company in Bangalore, India. As a software development company, they
translate this software development expertise into value for their customers through their
professional solutions.
They understand that the best desired output can be achieved only by understanding the clients
demand better. Compsoft Technologies work with their clients and help them to define their
exact solution requirement. Sometimes even they wonder that they have completely redefined
their solution or new application requirement during the brain storming session, and here
they position themselves as an IT solutions consulting group comprising of high caliber
consultants. They believe that Technology when used properly can help any business to scale
and achieve new heights of success. It helps Improve its efficiency, profitability, reliability; to
1
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
put it on one sentence ” Technology helps you to Delight your Customers” and that is what we
want to achieve.
2
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 2
ABOUT THE COMPANY
It is the process by which new applications are created for devices running the Android
operating system. Applications are usually developed in Java (and/or Kotlin; or other such
option) programming language using the Android software development kit (SDK), but other
development environments are also available, some such as Kotlin support the exact same
Android APIs (and bytecode), while others such as Go have restricted API access.
The Android software development kit includes a comprehensive set of development tools.
These include a debugger, libraries, a handset emulator based on QEMU, documentation,
3
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
sample code, and tutorials. Currently supported development platforms include computers
running
4
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
Linux (any modern desktop Linux distribution), Mac OS X 10.5.8 or later, and Windows 7 or
later. As of March 2015, the SDK is not available on Android itself, but software development
is possible by using specialized Android applications.
2.2.2Web Application
It is a client–server computer program in which the client (including the user client- side logic)
retail sales, online auctions, wikis, instant messaging services and many other functions. web
applications use web documents written in a standard format such as HTML and JavaScript,
which are supported by a variety of web browsers. Web applications can be considered as a
specific variant of client–server software where the client software is downloaded to the client
machine when visiting the relevant web page, using standard procedures such as HTTP. The
Client web software updates may happen each time the web page is visited. During the session,
the web browser interprets and displays the pages, acts as the universal client for any web
application. The use of web application frameworks can often reduce the number of errors in a
program, both by making the code simpler, and by allowing one team to concentrate on the
framework while another focuses on a specified use case.
Frameworks can also promote the use of best practices such as GET after POST. There are
some who view a web application as a two-tier architecture. This can be a “smart” client that
performs all the work and queries a “dumb” server, or a “dumb” client that relies on a “smart”
server. The client would handle the presentation tier, the server would have the database
(storage tier), and the business logic (application tier) would be on one of them or on both.
While this increases the scalability of the applications and separates the display and the
database, it still doesn’t allow for true specialization of layers, so most applications will
outgrow this model. An emerging strategy for application software companies is to provide web
access to software previously distributed as local applications. Depending on the type of
application, it may require the development of an entirely different browser-based interface, or
merely adapting an existing application to use different presentation technology. These
programs allow the user to pay a monthly or yearly fee for use of a software application
without having to install it on a local hard drive. A company which follows this strategy is
known as an application service provider (ASP), and ASPs are currently receiving much
attention in the software industry.
Security breaches on these kinds of applications are a major concern because it can involve
both enterprise information and private customer data. Protecting these assets is an important
5
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
part of any web application and there are some key operational areas that must be included
in the
6
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
development process. This includes processes for authentication, authorization, asset handling,
input, and logging and auditing. Building security into the applications from the beginning can
be more effective and less disruptive in the long run.
2.2.3Web design
It is encompassing many different skills and disciplines in the production and maintenance of
websites. The different areas of web design include web graphic design; interface design;
authoring, including standardized code and proprietary software; user experience design; and
search engine optimization. The term web design is normally used to describe the design
process relating to the front-end (client side) design of a website including writing mark up.
Web design partially overlaps web engineering in the broader scope of web development. Web
designers are expected to have an awareness of usability and if their role involves creating mark
up then they are also expected to be up to date with web accessibility guidelines.
• Python
• Selenium Testing
7
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 3
INTRODUCTION
3.1 Introduction to ML
Machine Learning is a subset of artificial intelligence (AI) that enables systems to learn and
improve from experience automatically without being explicitly programmed. It focuses on the
development of algorithms that can analyze and interpret data, allowing computers to make
predictions or decisions based on patterns and inference.
Core Concepts:
Supervised Learning: In this type of learning, the algorithm learns from labeled data, where input-
output pairs are provided. It aims to predict the output for unseen data based on the patterns
learned from labeled examples.
Unsupervised Learning: Here, the algorithm learns from unlabeled data, seeking to discover
hidden patterns or intrinsic structures within the data. It doesn't have predefined outputs, and the
system explores the data by itself.
Reinforcement Learning: It involves an agent learning to make decisions by interacting with an
environment. The agent learns by receiving feedback in the form of rewards or penalties based on
its actions.
3.2 Problem Statement
In the rapidly evolving landscape of healthcare, there is a growing need for an intelligent and
user- friendly Chatbot solution that can enhance patient engagement, provide timely information,
and streamline communication within the healthcare system. Existing systems often lack a
personalized and conversational interface, hindering efficient interaction between patients and
healthcare providers. This Chatbot aims to address these challenges by offering a reliable and
intuitive platform that supports:
Health Education: Create a knowledge base within the Chatbot to disseminate accurate and
understandable health-related information, promoting health literacy among users.
Appointment Management: Implement features for users to schedule, reschedule, or cancel
appointments seamlessly, reducing administrative burdens on healthcare staff and enhancing
overall appointment efficiency.
Medication Reminders: Integrate functionalities for medication reminders and dosage
information, ensuring patients adhere to prescribed treatment plans and fostering better
medication management. medication management.
8
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 4
SYSTEM ANALYSIS
4.1 Existing System
The current system for machine learning with Python comprises a robust ecosystem of libraries and
frameworks, including scikit-learn, TensorFlow, and PyTorch. These components facilitate various
functionalities such as data preprocessing, model training, and evaluation. Python's versatility
allows seamless integration with tools like Jupyter Notebooks, enabling interactive development
and visualization of machine learning pipelines. Strengths of the existing system lie in its
efficiency, extensive documentation, and wide adoption within the community.
9
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 5
REQUIREMENT ANALYSIS
5.1 Hardware Requirement Specification
Designing a chatbot for a healthcare system using machine learning involves several hardware
requirements to ensure efficient performance.
Here are some specifications:
Processing Power:
A multi-core processor with sufficient processing power to handle concurrent user requests
Depending on the scale, consider processors like Intel Core i7 or higher for smaller setups, or Xeon
processors for enterprise-level deployments.
Memory (RAM):
Adequate RAM to support the machine learning models and handle large datasets efficiently.
Minimum 8GB RAM for smaller deployments, but preferably 16GB or more for better
performance, especially if dealing with complex models or large datasets.
Storage:
SSD storage for faster data access and model loading.
Depending on the size of the dataset and models, at least 256GB SSD for smaller setups, but
ideally 500GB or more.
Graphics Processing Unit (GPU):
If the chatbot utilizes deep learning models for natural language processing (NLP), having a GPU
can significantly accelerate model training and inference.
Nvidia GPUs such as GeForce RTX or Quadro series are commonly used for this purpose.
Networking:
Reliable network connectivity to ensure seamless communication between the chatbot server and
other systems in the healthcare environment.
Gigabit Ethernet or higher for fast data transfer.
Security:
Hardware-level security features to protect sensitive healthcare data.
Implementing encryption protocols and secure boot mechanisms.
Scalability:
The hardware setup should be scalable to accommodate increasing loads as the chatbot gains
popularity or the healthcare system expands.
Consider cloud-based solutions or scalable server architectures.
10
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
12
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
Conclusion:
The Software Requirement Specifications outlined above serve as a comprehensive guide for the
development of the Chatbot Health System, ensuring that it meets the needs of users while
adhering to quality, security, and regulatory standard.
13
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 6
DESIGN & ANALYSIS
System Architecture:
Describes the overall architecture, including the user interface, backend components, and
integration with existing healthcare systems. Emphasis is placed on the NLP model and machine
learning algorithms responsible for understanding and responding to user queries.
Natural Language Processing (NLP):
Details the NLP techniques used for language understanding, entity recognition, and sentiment
analysis. Discusses the preprocessing steps and the selection of NLP models tailored for
healthcare- specific language nuances.
Machine Learning Algorithms:
Explores the machine learning models employed for personalized responses and medical
recommendations. This section covers supervised learning for training on medical datasets,
reinforcement learning for continuous improvement, and potentially unsupervised learning for
discovering patterns.
Data Security and Privacy:
Addresses concerns related to patient data confidentiality and compliance with healthcare
regulations. Discusses encryption methods, access controls, and data anonymization strategies
implemented to ensure privacy.
Performance Evaluation:
Presents metrics and methodologies for evaluating the chatbot's performance, including accuracy
in understanding user queries, response time, and user satisfaction. Comparative analysis with
existing healthcare systems may be included.
Challenges and Limitations:
Identifies challenges faced during the development and implementation phases, such as handling
complex medical queries and ensuring the chatbot's reliability. Discusses potential limitations and
areas for future improvement.
Case Studies and User Feedback:
Showcases real-world case studies where the chatbot has been deployed. Presents user feedback
and testimonials, highlighting the positive impact on healthcare accessibility and information.
14
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 7
IMPLEMENTATION
Implementation is the stage where the theoretical design is turned into a working system. The
most crucial stage in achieving a new successful system and in giving confidence on the new
system for the users that it will work efficiently and effectively.
The system can be implemented only after thorough testing is done and if it is found to work
according to the specification. It involves careful planning, investigation of the current system
and it constraints on implementation, design of methods to achieve the change over and an
evaluation of change over methods a part from planning.
Two major tasks of preparing the implementation are education and training of the users and
testing of the system. The more complex the system being implemented, the more involved
will be the system analysis and design effort required just for implementation.
The implementation phase comprises of several activities. The required hardware and
software acquisition is carried out. The system may require some software to be
developed.For this, programs are written and tested. The user then changes over to his new
fully testedsystem and the old system is discontinued.
7.1 TESTING
The testing phase is an important part of software development. It is the Information zed
system will help in automate process of finding errors and missing operations and also a
complete verification to determine whether the objectives are met and the user
requirementsare satisfied. Software testing is carried out in three steps:
1. The first includes unit testing, where in each module is tested to provide its correctness,
validity and also determine any missing operations and to verify whether theobjectives
have been met. Errors are noted down and corrected immediately.
2. Unit testing is the important and major part of the project. So errors are rectified easily in
particular module and program clarity is increased. In this project entire system is
divided into several modules and is developed individually. So unit testing is conducted
to individual modules.
15
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 8
SNAPSHOTS
16
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="/static/index.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<h1>Healthcare Chatbot Build using rasa</h1>
<div>
<div id="chatbox">
<p class="botText">
<span>Please try typing full sentences as I am still learning!</span>
</p>
<p class="botText">
<span>I am a your Health assistant.</span>
</p>
<p class="botText">
<span
>Hi There! how can i help you. What Symptoms you are facing</span
<p>Fever</p>
<p>Treating a fever:
</p>
</p>
</div>
<div id="userInput">
<input id="textInput" type="text" name="msg" placeholder="Message" />
<input id="buttonInput" type="submit" value="Send" />
</div>
<script>
function getBotResponse() {
var rawText = $("#textInput").val();
var userHtml = '<p class="userText"><span>' + rawText + "</span></p>";
$("#textInput").val("");
$("#chatbox").append(userHtml);
document
.getElementById("userInput")
.scrollIntoView({ block: "start", behavior: "smooth" });
$.get("/get", { msg: rawText }).done(function (data) {
var botHtml = '<p class="botText"><span>' + data + "</span></p>";
$("#chatbox").append(botHtml);
document
.getElementById("userInput")
.scrollIntoView({ block: "start", behavior: "smooth" });
});
}
$("#textInput").keypress(function (e) {
if (e.which == 13) {
getBotResponse();
}
});
$("#buttonInput").click(function () {
getBotResponse();
});
</script>
</div>
</body>
</html>
17
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 9
CONCLUSION
In summary, the integration of chatbots within healthcare systems, enhanced by machine learning
technologies, presents a promising avenue for revolutionizing patient care. By providing
accessible, personalized, and timely support, these chatbots have the potential to improve patient
outcomes, increase efficiency in healthcare delivery, and alleviate the burden on healthcare
providers. However, successful implementation requires careful consideration of factors such as
data privacy, ongoing refinement of algorithms, seamless integration with existing healthcare
infrastructure, and addressing potential ethical concerns. With continued research, development,
and collaboration between healthcare professionals and technologists, chatbot healthcare systems
powered by machine learning hold immense promise in shaping the future of healthcare delivery.
CHAPTER 10
FUTURE SCOPE
19
Dept.ECE,2023-24, TOCE
MACHINE LEARNING WITH PYTHON
CHAPTER 11
REFERENCE
[1] Breiman, Leo, Friedman, J. H., Olshen, R. A. and Stone, C. J. (1984), “Classification and
regression trees. Monterey, CA: Wadsworth and Brooks/Cole Advanced Books and
Software”. (Google citation: 37373)
[2] Dattatreya, G. R., and Kanal, L. N. (1985), “Decision trees in pattern recognition. University
of Maryland. Computer Science”.
[3] Safavian, S. R., and Landgrebe, D. (1991), “ A survey of decision tree classifier
methodology. IEEE Transactions on Systems, Man Cybern., 21(3), 660-674”.
[4] Murthy, S. K., Kasif, S., and Salzberg, S. (1994), “A system for induction of oblique
decision trees. Journal of Artificial Intelligence Research, 2, 1-32”.
[5] Friedl, M. A., and Brodley, C. E. (1997), “Decision tree classification of land cover from
remotely sensed data. Remote Sensing of Environment, 61(3), 399-409”.
https://github.com/robinsingh051/Healthcare-chatbot
20
Dept.ECE,2023-24, TOCE