project members: nitu singh dnyaneshwari c external guide: amaresh shirsat internal guide: prof...
Post on 19-Dec-2015
219 views
TRANSCRIPT
RULES ENGINE FOR POPULARITY BASED RANKING
Project Members: Nitu Singh Dnyaneshwari C
External Guide: Amaresh Shirsat
Internal Guide: Prof Ketaki Naik
Sponsored By: Ubiqtas Technologies
AGENDA
Overview of Rules Engine Block diagram of Rules Engine Algorithms implemented Implementation details Merging rules and connector with the
framework Applications of rule engine Further enhancement of the project Questions please
OVERVIEW OF RULES ENGINE What is the rules engine? A central repository for ranking algorithms and various data sources.
What do we mean by rules?Algorithms which are used to rank data e.g page ranking algorithm.
Why are we using rule engine ?To generalize page ranking algorithm .
BLOCK DIAGRAM OF RULES ENGINE
Ranking algo
Source of data
connectors
Ranking algo & connector
User selects
Rules engine
Result
administrator
Designs the rules and appropriate connector and inserts them in framework
ALGORITHMS IMPLEMENTED
Web ranking -Page ranking algorithm -Keyword relevance -Connector to read web pages Database ranking -querying the database -searching of the data -ranking providing a recordset
PAGE RANKING ALGORITHM
What is a Page Ranking Algorithm? -A method to rank web pages. -Gives the page a numeric value. -Numeric value depends on the link
structure of the web.
continued…..
FACTORS GOVERNING A RANK OF THE PAGE
In links-Links pointing to a page
Out links-Links pointed by a page
Damping factor
A B C D
Dangling link Out-link from A
In-link to B
PR(C) = (1-dFactor) + dFactor PR (B) Out-links(B)Σ
Factors governing a rank of the page (contd…)
EXPANDED DEFINITION OF TERMS
PR(c):: PR stands for page rank of page c.
n=(1-d)::normalisation factor values range from 0 to 1.
d::damping factor value generally is 0.85 but it can range from 0 to 1.
EXPANDED DEFINITION OF TERMS (CONTD…)
PR(B)
Out-links(B)
The summation sign indicates sum of all the pages pointing to page C and divided by the number of out bound links of the page pointing to page C.
EXAMPLE
AT=
KEYWORD RELEVANCE ALGORITHM
Explanation of keyword relevance algorithm
The page which has maximum count of the
keyword is ranked high.
FACTORS GOVERNING OF KEYWORD RELEVANCE ALGORITHM Total count : total number of keywords
that occur in a webpage(repetition allowed)
Total keyword occurance :number of unique keywords that occur in a webpage(repetition not allowed)
EXAMPLE
if a page has keywords sun,moon,earth,moon then ,
total count = 4
Total keyword occurance=3
CONNECTOR
What is a Connector ?-Interface to read data from a specified data source.
Rules engine consist of two connectors -Web Connector -Database Connector
Web connector An application that gathers web graph
by navigating links
Data connector An application that gathers recordset
by navigating the travelling the record source
DIFFERENT TYPES OF CONNECTORS
IMPLEMENTATION DETAILS
PAGE RANKING ALGORITHM
Dynamic matrix of pages Using the formula for page ranking
Ranking of web pages
KEYWORD RELEVANCE ALGORITHM
Skimp through a web page
Removal of stopwords
Find out the keywords given by user in web page (repetitive and nonrepeatitive)
Rank according to total count and total keyword occurance
WEBCONNECTOR
Get the URL URL queue child URL linked list Scan child URL First URL in linked list acts as a parent URL
Go to that URL scan the entire page . URL’s present in the linked list are child
URL’s present in queue are parent.
QUERYING A DATABASE
Ms access is used at backend Different tables are used in order to
store the data set Normal pl-sql queries can be used to
query the the datbase e.g.Select *from person ;
RANKING AND PROVIDING A RECORDSET
It will perform searching through the database.
Use an sql query to rank the data
The connector collects data for which recommendation is required
The maximum recommended data is ranked high
MERGING RULES AND CONNECTOR WITH THE FRAMEWORK
Proj.dll
vc++ proj
C++
Windows application
Convert your vc project to com dll
Import your dll into the windows applic
Client side
dll
FURTHER APPLICATION OF THE PROJECT
SCRAPS=6055 FRIENDS=584
SCRAPS=2192 FRIENDS=203
SCRAPS=8872 FRIENDS=395
SCRAPS=401 FRIENDS=112
EXPLANATION OF E.G.
Design a rule for ranking a profile on basis of friends
Design a rule for ranking a profile on basis of scraps
Design a connector to get the information about number of friends and scraps
…CONTINUED
Suppose user selects rank on the basis of friends
Then in the above example “rahul” would be popped first then “sarang” then “shailu” and finally “dnyaneshwari”
REAL TIME APPLICATION OF THE PROJECT
QUESTIONS ?