Professional Documents
Culture Documents
Restaurant Review
Restaurant Review
(Approved by AICTE, New Delhi and Affiliated to JNTU, Hyderabad, T.S. , Accredited by NAAC with ‘B++’ Grade , Accredited by NBA)
SINGAPUR, HUZURABAD, KARIMNAGAR, TELANGANA, INDIA – 505468
• ABSTRACT
• INTRODUCTION
• EXISTING SYSTEM AND DRAWBACKS
• PROPOSED SYSTEM AND ADVANTAGES
• HARDWARE AND SOFTWARE SPECIFICATIONS
• DESIGN
• IMPLEMENTATION
• TESTING
• RESULTS
• CONCLUSION AND FUTURE WORK
• REFERENCES/BIBLIOGRAPHY
ABSTRACT
One of the most effective tools any restaurant has is the ability to track food and also in
beverage sales daily. Currently, Recommender systems plays an important role in both
academia and industry. These are very helpful for managing information overload. In this
project, we applied machine learning techniques for user reviews and analyze valuable
information in the reviews. Reviews are useful for making decisions for both customers
and owners. We build a Machine learning model with Natural Language Processing
techniques that can capture the user's opinions from users’ reviews. For experimentation,
the python language was used.
Keywords: recommender systems, machine learning, python
INTRODUCTION
• Restaurant customers give their ratings and write reviews based on their
satisfaction levels. These ratings and reviews help the other customers to make
decision on going to those restaurants. These ratings are also helpful for the
restaurant owners to make changes based their reviews for improving their
business
• Users may post their reviews as a negative or positive .In order to quantify the
reviews, we use different techniques
• In this project ,we have used Naïve Bayes algorithm to construct models and
Natural Language Processing for pre-processing text
• We apply these techniques to classify set of restaurant reviews based on number
of stars that each review received
EXISTING SYSTEM WITH DRAWBACKS:
One of the most difficult tasks is that, the selection of the software, once system requirement
is known that is determining whether a particular software package fits the requirements
• PROGRAMMING LANGUAGE PYTHON
• TOOL PYCHARM
• OPERATING SYSTEM WINDOWS
DESIGN
BLOCK DIAGRAM:
UML DIAGRAMS
Usecase Diagram:
Sequence diagram:
Collaboration diagram:
Activity diagram:
Module Description:
• For predicting the reviews of the customers, our project has been divided into following modules:
1. Data set Loading
2. Data Preprocessing
3. Data Modeling
4. Prediction
1. Data set Loading: We should collect the data from various sources like different websites, pdfs and word document.
After collecting the data we will convert it into csv file. To be able to work with data in python we use the pandas Data
Frame.
2. Data Preprocessing: Using Natural Language Processing (NLP) we eliminate stop words. Stop words are those words
which are referred as useless words in the sentence or the extra data which are of no use. For example, ”the” , ”a” , “an”,
“in” , are some of the examples of stop words in English.
3. Data Modeling: We use the classification technique known as Naïve Bayes Classifier to train the model. Naïve Bayes can
outperform even highly sophisticated classification methods.
4. Prediction: Here we use Google Chrome or Browser to predict the model or visualize the Output. When we
enter the review, the model will classify whether the review is +’ ve or _’ ve.
• It will give the Result in the form of 2 Labels:
a. Positive Label (Rating Greater than 3)
b. Negative Label (Rating Less than 3)
IMPLEMENTATION
• Implementation is the stage of the project when the theoretical design is turned out into a
working system. Thus it can be considered to be the most critical stage in achieving a
successful new system and in giving the user, confidence that the new system will work and
be effective.
TECHNOLOGIES USED:
• Python: It is a general purpose, dynamic, high level and interpreted programming language.
It supports object-oriented programming approach to develop applications. It is simple and
easy to learn and provides lots of high level data structures.
• Windows
• Python Programming (Python 3.6)
• Open source libraries: Pandas, NumPy, Skippy, matplotlib, OpenCV
MACHINE LEARNING
• Machine Learning is an application of artificial intelligence (AI) that provides system the
ability to automatically learn and improve from experience without being explicitly
programmed. Machine learning focuses on the development of computer programs that
can access data and use it learn for themselves.
• Naive Bayes: It is a classification technique based on Bayes’ Theorem with an assumption
of independence among predictors. In simple terms, a Naive Bayes classifier assumes that
the presence of a particular feature in a class is unrelated to the presence of any other
feature. Naive Bayes model is easy to build and particularly useful for very large data sets.
Along with simplicity, Naive Bayes is known to outperform even highly sophisticated
classification methods. Bayes theorem provides a way of calculating posterior probability
P(c|x) from P(c), P(x) and P(x|c). Look at the equation below:
TESTING:
Testing is the process of testing the functionality and it is the process of executing a program
with the intent of finding an error.
BLACK BOX TESTING: The base of the black box testing strategy lies in the selection of
appropriate data as per functionality and testing it against the functional specifications in
order to check for normal and abnormal behavior of the system. Now a days, it is becoming to
route the testing work to a third party as the developer of the system knows too much of the
internal logic and coding of the system, which makes it unfit to test application by the
developer. The following are different types of techniques involved in black box testing.
• Decision Table Testing
• All pairs testing
• State transition tables testing
• Equivalence Partitioning
WHITE BOX TESTING: White box testing [8] requires access to source code. Though white box
testing [8] can be performed any time in the life cycle after the code is developed, it is a good
practice to perform white box testing [8] during unit testing phase.
RESULTS
We use Machine Learning models to evaluate a model. Here we a Naïve Bayes algorithm. At back
end Deep learning algorithms like ANN (Artificial Neural Network) is used to evaluate a model.
In the below fig (a), a positive input is given and the The fig (b) is the output of the given review (Food model
predicts the review as a positive review which is very tasty) that the given input is good prediction with is above 3
star rating 3 and above star rating
[1] A Machine Learning Model for Stock Market Prediction Article by Osman Hegazy and
Mustafa Abdul Salam.
[2] The Unified Modeling Language User Guide, Low Price Edition Grady Booch, James
Rumbaugh, Ivar Jacob, ISBN: 81-7808-769-5, 91, 1997.
[3] Software Testing, CemKaner, James beach, Bret Pettiehord,ISBN: 978-0-471-120-940,
2001.
[4] Black_ Box Testing: Techniques for Functional Testing of Software and Systems
Boris Beizer - Wiley Publications, ISBN: 978-0-471-120-940, 1995.
THANK YOU