The field for the present disclosure relates to ranking systems, methods and algorithms for web pages, in particular ranking of web pages in browsing histories.
For Internet searching algorithms, ranking algorithms apply authority scores to web page, which allows web pages to be canonically ranked. With the ranking, search engines can present a list of web pages in a ranked order based on the derived authority scores. One approach to evaluating page importance analyzes a user's browsing histories and determines a web page's importance based on a probability using a stationary distribution analysis of a user's browsing graph.
Embodiments of the present technology have been developed based on inventors' appreciation of certain shortcomings associated with the state of the art.
Existing algorithms do not include recency (i.e. time) of a browsing history in their analysis. Therefore, pages that were assigned a high score a few days ago may not be as authoritative for a current search, although the pages would still be attributed with their previous high scores.
Accordingly, there is a need for a system, method, device and technique that attempt to address at least some of the aforementioned issues with the current prior art schemes.
In a first aspect, a method of calculating a page rank of a web page is provided. The method comprises: accessing browsing history data associated with the web page, the browsing history data comprising time data; computing a rank score for the web page utilizing the browsing history data and the time data; and ranking the web page in a list according to the rank score.
In the method, computing the rank score may comprise: calculating a first score utilizing a browse rank score of the browsing history data and the time data; calculating a second score utilizing query dependent component for the web page; and adding the first score adjusted by a first factor with the second score adjusted by a second factor to produce the rank score.
In the method, the first factor may be mathematically related to the second factor.
In the method, the time data may emphasize browsing data from histories that are more recent than browsing data from older histories.
In the method, the time data may comprise first and second instances of time and an interval of time from a first moment in time to a second moment in time.
In the method, computing the rank score may comprise applying a derivative function to a stationary distribution of a Markov process associated with the browser history data.
In the method, computing the rank score for the web page may comprise: selecting a sequence of at least one moment in time within the interval of time; computing a first freshness value for each of the at least one moment in time and a second freshness value for a web page associated with each of the at least one moment in time; and computing a freshness measure for the web page as a function of the first and second freshness values.
In the method, the browsing history data may correspond to an interval of time from a first moment in time to a second moment in time; and computing the rank score for the web page may comprise: selecting a sequence of one or more moments in time within the interval of time, and the second moment in time, where the interval of time is divided into at least one sub-interval of time; computing for the web page a first freshness value for each moment in time of the sequence; computing for the web page a second freshness value for each moment in time of the sequence; and computing a freshness measure for the web page as a function of the first and second freshness values.
In the method, the first moment in time and each moment in time may divide the interval of time into two or more sub-intervals of time.
In the method, computing for the web page the first freshness value may utilize a creation time of the web page and a count of visits to the web page in the browsing history data during a sub-interval of time immediately preceding a sub-interval of time of each moment in time of the sequence.
In the method, computing for the web page the second freshness value may utilize a creation time of the web page and computed freshness values associated with each moment in time for web pages neighbouring the web page.
The method may further comprise computing for the web page an interim freshness measure for each moment in time of the sequence utilizing any corresponding computed interim freshness measure associated with a moment in time in the sequence immediately preceding each moment in time, if any and the second freshness value associated with each moment in time. In the method, the computed freshness measure for the web page may comprise a computed interim freshness measure associated with the second moment in time.
In the method, computing the rank score for the web page may utilize a transition probability corresponding to the web page multiplied by a function of the freshness measure.
In the method, computing the rank score for the web page may comprise: multiplying an estimated staying time for the web page derived from a transition matrix for the browsing history data by a function of the freshness measure; and multiplying a stationary probability distribution for the web page by the function of the freshness measure.
The method may further comprise applying partial derivatives to a first function of the rank score for the web page with a training data of browsing histories to identify values for parameters for a second function generating the rank score.
The method may further comprise: computing a query-dependent ranking for the web page based on a query; and computing a merged ranking for the web page as a function of the query-dependent ranking and the rank score.
In a second aspect, a server for calculating a page rank of a web page is provided. The server comprises: a processor; a database for storing records relating to browsing histories; and page ranking software operating on the server providing instructions to the processor executing any of methods provided above.
In other aspects, various combinations of sets and subsets of the above aspects are provided.
Additional aspects and advantages of the present disclosure will be apparent in view of the description which follows. It should be understood, however, that the detailed description, while indicating embodiments of the disclosure, are given by way of illustration only, since various changes and modifications within the spirit and scope of the disclosure will become apparent to those skilled in the art from this detailed description.
With reference to embodiments thereof, the technology will next be described in relation to the drawings, which are intended to be non-limiting examples of various embodiments of the present disclosure, in which:
Details of example embodiments are provided herein. The description which follows and the embodiments described therein are provided by way of illustration of an example or examples of particular embodiments of principles of the present disclosure. These examples are provided for the purposes of explanation and not limitation of those principles and of the disclosure. In the description which follows, like parts are marked throughout the specification and the drawings with the same respective reference numerals.
Before discussing details on specific features of an embodiment, a description is provided on a network having a device, as a server, that provides connections to other devices, as clients, according to an embodiment. Then, details are provided on an example device in which an embodiment operates.
First, details are provided on example networks where devices according to an embodiment may operate. Referring to
For the browsing service through servers 106 in the network 102, device 108b may browse through various websites in the Internet using a web browser in its graphical user interface (GUI). A typical browsing session may have a distinct opening event (e.g. opening of a new browsing window or tab in the GUI) and may have a distinct closing event (e.g. closing of the window for the session by an action of the user or by the browser itself). A session may be deemed to be ended after a certain period of time that the browser session is at a given website (e.g. 15 minutes at the current website displayed in the browser (e.g. www.yahoo.com) without any input activity to change the current website by the device 108b). When a web page is generated in the browser, as a user at device 108b activates a hyperlink in the web page such as through an input device (such as a mouse) that is associated with device 108b over a hyperlink in the web page, a call is initiated to retrieve a web page associated with the hyperlink from the server associated with the address of the hyperlink. The retrieved page, if available, is produced in the GUI and the browsing session continues. A monitoring application may be installed on device 108b relating to the browser that, upon user permission and/or authorization, tracks and monitors browsing sessions and produces data in a browsing history log relating to the sessions. Anonymized information describing a user's browsing activities (including for example, visited pages, times of visiting, submitted queries etc.) is stored in the browsing history log (not depicted).
For the search engine service in network 102, as a typical search engine service, search engine server 104 hosts a search engine web site that presents a GUI on a display of the device 108a, 108b accessing the search engine web site allowing text to be entered to the GUI relating to an Internet query to be executed through search engine server 104. For example, once a query is entered through the GUI (e.g. “What is the capital city of France <CR>”), the text of the query is parsed by search engine server 104; a search is initiated of web pages that are tracked by search engine server 104 to identify a set of web pages that align with the search; and a list of ranked web pages are displayed in the GUI. As a user at the device activates one or more of the search results, a web page from server 106 associated with the activated link is retrieved and displayed on device 108a, 108b.
Data relating to histories of browsing sessions and web engine searches initiated at devices 108a/108b may be tracked and stored at device 108a/108b in their local storage device(s), at search engine server 104 in its local database 104b and/or at other locations (not shown) in network 102. Browsing histories contain records of data relating to each web page visited during a browsing session, including data on when the session was started, how the session was started, what websites were visited, when the websites were visited, what the duration of browsing at each website was, how each web site was accessed, how the session ended and when the session ended and other information about the browsing session. Different portions of the session data may be stored at different locations. Devices 108a, 108b may execute software applications to monitor and track browsing sessions in a browsing history logs (not depicted). Data for browsing histories for one or more devices 108a, 108b may be stored at various locations, e.g. in databases of Internet Search Providers (ISPs), in local browser data files on devices, since browsers and search engines are integrated together in applications (e.g. in Chrome and Yandex), in databases of mobile networks, in data stored by browser plug-ins operating on devices 108a, 108a, 108b and in other applications installed in smartphones and computers. Different devices potentially present in the system 100 may access search engine server 104 and may also locally and/or remotely store data relating to their search histories. Data may be collected and amalgamated from one or more of the different locations and from one or more of the devices 108, then processed and analyzed to identify trends in web-browsing activities from users at devices 108a, 108b accessing search engine server 104. Data for browsing histories may be requested and retrieved from various local and remote sources using data acquisition techniques known in the art.
Collectively, histories 200(1) . . . (n) may be mapped into graph 204 representing a browser history for multiple devices 108a, 108b accessing multiple web pages from multiple servers 108a, 108b at different points of time. In graph 204 vertices 206(1), (2) . . . (n) represent web pages (corresponding to URLs) and edges 208(1), (2) . . . (m), shown as directed arrows, show transitions from one web site to another of one device 108a, 108b in its browsing history, where the base of the edge is the current website and the head of the edge (at the arrow) is the resulting destination web site being visited after a transition (e.g. after activation of a hyperlink in a current website to move to another website). There may be multiple edge 208 connecting two vertices 206 where different vertices reflect the noted web page transitions initiated independently by different devices 108a, 108b. Alternatively, edge 208 connecting two vertices 206 may reflect a collective web page transitions for all devices 108a, 108b. Graph 204 shows all browsing histories 200(1) . . . (n) and does not reflect, in this view, specific single browsing histories. A feature of an embodiment maps browsing histories and generates a dataset, akin to graph 204, with additional temporal information (as to the date/time of each browsing session used to populate the graph) and then applies data shaping algorithms to rank pages utilizing a browsing graph, such as graph 204. The data may be provided from Internet browsers at devices 108a, 108b and/or collected from the servers 106.
Graph 204 may be presented in table format, as foe example a table 210, containing rows and columns for each of the vertices 206(1), (2) . . . (n) represent web pages and cells 212 at the (i, j th) entry in table 210 represent browsing data for a transition from vertex 206i to vertex 206j in graph 204. Entries in the diagonal at (i, i th) entry in table 210 represent browsing data of remaining at vertex i in the browsing session. For example, the entries may include time data (e.g. reflecting the time when there was a transition between web pages for one or more instances (derived from browsing histories from one or more sources), transition data (e.g. reflecting how transitions were activated), location data (e.g. reflecting the locations of the computers where the web pages were being browsed) and other data (e.g. reflecting the type of browsing software used, etc.). It will be appreciated that table 210 contains data that can be provided from browsing histories data or from other sources.
One aspect of an embodiment provides a temporal factor (namely a “freshness” factor) that is used to apply a weighting value to a web page that is present in a browsing history for a web session. This freshness factor is calculated based on entries in table 210 and is used as a factor in ranking an importance of a web page in a browsing history.
In describing features of an embodiment, for the purpose of illustration and not limitation, the following terms and related definitions are provided describing characteristics and relationships in data relating to browsing sessions. The terms are provided in exemplary equations that one embodiment employs to map and rank aspects of the browsing sessions.
For a browsing session (denoted herein as “S”) conducted on device 108, the web pages visited in session S are denoted as pages p1(S), p2(S), . . . pk(s)(S). In the browsing history for each i ε{1, 2, . . . , k(S)−1} a record p1(S) transitioning to pi+1(S) is made (“pi(S)→pi+1(S)”). Pages pi(S), pi+1(S) are neighboring elements of the session S.
For each page (“p”) in the browsing history, s(p) represents the number of sessions that have been initiated at page “p”. For each pair of neighboring elements {pi, pi+1} from a session, I(pi, pi+1) represents the number of sessions containing that pair of neighboring elements.
Graph 204 is algebraically represented as G=(V, E), which can be seen as another algebraic representation of data presented in table 210. Therein, a set of vertices V (representing vertices 206) include all web pages identified in the browsing histories and includes additional vertex x. The set of directed edges E (representing edges 208) include ordered pairs of neighboring elements {p1, p2}. The set E also includes additional edges from the last pages of all the sessions to vertex x.
Reset probability σ(p) is denoted as a probability of choosing page p when a new browsing session is started. It is proportional to a number of sessions s(p) starting from the page p. As such for one embodiment, the reset probability can be set to zero, so that σ(x)=0.
I(p, x) denotes the number of sessions of the browsing histories that end on page p, where p→x εE. Transition probability “ω” represents a probability of activating a hyper link on page p1 to transit to p2 (“p1→p2”), so that:
Q (p) represents an estimated staying time in a browsing history at page p. A ranking value of page p, noted as a browse rank BR(p), is represented by:
BR(p)=Q(p)π(p), Equation 2
where
It will be appreciated that Equations 2 and 3 hold for p=x as well, where
{tilde over ( )}α(p)=α(1−π(x))+π(x).
A variable that an embodiment introduces into evaluating a browsing session is timeliness. Generally, BR (p) may not reflect the freshness of links in a browsing history. As such, rankings based on BR (p) alone may provide results where a user is present with rankings where “old” and “fresh” links have probabilities that are similar as there is no time component factored into their probabilities. An embodiment incorporates a freshness measure to browsing histories, providing a Freshness Browsing Probability (FBR) function. Further details on this freshness measure is provided below.
For an embodiment, as part of a freshness measure, time intervals for a browsing session are used to measure the “freshness” of a page in the session. For a browsing session having two instances of time τ and T, where τ<T, a time interval [τ, T] is divided into K parts, so that for the set of times [Ti−1, ti],
i ε{1,2, . . . ,K},iε{1,2, . . . ,K},
t
0
=τ,t
0=τ
t
i
−t
i−1=(T−τ)/K ti−ti−1=(T−τ)/K Equation 4
Time t(p) represents the time (e.g. the date) when page p from V was created. Vertex x is considered to be created at moment τ. For time interval i ε{1, 2, . . . K}, p εV is defined as a vertex (web page) created before moment ti.
An embodiment calculates a freshness score to a browser page, which can then be used in a ranking algorithm when assessing browsing histories. An embodiment defines the function F (“Freshness”) at time t=i for an initial value F0i (p) representing a freshness value of page p and its links as follows:
F
0
i(p)=a0ni(p)+b0mi(p),p≠x, Equation 5a
where a0 and b0 are non-negative parameters, ni(p)=1 if the vertex p is created in the i-th period, otherwise ni(p)=0; mi(p) is the number of visits of page in the i-th period. As an initial calculation, an embodiment can set F0i(x)=0. In Equation 5, the higher the value of Fni(x), the “fresher” its score.
Expressed differently, an embodiment provides a freshness value for web page p, (“f(p)”) that is based on a combination of a plurality of factors each of which may be provided with a weighting value relative to the other factors. In one embodiment, f(p) for web page p includes a FBR(p) component and a query dependent component (“QD(p)”) for the web page. The QD component may be provided from a document ranking function, such as BM25 (or “Okapi BM25”).
As such, a f(p) may be expressed as:
f
q(p)=λFBR(p)+(1−λ)QD(p,q) Equation 5b
where λ may be a value between 0 and 1. As such, the first factor for FBR(p) is mathematically related to the second factor for QD(p, q). Here, the mathematical relationship inversely scales the two components by the λ and (1−λ) factors. In other embodiments, independent factors can be applied to the FBR and QD components.
Equation 5a provides a calculation for an initial measure F0i(p). Equation 6, below, provides an incremental (delta) freshness value that is based on spreading the initial freshness value over vertices towards the outgoing edges of a graph. In one embodiment, spreading involves using the time associated with the browsing history (as a time marker as a freshness value for the web pages in the browser history) and arithmetically distributing a component of the time across the web pages in the browsing history as part of a rank score for the web pages. For example, in the browsing history, a transition from web page X to web page Y on Jan. 1, 2013 will be provided a certain rank score based on the freshness of that transition relative to the date of the execution of a ranking algorithm by an embodiment. Also, from the browsing history, a transition from web page X to web page Y on Feb. 1, 2013 will be provided another rank score based on the freshness of that transition relative to the date of the execution of the ranking algorithm. The transition executed on Feb. 1, 2013 may be ranked higher (i.e. more prominently) than the transition executed on Jan. 1, 2013, as the Feb. 1, 2013 transition is more recent than the Jan. 1, 2013 transition. For an embodiment, an incremental freshness value is calculated as follows:
where με[0, 1]. Wi(p) is a score assigned by the “local” freshness measure to the vertex p in the i-th period. This local measure is defined in the same way as initial measure F0i values:
An embodiment spreads the freshness measure through outgoing links from a page even if there are no fresh links among them. As such, in calculation, the weight of the page is increased by a value (e.g. increased by a value of 1) if it was created before moment ti. The results of Equation 7 illustrate an influence of neighbors on the freshness measure of the page.
With the above equations defined, an embodiment defines a freshness measure, Fi as follows:
F
i(p)=βFi−1(p)+ΔFi(p) Equation 8
As a general feature, the freshness measure decreases as time goes if there are no activities concerned with the vertex p (the parameter β is from (0, 1)). The decrease may be linear, non-linear or exponential. One embodiment applies an exponential decrease, such that:
F
i(p)=βΔF0(p) Equation 9
if there were no browsing activities during the period [τ, ti]. Equations 8 and 9 provide exemplary formulae which may be implemented in an algorithm for arithmetically distributing a component of the time across the web pages in the browsing history as part of the rank score for the web pages.
An example of application of a freshness analysis in a browse history by an embodiment is now provided, where for Equation 7 all considered vertices and edges have been assumed to be created before the time ti.
For the example, the freshness measure assigns to page p in graph G a freshness score FK(p). The value for the number of sessions, I, is factored with a freshness probability score, such that I(p1, p2) is replaced with I(p1, p2)×FK(p2). As such, a fresh transition probability ωF(p1→p2) of edge p1→p2 is provided as:
where
Following is a description of processes used to identify some exemplary values for the parameters provided in Table A. Once values Table A are determined, then a time-based rank for a web page can be computed using Equation 10.
Following is a description of another features of an embodiment. For an exemplary set of browser history data, fq(p) represents a freshness value for a page p for a query q, to which a query dependency component is added (per Equation 5b). Exemplary browsing histories comprise sets of pages V1q, V2q, . . . Vkq for each query q, which are ordered from the most relevant (“most recent”) to least relevant (“oldest”) pages. In other words, V1q, is the set of all pages with the highest score selected from among k labels, pages from the set Vkq have the lowest score. For any two pages p1εp2εVqj, a penalty score, h, is a loss function. In an embodiment, h (i, j, fq(p2)−fq(p1)) is a penalty value imposed if the position of page p1 according to a ranking algorithm is higher than the position of page p2 but i<j. For the loss function, an embodiment considers a loss with margins bij>0, where bij are fixed for each pair i,j and where 1≦i<j≦k, where h (i, j, x)=min {x+bij, 0}2, namely where h (i, j, x)=0 if x+bij>0, otherwise, h (i, j, x)=(x+bij)2. A vector ω represents a vector of parameters of browser history values. For an embodiment, the freshness value in
may be minimized by a gradient-based optimization analysis, such as gradient descent. As part of an optimization analysis, a gradient may be calculated for πf (p) instead of F (ω), since F (ω) is the sum of the functions h (i, j, x) and since the function h is composed of h(x) and fp(x). As such:
and as such:
It will be appreciated that parameters for a fresh ranking algorithm may involve tuning of its parameters. While such tuning may be achieved via various methods (e.g. manually, iteratively, trial and error, etc.), an embodiment provides a formulaic method for identifying appropriate values for the parameters of Equation 10, using derivatives.
In particular, an embodiment applies a derivative function to a stationary distribution of a Markov process of a browser history when its transition probabilities are functions of a stationary distribution of another Markov process. Partial derivatives ∂πFresh/∂α, ∂πF/∂β as solutions of a system of linear equations may be found by solving the equations:
A solution for the derivative ∂ω/∂β(q→p) may be determined by finding ∂Fk/∂β (p) from the following equation:
As such, an embodiment may utilize a system of linear equations having solutions for ∂πF/∂μ, ∂πF/∂a0, ∂πF/∂a1 (derivatives ∂πF/∂b0, ∂πF/∂b1 are the solutions of the same equations).
The first equations of the system of linear equations may be the same as Equation 15. By choosing a parameter for β, the remaining values to be determined are for ∂ΔFi/∂μ, ∂ΔFi, /∂a0 and ∂ΔFi/∂a1 For an embodiment, these values are determined as follows:
From Equations 17 and 18, values for different parameters (e.g. α, a0 and a1) can be produced for selected time intervals. As such, for an embodiment, values for parameters τ, T, K are identified and populated into Equations 17-18 to produce the values for the parameters. Values for parameters τ, T, K may be chosen from a relatively small number of values. For example, an embodiment may utilize a period of time [τ, T] for a period of 1 week and parameter K may be selected so that the length of one period [ti−1, ti] is selected from different time values, such as web pages being 1 day old, 6 hours old, 3 hours old and 1 hour old. More recent, newer (namely “fresher”) pages contained in browsing histories may be ranked higher than older pages. As such, the time data incorporated in the browsing history data emphasizes results in the history that are more recent than browsing data that are older in the history. Other time periods and intervals may be used. It will be appreciated that an embodiment may use different parameters for identifying fresher pages from older pages. One embodiment may use a relative threshold (e.g. fresher pages are pages browsed within the last hour, day, week, month etc. of the current date or an event) or an parameters for identifying fresher pages from older pages. One embodiment may use an absolute threshold (e.g. fresher pages are pages browsed before Jan. 1, 2013 or another set date or time or event).
Once values for parameters are produced from Equations 17 and 18, effectively, values for the parameters listed in Table A have been identified. As such, a time-based rank for a web page can be computed using Equation 10 using all the calculated values, producing a score for a web page. The process can be repeated for N web pages producing N scores and the web pages can be ranked according to the scores. As such, when device 108a, 108b is accessing search engine server 104 and when device 108a, 108b submits a search query to server 104, server 104 can analyze data relating to browsing histories that it has access to, select appropriate values for time frames, calculate parameters for the FBR equations (e.g. equations 17 and 18), calculate time based browsing history scores for web pages, rank the scored web pages and send the results of the search to device 108a, 108b for generation on its display, showing a ranked list of web pages as the search results for the search query.
Further detail is provided on devices that collectively implement all features of an embodiment described herein.
Referring to
Referring to
Referring to
It will be appreciated that in other embodiments the order of processes in process 500 may be re-arranged and additional processes may be provided. Process 500 is shown as executing on server 104, but its execution may be distributed among many servers/devices. Process 500 may in part or in whole be executed on device 108.
As an exemplary validation of features of an embodiment, a trial run of a fresh browse ranking algorithm following scoring and ranking features described herein was executed on a browsing history generated from searches conducted on a commercial search engine including approximately 113,000 web pages and 478,000 transitions in the browsing log. For ranking evaluation, a set of queries from the queries submitted by users during over a three day period, where a query was tracked as a query pair containing <text of query, time query>. Each query pair was manually assigned a label based on both the freshness of the page in respect to the query time and the topical relevance of the page to the query.
A relevance score was marked using grading label, such as Perfect, Excellent, Good, Fair, Bad. The browsing data was divided into two parts. In the first part, comprising 75% of the dataset, the parameters were trained as noted and the second part the algorithms described herein was tested. The parameters for a test run for an embodiment were identified by maximizing the loss-function in the way described in above. The parameters for Table A were identified utilizing a maximizing a Normalized Discounted Cumulative Gain (NDCG) metric, producing the following values:
K=24,a≈5.2,b≈1.0,a≈6.9,b≈1.1,μ=0.2,α=0.18,β=0.9.
The value for K was chosen from the set {7, 28, 56, 168}. In these cases the lengths of periods [t1+1, ti] equal to 1 day, 6 hours, 3 hours and 1 hour correspondingly. Table B illustrates results of ranking performance on metrics NDCG@5 and NDCG@10 over ranking algorithms according to an embodiment.
It will be appreciated that the embodiments relating to client devices, server devices and systems may be implemented in a combination of electronic modules, hardware, firmware and software. The firmware and software may be implemented as a series of processes, applications and/or modules that provide the functionalities described herein, typically by providing instructions for execution on a related processor. The instructions may be stored in a memory storage device on either or both of the client or server devices that is accessible by the processor. Typically, the memory device is locally located in the same device (or near to the same device) housing the processor. The modules, applications, algorithms and processes described herein may be executed in different order(s) and in parallel. Interrupt routines may be used. Data, applications, processes, programs, software and instructions may be stored in volatile and non-volatile devices described and may be provided on other tangible medium, like USB drives, computer discs, CDs, DVDs or other substrates herein and may be updated by the modules, applications, hardware, firmware and/or software. The data, applications, processes, programs, software and instructions may be sent from one device to another via a data transmission.
As used herein, the wording “and/or” is intended to represent an inclusive-or. That is, “X and/or Y” is intended to mean X or Y or both.
In this disclosure, where a threshold or measured value is provided as an approximate value (for example, when the threshold is qualified with the word “about”), a range of values will be understood to be valid for that value. For example, for a threshold stated as an approximate value, a range of about 25% larger and 25% smaller than the stated value may be used. Thresholds, values, measurements and dimensions of features are illustrative of embodiments and are not limiting unless noted. Further, as an example, a “sufficient” match with a given threshold may be a value that is within the provided threshold, having regard to the approximate value applicable to the threshold and the understood range of values (over and under) that may be applied for that threshold.
It will be seen from the disclosure that a technical problem that the disclosure addresses is how to provide improved web page rankings of using browser history data. A further technical problem that the disclosure addresses is how to provide efficient analysis of web browser history data for web page rankings.
The present disclosure is defined by the claims appended hereto, with the foregoing description being merely illustrative of embodiments of the disclosure. Those of ordinary skill may envisage certain modifications to the foregoing embodiments which, although not explicitly discussed herein, do not depart from the scope of the disclosure, as defined by the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
PCT/RU2013/000603 | Jul 2013 | RU | national |
2013137405 | Aug 2013 | RU | national |
This application claims the benefit of the priority of the Russian patent application no. 2013137405 filed on Aug. 12, 2013 and International Patent Application no. PCT/RU2013/000603 filed on Jul. 15, 2013 entitled “System, Method and Device for Scoring Browsing Sessions” which are incorporated herein by reference in their entirety. The present application is a continuation of International Patent Application no. PCT/IB2014/058860, filed on Feb. 7, 2014, entitled “System, Method and Device for Scoring Browsing Sessions”, the entirety of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/IB2014/058860 | Feb 2014 | US |
Child | 14828720 | US |