WO2014079534A1 - System and method for determination of personalization in online service provider responses - Google Patents

System and method for determination of personalization in online service provider responses Download PDF

Info

Publication number
WO2014079534A1
WO2014079534A1 PCT/EP2013/003292 EP2013003292W WO2014079534A1 WO 2014079534 A1 WO2014079534 A1 WO 2014079534A1 EP 2013003292 W EP2013003292 W EP 2013003292W WO 2014079534 A1 WO2014079534 A1 WO 2014079534A1
Authority
WO
WIPO (PCT)
Prior art keywords
responses
personalized
vanilla
entities
personalization
Prior art date
Application number
PCT/EP2013/003292
Other languages
French (fr)
Inventor
Nisheeth Shrivastava
Anirban Majumder
Original Assignee
Alcatel Lucent
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel Lucent filed Critical Alcatel Lucent
Publication of WO2014079534A1 publication Critical patent/WO2014079534A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Definitions

  • the present subject matter relates to systems and methods for determination of personalization in online access content for users provided by online service providers and, particularly but not exclusively, for determination of a level of personalization in responses from the online service providers for the users.
  • online service providers commonly offer personalized experience to the users, while browsing, by customizing contents in web-pages displayed based on user preferences or interests.
  • the contents in the web-pages which are understood as online access contents, are personalized or customized for the users in terms of type of search results, ordering of search results, advertisements, recommendations, snippets, etc.
  • the contents may also be customized in terms of their display, lay-out, fonts, colors, sizes, etc.
  • the OSPs may identify the user based on a variety user identification attributes including user's login details, cookies, Internet Protocol (IP) address, Media Access Control (MAC) address, International Mobile Station Equipment Identity (IMEI) number, and such.
  • IP Internet Protocol
  • MAC Media Access Control
  • IMEI International Mobile Station Equipment Identity
  • the OSPs infer the user preferences and interests based on the user's profile, status, history of activities and interactions with the respective OSP, and such.
  • the history of activities and interactions include search queries, Uniform Resource Locators (URLs) visited, items clicked, time spent, contents liked/disliked, contents shared, conversations, blogs/microblogs, and such, by the user.
  • the OSPs may also infer the user interests based on user's history including personal details updated with the OSPs, user's geographical locations visited, and other online services actively used by the user. [0004] Although the personalization done by the OSPs make the online services helpful and useful for the users, the users typically has no or substantially insignificant knowledge and control over the data collated by the OSPs for building the user profiles, and inferred and used for personalization.
  • the data collated and used for personalization may include sensitive data belonging to the user, which the OSPs may use to infer user interests and preferences, and personalize the contents in the displayed web-pages.
  • the user may not want the OSPs or any other party to use such sensitive data for any purposes, including personalization, as the user may then give up his privacy.
  • the knowledge of such data or information can facilitate the user to have a control over the information inferred and used by the OSPs for the personalization.
  • a personalization determination system is described.
  • the personalization determination system is configured to fetch personalized responses for a user from an OSP and fetch vanilla responses from the OSP.
  • Each of the personalized responses is based on a query and at least one user identification attribute and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes.
  • the personalization determination system is also configured to determine relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP, and compute relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses.
  • the relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
  • a method includes fetching personalized responses for the user from an OSP and fetching vanilla responses from the OSP.
  • Each of the personalized responses is based on a query and at least one user identification attribute, and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes.
  • the method also includes determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP, and computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses.
  • the relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
  • a computer readable medium having a set of computer readable instructions having a set of computer readable instructions.
  • the computer readable instructions on the computer readable medium when executed, perform acts including fetching personalized responses for a user from an OSP and fetching vanilla responses from the OSP; determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP; and computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses.
  • Each of the personalized responses is based on a query and at least one user identification attribute, and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes.
  • the relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
  • Figure 1 schematically illustrates a system architecture implementing a personalization determination system, in accordance with an embodiment of the present subject matter
  • Figure 2 illustrates a method for determination of personalization in responses from online service providers for users, in accordance with an embodiment of the present subject matter.
  • the present subject matter relates to systems and methods for determination of personalization in responses from online service providers (OSPs) for users.
  • OSPs online service providers
  • a user through a user device, such as desktop computers, laptop computers, smart phones, PDAs, may be accessing or using one or more online services provided by the OSPs.
  • the OPSs are capable of personalizing the online access contents, hereinafter referred to as the contents, in the web-pages provided by them for display to the user on his user device.
  • the web-pages provided by the OPSs may be understood, and hereinafter referred to, as responses from the OPSs. Such responses are generated and provided, by the OSPs, based on the nature of queries sent from the user device to the OSPs.
  • the OSP may be providing a search service, where the response may be provided based on a query comprising a search string entered by the user.
  • the response from such an OSP may be personalized for the user using one or more of the user's identification attributes, such as the session cookies.
  • the response may be personalized to include some search results higher in the order, with a special font and/or color, and include highlighted or blinking advertisements placed on top of the response (the web-page).
  • Such personalization may be done based on history of activity of the user with the OSPs, including past search queries, URLs visited, items clicked, time spent on a web-page, and such.
  • the OSP may be providing a social networking service, where the response may be provided based on a query at the time the user is logged in.
  • the response from such an OSP may be personalized for the user using one or more of the user's identification attributes, such as the login details.
  • the response may be personalized to include highlighted or blinking advertisements placed on top of the response (the web-page).
  • Such personalization may be done based on profile details and status, and based on history of activity of the user with the OSPs, including items clicked, contents liked/disliked, contents shared and messages, and such.
  • the personalization i.e., a level of personalization
  • the responses from OSPs for users is determined, by the user, through setting and preference tools provided by the OSPs.
  • Such tools by the OSPs provide details of categories or topics related to user interests of the users as predicted or inferred by the OSPs.
  • Some examples of the categories or topics are "Phones”, “Sports”, “Universe”, “Health”, “Online Dating”, “Footwear”, “Movies”, and such, depending on the user interests. These tools also allow the user to view and edit the categories under which the user interests are inferred.
  • the conventional tools may provide updated categories to the user from time to time, but the list of categories provided is predefined and limited, and at a substantially higher level. With a predefined or limited categories, the user may not be able to determine whether the categories provided by the tools are the only categories under which the OSPs are personalizing the responses. Thus, with the conventional tools provided by the OSPs, the users are not able to gather substantially complete details of categories or topics under which user interests are inferred and, hence, used for personalization in the responses from the OSPs to the user. Furthermore, the conventional setting and preference tools provided by the OSPs are configured specifically for the respective OSP, and can not be utilized for assessing on the personalization over different OSPs.
  • profile re-building tools are known which are capable of building user profile based on user's history of activities and interactions, such as past search queries, URLs visited, items clicked, etc., during usage of one or more online services.
  • Such profile re-building tools may be used to re-build user profiles based on the user's history of activities and interactions available with the OSPs.
  • the users may be able to determining or infer details of the user interests inferred by the OSPs for personalization of responses.
  • the profile re-building tools are configured specifically for the respective OSP, and also require user's history of activities and interactions available with the OSPs.
  • the conventional methodology of determining or inferring the details of personalization, based on re-built user profiles, may not be effective as the OSPs may share partial details of user's history of activities and interactions, or may not share such details at all, for the purposes of re-building the profiles. This will affect the users to determine the substantially true and complete details of personalization done by the OSPs. Further, such conventional methodology is substantially inefficient, as with the re-built profiles it can not be determined what all information is inferred by the OSPs, and which inferred information is actually being used for the personalization, and which inferred information is not used, by the OSPs.
  • Embodiments of systems and methods for determination of personalization in responses from the OSPs for users are described herein.
  • the systems and the methods of the present subject matter are configured to determined a level of personalization in the responses from the OSPs for the users, and identify the categories or topics related to user interests and preferences predicted or inferred by the OSPs for the personalization.
  • the personalization in the responses is determined based on personalized responses from the OSPs for the users and based on vanilla responses, corresponding to the personalized responses, from the OSPs.
  • the personalized responses are the responses from the OSPs, customized for the users, based on queries to the OSPs and at least one user identification attribute leveraged on the queries.
  • a query may be in the form of a request, for example, an http:// request, sent to the OSPs for using the online services.
  • the user identification attributes are understood as data or information that are indicative of the identity of the users and/or the user devices through which the users are accessing or using the online services.
  • Each user may have a unique set of user identification attributes.
  • the vanilla responses are the responses from the OSPs, based on the same queries as those for the personalized responses, but without any user identification attribute leverage on to them.
  • the basic query that generates a vanilla response is same as that for a personalized response, each vanilla response associates or corresponds to one personalized response.
  • the vanilla responses do not include any degree of personalization as the OSP cannot identify the user in the query received by the OSP. It may be understood that the queries with or without leveraged with the user identification attributes are sent to the OSPs from user devices, through which the users are accessing or using the online services.
  • the personalized responses and the vanilla responses from the OSPs are captured and processed in relation to each other to identify the categories or topics that relate to the user interests inferred by the OSPs, and to determine the level of personalization on the responses from the OSPs for the users.
  • the identified and determined details are provided to the respective users, which facilitate the users to have knowledge of information or data inferred and used by the OSPs for personalization of responses for the users.
  • the capturing and the processing of the personalized responses and the vanilla responses from the OSPs in relation to each other facilitate in finding all the categories or topics under which the user interests are inferred and are actually being used by the OSPs for personalization in their responses to the users.
  • the user would be able to have a substantially improved control over the information that may be inferred and used by the OSPs for personalization in the future responses.
  • the user may also be able to take necessary actions to isolate one or more inferred categories or topics that are sensitive or undesirable for the personalization.
  • the methodology of the present subject matter can be implemented to determine the personalization done by any type of OSPs, and is agnostic to changes in the personalization techniques employed by the OSPs for personalizing the responses for the users.
  • the methodology of the present subject matter is substantially efficient in comparison to some of the conventional methodologies for determining the personalization done by the OSPs as the user's history of activities and interactions, or user's profile or status details, with the OSPs are not relied upon.
  • the methodology of the present subject matter can be implemented efficiently for determining the personalization, even if the user's history of activities and interactions, or user's profile or status details, with the OSPs are not publicly available or not shared, in full, by the OSPs.
  • the systems and methods described herein may be implemented in a variety of network environments employing one or more user devices communicatively coupled over a communication network to one or more entities associated with the OSPs.
  • the user devices are the devices through which the users access or use the online services provided by the OSPs.
  • the user devices may include desktop computers, laptop computers, smart phones, PDAs, and the like.
  • the communication network may include Global System for Communication (GSM) network, Universal Telecommunications System (UMTS) network, Long Term Evolution (LTE) network, Personal Communications Service (PCS) network, Time Division Multiple Access (TDMA) network, Code Division Multiple Access (CDMA) network, Next Generation Network (NGN), Public Switched Telephone Network (PSTN), and Integrated Services Digital Network (ISDN), Internet Protocol (IP) Network.
  • GSM Global System for Communication
  • UMTS Universal Telecommunications System
  • LTE Long Term Evolution
  • PCS Personal Communications Service
  • TDMA Time Division Multiple Access
  • CDMA Code Division Multiple Access
  • NTN Next Generation Network
  • PSTN Public Switched Telephone Network
  • ISDN Internet Protocol
  • IP Internet Protocol
  • the system in accordance with the implementation of the present subject matter, includes a personalization determination system.
  • the personalization determination system may be implemented in a network path between the users, i.e., the user devices, and the OSPs, i.e., the entities associated with the OSPs and configured to provide responses to the users based on the queries received from them.
  • the personalization determination ⁇ ystem may be implemented as an application or a plug-in in the user device of a user, which can be configured by the user for the purposes of determination of personalization in the responses from the OSPs.
  • the personalization determination system may be implemented in a computing device, such a server, communicatively coupled to one or more user devices and to one or more of the entities associated with the OSPs.
  • the computing device implementing the personalization determination system may be referred to as a remote proxy server through which the communications between the users and the OSPs are routed.
  • the personalization determination system may be configured by a third party for the purposes of determination of personalization in the responses from the OSPs to the users.
  • the personalization determination system is configured to capture and process the personalized responses and the corresponding vanilla responses from the OSPs, and, hence, identify the categories or topics that relate to user interests inferred by the OSPs and determine a level of personalization in the responses from the OSPs for the users over the identified categories or topics.
  • personalized responses for the user from the OSP are fetched.
  • each personalized response is provided by the OSP based on a query, leveraged with at least one user identification attribute, from the user device.
  • vanilla responses corresponding to the personalized responses are fetched from the OSP.
  • each vanilla response is based on the query for the corresponding personalized response, but without any user identification attribute leveraged on the query.
  • the query for the corresponding personalized response is intercepted and modified to remove the user identification attributes therein. The query without the user identification attributes is sent to the OSP for fetching the vanilla response.
  • the categories or topics may be the subject under which user interests can be inferred by the OSP for the personalization.
  • the categories or topics incjude ⁇ plurality of words, and the information in the personalized responses and the vanilla responses may be mapped with each of the categories to determine the relative relevance.
  • the categories or topics are hereinafter referred to as 'topical categories'.
  • topical categories include, but are not restricted to, "Sports", “Health”, “Movies”, and the like, and such topical categories include, but not restricted to, the words like, (soccer, cricket, hockey, outdoor, indoor, ....), (doctor, patient, hospital, medicine, nursing, dental, ), and (action, horror, thriller, language, english, french, classic, .).
  • the relative relevance of a personalized response or a vanilla response to the topical categories is indicative of how much or to what degree the personalized response or the vanilla response is relevant relatively to each of the multiple topical categories.
  • relative importance of the topical categories are computed based on the determined relative relevance and based on comparison of the personalized responses and the vanilla responses.
  • the relative importance of the topical categories is indicative of the topical categories under which user interests are inferred for the personalization by the OSP, and is indicative of a level of personalization for the user by the OSP.
  • the level of personalization may be understood as the amount of personalization done in the personalized responses for the user by the OSP on different topical categories indicated from the computation, in accordance with the present subject matter.
  • the topical categories and the computed relative importance of the topical categories are provided to the user. This will facilitate the user to have knowledge of information or data inferred and used by the OSP for personalization of responses for the users. Based on the provided information, the user can identify the topical categories under which the user interests are largely inferred and used for the personalization, and can isolate one or more topical categories that are sensitive or undesirable for the user for any disclosure. Further, the user may take necessary actions, such logging off, deleting cookies, deleting the browsing history, etc., to have a substantially improved control over the information inferred and, hence, used by the OSP for the personalization.
  • personalized entities and vanilla entities in all the personalized responses and in all the vanilla responses are identified.
  • the entities i.e., the personalized entities of a personalized response and the vanilla entities of a vanilla response, are items, such as search results, advertisements, articles, snippets, recommended links, personal profile details, messages, blogs, etc., contained in the response (web-page) to the user. These entities along with their relative positions, fonts, colors, or any other display attributes, form the full contents in the responses from the OSP.
  • topical categories based on the text contents in each of the personalized entities and in each of the vanilla entities are identified.
  • the topical categories may be identified by comparing and mapping the text contents in the personalized entities and in the vanilla entities with a predefined set of topical categories stored in a database associated with the personalization determination system.
  • the topical categories identified individually for all the personalized entities and the vanilla entities, all the topical categories are collated in as a set of topical categories.
  • a topical relevance mapping vector is computed for each personalized entity and for each vanilla entity over the topical categories.
  • the topical relevance mapping vector comprises a distribution of relative relevance factors for the entity over the multiple topical categories. Each relative relevance factor is indicative of a degree of relevance of the entity on one of the topical categories in relation with other topical categories.
  • the topical relevance mapping vectors for the personalized entities and the vanilla entities provide information on the relative relevance of the personalized responses and the vanilla responses to the multiple topical categories.
  • personalized entities in each of the personalized responses are identified, and relative rank weights are assigned to the set of personalized entities for the each personalized response.
  • the vanilla entities in each of the vanilla responses are identified, and relative rank weights are assigned to the set of vanilla entities for the each vanilla response.
  • the relative rank weights assigned to the personalized entities are indicative of order of importance of the personalized entities in the respective personalized response
  • the relative rank weights assigned to the vanilla entities are indicative of order of importance of the vanilla entities in the respective vanilla response.
  • the order of importance, and hence the assignment of the relative rank weights are based on one or more factors, such as a location of entity in the response, and a display attribute of entity, for example, font, size, color, highlighting, flashing, etc.
  • the personalized entities for each personalized response are arrange in a set, and the vanilla entities for each vanilla response are arranged in a set, for the comparison of the personalized responses and the vanilla responses for computing the relative importance of the topical categories.
  • the respective set of personalized entities is compared with the respective set of vanilla entities, and the entities present in the set of personalized entities but missing in the set of vanilla entities are appended to the end of the set of vanilla entities.
  • the entities present in the set of personalized entities and missing in the set of vanilla entities are referred to as the missing- personalized entities.
  • the appending of the missing-personalized entities is based on the relative rank weights of the missing-personalized entities.
  • the set of personalized entities and the set of vanilla entities for each personalized response and the corresponding response are pair-wise compared.
  • ranks of personalized entities of the personalized response are identified in the set of vanilla entities of the corresponding vanilla response.
  • a rank of a personalized entity is indicative of the position of that personalized entity in the set of vanilla entities.
  • the rank may be a numeral, such as 1, 2, 3, and so on.
  • a personalization vector is computed, where the personalization vector is indicative of the relative importance of the topical categories.
  • the personalization i.e., the topical categories under which the user interests are inferred by the OSPs and used for personalization and the level of personalization in the responses from the OSPs can be identified and determined in a substantially efficient manner, in real-time, while the users are accessing or using the online services.
  • the systems and the methods of the present subject matter facilitate in determining, in a substantially efficient manner, the information related to user interests inferred and actually being used for personalization, by the OSPs.
  • the described methodologies can be implemented in hardware, firmware, software, or a combination thereof.
  • the processing units can be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • processors controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof.
  • system encompasses logic implemented by software, hardware, firmware, or a combination thereof.
  • the methodologies can be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein.
  • Any machine readable medium tangibly embodying instructions can be used in implementing the methodologies described herein.
  • software codes and programs can be stored in a memory and executed by a processing unit.
  • Memory can be implemented within the processing unit or may be external to the processing unit.
  • memory refers to any type of long term, short term, volatile, nonvolatile, or other storage devices and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
  • the functions may be stored as one or more instructions or code on a non transitory computer-readable medium.
  • Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program.
  • Computer-readable media may take the form of an article of manufacturer.
  • Computer-readable media includes physical computer storage media.
  • a storage medium may be any available medium that can_bejiaccessed by a computer.
  • such computer-readable media can comprise RAM, ROM, EEPROM, CD- ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
  • instructions and/or data may be provided as signals on transmission media included in a communication apparatus.
  • a communication apparatus may include a transceiver having signals indicative of instructions and data.
  • the instructions and data are configured to cause one or more processors to implement the functions outlined in the claims. That is, the communi'cation apparatus includes transmission media with signals indicative of information to perform disclosed functions. At a first time, the transmission media included in the communication apparatus may include a first portion of the information to perform the disclosed functions, while at a second time the transmission media included in the communication apparatus may include a second portion of the information to perform the disclosed functions.
  • FIG. 1 schematically illustrates a system architecture 100 implementing a personalization determination system 102 for determining personalization in responses from OSPs for users, in accordance with an embodiment of the present subject matter.
  • the personalization determination system 102 is implemented in a network path between the users and the OSPs.
  • the personalization determination system 102 is communicatively coupled to a plurality of user devices 104-1 , 104- 2, ... , 104-N, through which the users access and use one or more online service.
  • the user devices 104 include, but are not restricted to, desktop computers, laptop computers, smart phones, PDAs, and the like.
  • the personalization determination system 102 is also communicatively coupled to an OSP entity or, simply, an OSP 106, which are provide the online service to the users and are capable to personalizing the responses, i.e., the web-pages sent to the users depending on user interests inferred by them.
  • Figure 1 shows one OSP 106 communicating with the personalization determination system 102.
  • the personalization determination system 102 may be communicatively coupled to a plurality of OSPs for the purpose of determination of personalization in the responses from them.
  • Jhe personalization determination system 102 may be implemented, individually, in the user devices 104.
  • the personalization determination system 102 may be implemented in a computing device, such as a remote proxy server.
  • the personalization determination system 102 may be communicatively coupled to the OSP 106, and to the user devices 104, as the case may be, over a communication network.
  • the communication network may be a wireless or a wired network, or a combination thereof.
  • the communication network can be a collection of individual networks, interconnected with each other and functioning as a single large network. Examples of such individual networks include, but are not limited to, GSM network, UMTS network, LTE network, PCS network, TDMA network, CDMA network, NGN, PSTN, ISDN, and IP network.
  • the communication network includes various network entities, such as gateways and routers; however, such details have been omitted to maintain the brevity of the description. Further, it may be understood that the communication between the personalization determination system 102, the OSP 106, and the user devices 104 may take place based on the communication protocol compatible with the communication network.
  • the communication network along with other entities, includes a standard telecommunication network entity (not shown) that may include one or more of BSC, BTS, VMSC/VLR, Radio Network Controller (RNC), Node B, etc., depending on the type of communication network.
  • a standard telecommunication network entity may include one or more of BSC, BTS, VMSC/VLR, Radio Network Controller (RNC), Node B, etc., depending on the type of communication network.
  • RNC Radio Network Controller
  • the personalization determination system 102 includes processor(s) 108.
  • the processor(s) 108 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
  • the processor(s) 108 are configured to fetch and execute computer-readable instructions stored in the memory.
  • processors may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software.
  • the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
  • explicit use of the term "processor” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), non-volatile storage.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA field programmable gate array
  • ROM read only memory
  • RAM random access memory
  • non-volatile storage Other hardware, conventional and/or custom, may also be included.
  • the personalization determination system 102 also includes interface(s) 1 10.
  • the interface(s) 1 10 may include a variety of software and hardware interfaces that allow the personalization determination system 102 to interact with the OSP 106 and with the user devices 104, as the case may be. Further, the interface(s) 1 10 may enable the personalization determination system 102 to communicate with other communication and computing devices, such as web servers and external repositories.
  • the interface(s) 1 10 may facilitate multiple communications within a wide variety of networks and protocol types, including wire networks, for example, LAN, cable, IP, etc., and wireless networks, for example, WLAN, cellular, satellite- based network, etc.
  • the personalization determination system 102 includes memory 1 12, coupled to the processor(s) 108.
  • the memory 1 12 may include any computer-readable medium known in the art including, for example, volatile memory (e.g., RAM), and/or non-volatile memory (e.g., EPROM, flash memory, etc.).
  • the personalization determination system 102 includes modules 1 14 and data 1 16.
  • the modules 1 14 may be coupled to the proeessor(s) 108.
  • the modules 1 14, amongst other things, include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types.
  • the modules 1 14 may also be implemented as, signal processor(s), state machine(s), logic circuitries, and/or any other device or component that manipulate signals based on operational instructions.
  • the modules 1 14 further include modules that supplement applications on the personalization determination system 102, for example, modules of an operating system.
  • the data 1 16 serves, amongsL other things, as a repository for storing data that may be fetched, processed, received, or generated by one or more of the modules 1 14.
  • the data 1 16 is shown internal to the personalization determination system 102, it may be understood that the data 1 16 can reside in an external repository (not shown in the figure), which may be coupled to the personalization determination system 102.
  • the personalization determination system 102 may communicate with the external repository through the interface(s) 1 10 to obtain information from the data 1 16.
  • the modules 1 14 can be implemented in hardware, instructions executed by a processing unit, or by a combination thereof.
  • the processing unit can comprise a computer, a processor, a state machine, a logic array or any other suitable devices capable of processing instructions.
  • the processing unit can be a general-purpose processor which executes instructions to cause the general-purpose processor to perform the required tasks or, the processing unit can be dedicated to perform the required functions.
  • the modules 1 14 may be machine- readable instructions (software) which, when executed by a processor/processing unit, perform any of the described functionalities.
  • the machine-readable instructions may be stored on an electronic memory device, hard disk, optical disk or other machine-readable storage medium or non-transitory medium.
  • the machine-readable instructions can be also be downloaded to the storage medium via a network connection.
  • the modules 1 14 of the personalization determination system 102 includes a response fetcher 118, an entity extractor 120, a topic extractor 122, a personalization computing module 124, and other module(s) 126.
  • the data 116 of the personalization determination system 102 includes response data 128, personalization computation data 130, and other data 132.
  • the other module(s) 126 may include programs or coded instructions that supplement applications and functions, for example, programs in the operating system of the personalization determination system 102, and the other data 132 comprise data corresponding to one or more other module(s) 126.
  • the personalization determination system 102 may seek permission and confirmation from the user to access the contents, i.e., the responses provided to the user by the OSP 106.
  • the permission may be actively by providing login details, or passively by allowing the personalization determination system 102 to access the responses from the OSP 106 while the user is accessing or using the online service provided by the OSP 106.
  • the login detail may be the same as those required for using the online service of the OSP 106.
  • the response fetcher 1 18 is configured to fetch personalized responses from the OSP 106 to the user.
  • the OSP 106 may or may not require the user to log in for using the online service provided by them; however, the OSP 106 may provide responses to the user, with contents in the responses personalized for the user.
  • the user through the user device 104, may send queries to the OSP 106, for example, through an http: interface, and obtain responses from the OSP 106.
  • the queries from the user device 104 are leveraged with at least one user identification attribute, such as login details, cookies, MAC address, IP address, IMEI number, and the like.
  • the queries in an example, are in the form of http:/ links.
  • the responses may be in the form of html web-pages, or any other supported format, such as xml responses, json responses, and the like, depending on the type of OSP 106.
  • the response fetcher 1 18 fetches these responses from the OSP 106 to the user for the queries sent by the user.
  • the response fetcher 1 18 may fetch the personalized responses from the OSP 106, either actively based on the login-based permission by the user, or passively based on permission, without any login, from the user while the user is using the online service of the OSP 106.
  • the response fetcher 118 may fetch the personalized responses for q number of queries, where q > 1.
  • the fetched personalized responses are denoted as (PI , P2, P3, ... , Pq).
  • the personalized responses (P) fetched by the response fetcher 1 18 are stored in the response data 128.
  • the response fetcher 1 18 fetches vanilla responses corresponding to all the personalized responses.
  • a vanilla response is obtained based on the query as that for a personalized response, but without any of the user identification attribute leveraged on the query.
  • the response fetcher 118 obtains the query for the personalized response, and generates a modified query based on the original query, to fetch the vanilla response. It may be understood that the modified query is leveraged with any of the user identification attributes. Further, the type of modified queries generated by the response fetcher 1 18 for fetching the vanilla responses may depend on the type of OSP 106 for which the personalization is to be determined.
  • the response fetcher 1 18 fetches q number of vanilla response corresponding to the q number of personalized responses (PI, P2, P3, ... , Pq).
  • the fetched vanilla responses are denoted as (VI, V2, V3, ... , Vq).
  • the vanilla responses (V) fetched by the response fetcher 118 are stored in the response data 128.
  • the response fetcher 1 18 may generate modified queries by removing the information or data related to user identification attributes from the original query for the personalized response.
  • the response fetcher 1 18 may generate modified queries with new or dummy login details, different from those of the user, for fetching the vanilla responses.
  • the personalization determination system 102 may monitor activities of multiple users with the OSP, and create an average profile by aggregating the responses provided to the multiple users. With such an OSP, the response fetcher 1 18 may fetch such an aggregated response and the aggregated response is considered . as the vanilla response for further processing.
  • Such a vanilla response may be a reference response corresponding to all the personalized responses fetched by the response fetcher 1 18.
  • the entity extractor 120 After fetching the personalized responses and the corresponding vanilla responses, the entity extractor 120 identifies and extracts personalized entities and vanilla entities in the personalized responses and the vanilla responses, respectively.
  • the personalized entities and the vanilla entities hereinafter, collectively may be referred to as the entities.
  • the entity extractor 120 individually parses each of the personalized responses and each of the vanilla responses.
  • the entities are items contained in the responses from the OSP 106.
  • the vanilla entities identified for an i th vanilla response (Vi) are denoted as ⁇ 1 .
  • the identified personalized entities ( ⁇ ) and vanilla entities ( ⁇ ) identified by the entity extractor 120 are stored in the response data 128.
  • Table 1 illustrates some examples of OSPs, and the entities in the responses from those OSPs. It may be understood to a skilled person that the OSPs and the corresponding entities are not restricted to the ones listed in Table 1. The details listed in Table 1 are for the purposes of providing examples. Table 1
  • the entity extractor 120 assigns relative rank weights to the entities ( ⁇ ' and ⁇ ') corresponding to each personalized response (Pi) and each vanilla response (Vi).
  • a relative rank weight for an entity ( ⁇ ', ⁇ 1 ) is indicative of an order of importance of that entity ( ⁇ 1 , ⁇ 1 ) in the corresponding response (Pi, Vi) with respect to other entities of the same response (Pi, Vi).
  • the relative rank weights may be assigned to the corresponding entities ( ⁇ ' and ⁇ 1 ) based on one or more factors.
  • the factor may include, but are not restricted to, location of entity in the response, and display attributes of entity, such as text font, size, color, highlighting, and flashing.
  • the entity extractor 120 arranges the entities ( ⁇ 1 and ⁇ ') for the each personalized response (Pi) and for the each vanilla response (Vi) individually in a set.
  • the arrangement of entities ( ⁇ ' and ⁇ 1 ) in the respective sets is based on the relative rank weights. For example, the entities may be arranged in the decreasing order of their relative rank weights.
  • ⁇ 1 ⁇ ⁇ ' ⁇ , ⁇ ' 2 , ... , ⁇ ' ⁇ ⁇ , where m is the number of personalized entities in the personalized response (Pi), and n is the number of vanilla entities in the vanilla response (Vi).
  • the sets of personalized entities and vanilla entities ( ⁇ and ⁇ ) are stored in the response data 128.
  • the assignment of relative rank weights may depend on the type of OSP and the type of entity in the response from such OSP.
  • the response personalized response or the vanilla response
  • the response may include entities like search results, advertisements, and other suggested search links. It may be understood that the search results will be located in the response in an order, for example, one below the other.
  • the search results can be ranked from top to bottom based on their positions. The ranking may be in the form of numerals 1 to r for r number of search results.
  • the relative rank weights (wL) based on the location of entity may be, but is not restricted to, 1/r, or l/t r , where t > 1.
  • the relative rank weights (wL) may be wr multiplied with c center , where C center is a predefined constant greater than 0.
  • the relative rank weights (wL) based on the location of entity may be, but not restricted to, C top , C left , C nght , and C bottom , where C top , C left , C nght , and C bottom are predefined constants greater than 0, such that C center > C top > C left > C right > C bottom .
  • the relative rank weights (wL) based on the location of entity may be same as that for the advertisements, but is not restricted to, C top , C left , C right , and C bottom .
  • the relative rank weights (wF) based on the font of entity may be, but is not restricted to, C fon * font size, where C is a predefined constant greater than 0.
  • the example herein describes relative rank weights based on location, fonts and color as the factor, relative rank weights based on other factors may be similarly assigned.
  • the overall relative rank weight (w) for an entity may be average of relative rank weights (wL), (wF), (wC), and so on.
  • the entity extractor 120 pair-wise compares the set of personalized entities ⁇ 1 ⁇ and the set of vanilla entities ⁇ 1 ⁇ for each personalized response (Pi) and the corresponding vanilla response (Vi) to identify the missing-personalized entities.
  • the missing-personalized entities are the personalized entities that are present in the set of personalized entities ⁇ 1 ⁇ but missing in the set of vanilla entities ⁇ 1 ⁇ . Based on the comparison, the entity extractor 120 appends the missing-personalized entities in the set of vanilla entities ⁇ 1 ⁇ .
  • the missing- personalized entities may be appended at the end in the set of vanilla entities ⁇ 1 ⁇ and based on the relative rank weights of the missing-personalized entities.
  • the arranged sets of entities ⁇ and ⁇ are used for further processing, as described later in the description.
  • the arranged sets of entities ⁇ and ⁇ are stored in the response data 128.
  • the topic extractor J 22 identifies and collates all the extracted entities ( ⁇ ' and ⁇ ') in a set.
  • the topic extractor 122 may be configured to monitor responses provided by the OSP 106, or by one or more other OSPs, for one or more other users. Based on the monitoring, the topic extractor 122 may identify and extract entities in those responses, and collate such entities also in the set of entities ⁇ E ⁇ for further processing.
  • the set of entities ⁇ E ⁇ is stored in the response data 128.
  • the topic extractor 122 extracts text contents in each entity (Ek) in the set ⁇ E ⁇ .
  • the entities (E) may include text contents therein, along with other displayable content.
  • the text contents extracted from each of the entities (E) is arranged in a set by the topic extractor 122.
  • the topic extractor 122 Based on the set of text contents ⁇ D ⁇ , the topic extractor 122 identifies and extracts topical categories that relate with each text contents (Dk). As mentioned earlier, the topical categories may be the subjects under which user interests can be inferred by the OSP for the personalization.
  • the set of text contents ⁇ D ⁇ are stored in the response data 128.
  • the topic extractor 122 compares and maps the text contents (Dk) with a set of predefined topical categories. Table 2 illustrates details of some predefined topical categories in the set.
  • Each topical category includes plurality of words and probability factors (PF) corresponding to the each word.
  • the probability factor (PF) corresponding to each word is indicative of the weight or relevance of that word in the topical category.
  • a high probability factor (PF) for a word implies that the word is more relevant to the topical category.
  • the topic extractor 122 compares and maps the words in the text contents (Dk) with the words in the predefined topical categories.
  • That predefined topical category is identified and extracted for that text contents (Dk). For example, if the text contents of an entity relate to medicine, the predefined topical categories "Medicinal Treatment”, “Brain”, “Healthcare”, and such are identified and extracted for that text contents. Similarly, if the text contents of an entity relate to painting, the predefined topical categories "Color”, and such are identified and extracted for that text contents.
  • the predefined topical categories may be stored in the personalization determination system 102, or stored in an external database with which the topic extractor 122 may communicate for the purpose of identification and extraction of topical categories.
  • the topic extractor 122 identifies and extracts topical categories individually for all the text contents from the set of text contents ⁇ D ⁇ . Based on the identification and extraction, the topic extractor 122 collates all the identified topical categories in a set.
  • the set of identified and extracted topical categories ⁇ is stored in the response data 128.
  • the topic extractor 122 then computes a topical relevance mapping vector for each entity (Ek) over the set of topical categories ⁇ .
  • the topical relevance mapping vector comprises a distribution of relative relevance factors for the entity (Ek) over the topical categories, and each relative relevance factor is indicative of a degree of relevance of the entity (Ek) on one of the topical categories in relation with other topical categories.
  • a relative relevance factor for an entity (Ek) with respect to a topical category may be determined based on the probability factors (PF) corresponding to the words in the topical category which match or relate to the text contents (Dk) of the entity (Ek).
  • the relative relevance factors for an entity (Ek) over the topical categories may be determined by adding or multiplying the probability factors (PF) corresponding to the words in the each individual topical category, which match or relate to the text contents (Dk) of the entity (Ek), and then normalizing the computed values to make the sum total of all the relative relevance factors for the entity (Ek) as 1.
  • the topical relevance mapping vector ⁇ 0 ⁇ may be ⁇ 0.8, 0.01 , 0.15,
  • the values 0.8, 0.01, 0.15, 0.0 are based on the probability factors for the words in the topical category "Medicinal Treatment", “Brain”, “Healthcare”, “Color”, respectively, matching or related to the text contents, and the sum total of the values in each topical relevance mapping vector ⁇ 0 ⁇ is equal to 1.
  • the 4 th element of the topical relevance mapping vector ⁇ 0 ⁇ has a value 0.0, as the text contents related to medicine may not match or relate to any word in the topical category "Color".
  • the topic extractor 122 may identify and extract topical categories for the entities (E), and determine the topical relevance mapping vectors ⁇ 0 ⁇ for all the entities based on a conventional topic modeling algorithm, such as Latent Dirichlet Allocation algorithm.
  • the topical relevance mapping vectors ⁇ 0 ⁇ for the personalized entities ( ⁇ ) and vanilla entities ( ⁇ ) provide information on the relative relevance of the personalized responses and the vanilla responses to the multiple identified topical categories.
  • the topic extractor 122 determine the relative relevance of the personalized responses and - the vanilla-responses to the set- of identified topical categories-based on corresponding computed topical relevance mapping vectors ⁇ .
  • the personalization computing module 124 After arranging and forming the sets of entities ( ⁇ and ⁇ ) for all the personalized responses (P) and all the vanilla responses (V) by the entity extractor 120, and after computing the topical relevance mapping vectors ⁇ 0 ⁇ for all the entities ( ⁇ and ⁇ ) by the topic extractor 122, the personalization computing module 124 computes relative importance of the identified topical categories based on the determined relative relevance and based on comparison of the personalized responses with the vanilla responses.
  • the personalization computing module 124 computes the relative importance of the topical categories by computing a personalization vector which is indicative of the topical categories under which user interests are inferred for the personalization for the by the OSP 106 and is indicative of a level of personalization for the user by the OSP 106 based on the identified topical categories.
  • the personalization computing module 124 may compute the personalization vector based on the computation of a predefined distribution function / individually for each of the personalized responses (P).
  • the predefined distribution function /for a personalized response (Pi) is defined as:
  • personalization vector
  • the rank of a personalized entity is indicative of the position of the personalized entity in the set of the vanilla entities.
  • the ranks are numerals, such as 1 , 2, 3, and so on.
  • the predefined distribution functions / as mentioned in equation (1) are computed for all personalized responses (P I , P2, ... , Pq), and multiplied together to obtain a single distribution function F.
  • the distribution function F /PI */P2* . . . *f Pm .
  • the personalization vector ⁇ is represented as ⁇ , ⁇ 2 , ... , ⁇ - ⁇ , where ⁇ is the total number of topical categories identified and extracted for all the text contents in the set ⁇ D ⁇ .
  • the term ⁇ * ⁇ ⁇ ⁇ in the distribution function signifies how well the personalized entity ( ⁇ j ) matches with topical categories under which user interests are inferred for the personalization of the personalized response (Pi).
  • the value of ⁇ is indicative of how much importance is given to the topical categories for inferring the user interests for the personalization of the personalized response (Pi), ⁇ takes a value from 0 to 1.
  • the value of ⁇ equal to 1 signifies that the OSP 106 gives a high importance to the user interests for the personalization but no importance to the rank of a personalized entity in the corresponding vanilla response.
  • the value of ⁇ equal to 0 signifies that there is no personalization in the personalized response (Pi) based on user interest.
  • the term (i - ⁇ ' ⁇ * ⁇ )) signifies the effect of ranking of the personalized entity ( ⁇ j ) in the vanilla response (Vi).
  • value of personalization vector ⁇ and ⁇ are assigned iteratively such that the distribution function F is maximum.
  • the set of values of the elements of the personalization vector are indicative of the level of personalization in the personalized responses for the user by the OSP 106, over the identified set of topical categories ⁇ .
  • the elements in the personalization vector are ordered in conjunction with the elements or the topical categories in the set of identified topical categories.
  • the value of each element of the personalization vector indicates the_degree or the . . level at which, the corresponding topical category in the set of topical categories ⁇ is inferred and used for personalization in relation to other identified topical categories.
  • the identified topical categories with higher corresponding values in the personalization vector are inferred more by the OSP 106 for the personalization of the responses to the user.
  • the computed personalization vector ⁇ is stored in the personalization computation data 130.
  • the personalization computing module 124 may compute the personalization vector ⁇ using the distribution function / and a statistical estimation technique, like maximum likelihood estimator.
  • the personalization determination system 102 is configured to provide the identified topical categories and the computed relative importance of the topical categories based on the computed personalization vector ⁇ to the user on his user device 104.
  • the topical categories that have higher relative relevance factors in the personalization vector may be displayed on the user device 104 to the user.
  • the displayed topical categories and the corresponding relative relevance factors will enable to user to understand what information about him, i.e., his interests, are inferred by the OSP 106 and used for personalization in the responses to him from the OSP 106.
  • the personalization determination system 102 may be configured to provide, along with the identified topical categories, a list of certain words from the identified topical categories which may be helpful for the user to gather a substantially improved knowledge on the his interests inferred, and actually being used for personalization, by the OSP 106.
  • the user may take actions, such as logging off from the service, deleting cookies, deleting his browsing history, modifying his profile to limit the personal details therein, and such. With such actions, the user may control the information about him that may be inferred by the OSP 106 for personalization.
  • the information may include sensitive or private information of the user.
  • the personalization determination system 102 is configured
  • the personalization jdetermination system 102_ is configured to provide to the user, the topical categories identified, based on the computation as described above, under which the user interest are largely inferred by the OSP 106 for personalization. This may be done by providing, for example, displaying, top few identified topical categories.
  • the personalization determination system 102 may be configured to obtain an input or a feedback from the user for the topical categories (for example, sensitive topical categories) for which he is interested to know the level of personalization. Accordingly, the personalization determination system 102 may provide the details of the level of personalization, i.e., the relative relevance of those topical categories to the user.
  • the user may provide a feedback to the personalization determination system 102 for adding one or more topical categories in the set of topical categories ⁇ for which the user may want the personalization determination system 102 to monitor for the personalization in the responses from the OSP 106.
  • Figure 2 illustrates a method 200 for determination of personalization in responses from OSPs for users, in accordance with an embodiment of the present subject matter.
  • the method 200 is directed to describe the determination of personalization in responses from one OSP for a user.
  • the method 200 can be performed for multiple users and for multiple OSPs.
  • steps of the method 200 can be performed by programmed computers.
  • program storage devices for example, digital data storage media, which are machine or computer readable and encode machine-executable or computer-executable programs of instructions, wherein said instructions perform some or all of the steps of the described method.
  • the program storage devices may be, for example, digital memories, magnetic storage media such as a magnetic ⁇ disks and magnetic tapes, hard drives, or optically readable digital data storage media.
  • the embodiments are also intended to cover both communication network and communication devices configured to perform said steps of the exemplary method.
  • the method 200 for for determination of personalization in responses from OSPs for users may be implemented in. a variety of computing devices working in different network environments; in an embodiment described in Figure 2, the method 200 is explained in context of the aforementioned personalization determination system 102 for the ease of explanation.
  • permission is taken and received by the personalization determination system 102 from the user to contents in the responses from the OSP 106 sent to the user. With the permission, the responses from the OSP 106 to the user are fetched and processed for determining the personalization done by the OSP 106 for the user.
  • personalized responses from the OSP 106 to the user are fetched by the personalization determination system 102.
  • the personalized responses may be fetched actively or passively based on the permission from by the user, as described earlier.
  • vanilla responses corresponding to the personalized responses are fetched from the OSP 106 at block 206.
  • original queries associated with he personalized responses are obtained and modified queries are generated based on the original queries to fetch the vanilla responses.
  • the modified queries are sent to the OSP 106 for fetching the vanilla responses corresponding to the personalized responses.
  • the modified queries for the vanilla response are the original queries without any user identification attribute leveraged on to them.
  • personalized entities and vanilla entities are identified and extracted individually in all the personalized responses and vanilla responses, respectively.
  • the personalized responses and the vanilla responses may be parsed by the personalization determination system 102.
  • relative rank weights are assigned to the personalized entities and to the vanilla entities corresponding to each personalized response and each vanilla response, respectively, and the personalized entities and the vanilla entities for the each personalized response and the each _y_anilla response are arranged, in individual sets based on the assigned relative rank weights, at block 210.
  • the relative rank weights are assigned by the personalization determination system 102 based on one or more factors including, but not restricting to, location of entity, font, size, color, and the like.
  • the arranged sets of personalized entities and vanilla entities are compared with each other in accordance with the present subject matter for the purpose of determination of personalization in the responses from the OSP 106.
  • the set of personalized entities for each personalized response is pair-wise compared with the set of vanilla entities for the corresponding vanilla response to identify the missing-personalized entities. Based on the comparison, the missing-personalized entities are appended in the end of the corresponding set of the vanilla entities.
  • multiple topical categories related to the text contents in each personalized entity and each vanilla entity are identified by the personalization determination system, at block 212.
  • a topical relevance mapping vector is computed for each personalized entity and each vanilla entity over the set of identified topical categories, at block 212.
  • the topical categories are identified and the topical relevance mapping vectors are computed for all the personalized entities and vanilla entities in a manner as described in detail earlier in the description.
  • the topical relevance mapping vectors of the personalized entities and the vanilla entities are indicative of relative relevance of the corresponding personalized responses and corresponding vanilla responses to the set of identified topical categories.
  • each personalized response and the corresponding vanilla response ranks of corresponding personalized entities are identified in the set of vanilla entities for the corresponding vanilla response. For this, each set of personalized entities is pair-wise compared with the corresponding set of vanilla entities. The procedure is carried out for identifying the ranks of all the personalized entities in all the personalized responses.
  • a personalization vector is computed at block 216.
  • the personalization vectors are indicative of the relative importance of the identified topical categories, which facilitates in determining the topical categories under which user interests are inferred by the OSP 106 for personalization of responses to the user, and determine a level of personalization for the user by the OSP 106 based on the identified topical categories.
  • the personalization vector is computed based on computation of a predefined distribution function , as mentioned in equation (1), and further iteratively carrying out numerical computation based on the predefined distribution function as described earlier in the description.
  • the identified topical categories and the computed relative importance of the topical categories based on the computed personalization vector are provided to the user to enable him to understand what information about him, i.e., his interests, are inferred by the OSP 106 and used for personalization in the responses to him from the OSP 106. Based on the provided information, the user may take actions to control the information that may be inferred by the OSP 106 for personalization.

Abstract

Systems and methods for determination of personalization in responses from an online service provider (OSP) are described. According to the present subject matter, the system(s) implement the described method(s) for determination of personalization in the responses. The method includes fetching personalized responses for a user from the OSP and fetching vanilla responses from the OSP. The personalized response is based on a query and at least one user identification attribute, and the vanilla response corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes. The method also includes determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP, and computing relative importance of multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses.

Description

SYSTEM AND METHOD FOR DETERMINATION OF PERSONALIZATION IN ONLINE SERVICE PROVIDER
RESPONSES
FIELD OF INVENTION
[0001] The present subject matter relates to systems and methods for determination of personalization in online access content for users provided by online service providers and, particularly but not exclusively, for determination of a level of personalization in responses from the online service providers for the users.
BACKGROUND
[0002] With the advent of information and communication technology, users are increasingly using online services for search, social networking, shopping, news, communications, etc. The providers of such online services, hereinafter referred to as online service providers (OSPs), commonly offer personalized experience to the users, while browsing, by customizing contents in web-pages displayed based on user preferences or interests. The contents in the web-pages, which are understood as online access contents, are personalized or customized for the users in terms of type of search results, ordering of search results, advertisements, recommendations, snippets, etc. The contents may also be customized in terms of their display, lay-out, fonts, colors, sizes, etc.
[0003] The OSPs, for the purposes of personalization for a user, may identify the user based on a variety user identification attributes including user's login details, cookies, Internet Protocol (IP) address, Media Access Control (MAC) address, International Mobile Station Equipment Identity (IMEI) number, and such. For the user, based on one or more of the user identification attributes^the-OSPs -build a -user profile -with— information~related to the-user preferences and interests inferred by the OSPs. The OSPs infer the user preferences and interests based on the user's profile, status, history of activities and interactions with the respective OSP, and such. The history of activities and interactions include search queries, Uniform Resource Locators (URLs) visited, items clicked, time spent, contents liked/disliked, contents shared, conversations, blogs/microblogs, and such, by the user. The OSPs may also infer the user interests based on user's history including personal details updated with the OSPs, user's geographical locations visited, and other online services actively used by the user. [0004] Although the personalization done by the OSPs make the online services helpful and useful for the users, the users typically has no or substantially insignificant knowledge and control over the data collated by the OSPs for building the user profiles, and inferred and used for personalization. The data collated and used for personalization may include sensitive data belonging to the user, which the OSPs may use to infer user interests and preferences, and personalize the contents in the displayed web-pages. The user may not want the OSPs or any other party to use such sensitive data for any purposes, including personalization, as the user may then give up his privacy. Thus, in order to monitor and control over the data collected and used by the OSPs for personalization, and thereby preventing the breech of privacy, it important for the users to have a knowledge of the data or the information, related to the users, inferred and used by the OSPs for personalization. The knowledge of such data or information can facilitate the user to have a control over the information inferred and used by the OSPs for the personalization.
SUMMARY [0005] This summary is provided to introduce concepts related to determination of personalization by online service providers (OSPs) in their responses to users. This summary is not intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the claimed subject matter.
[0006] In accordance with an embodiment of the present subject matter, a personalization determination system is described. The personalization determination system is configured to fetch personalized responses for a user from an OSP and fetch vanilla responses from the OSP. Each of the personalized responses is based on a query and at least one user identification attribute and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes. The personalization determination system is also configured to determine relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP, and compute relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses. The relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
[0007] In accordance with another embodiment of the present subject matter, a method includes fetching personalized responses for the user from an OSP and fetching vanilla responses from the OSP. Each of the personalized responses is based on a query and at least one user identification attribute, and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes. The method also includes determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP, and computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses. The relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
[0008] In accordance with another embodiment of the present subject matter, a computer readable medium having a set of computer readable instructions is disclosed. The computer readable instructions on the computer readable medium, when executed, perform acts including fetching personalized responses for a user from an OSP and fetching vanilla responses from the OSP; determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP; and computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses. Each of the personalized responses is based on a query and at least one user identification attribute, and each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes. The relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP.
BRIEF DESCRIPTION OF THE FIGURES
[0009] The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of systems and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
[0010] Figure 1 schematically illustrates a system architecture implementing a personalization determination system, in accordance with an embodiment of the present subject matter;
[0011] Figure 2 illustrates a method for determination of personalization in responses from online service providers for users, in accordance with an embodiment of the present subject matter.
[0012] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DESCRIPTION OF EMBODIMENTS
[0013] The present subject matter relates to systems and methods for determination of personalization in responses from online service providers (OSPs) for users.
[0014] For the purposes of the present subject matter, it is understood that a user, through a user device, such as desktop computers, laptop computers, smart phones, PDAs, may be accessing or using one or more online services provided by the OSPs. The OPSs are capable of personalizing the online access contents, hereinafter referred to as the contents, in the web-pages provided by them for display to the user on his user device. The web-pages provided by the OPSs may be understood, and hereinafter referred to, as responses from the OPSs. Such responses are generated and provided, by the OSPs, based on the nature of queries sent from the user device to the OSPs.
[0015] In an example, the OSP may be providing a search service, where the response may be provided based on a query comprising a search string entered by the user. The response from such an OSP may be personalized for the user using one or more of the user's identification attributes, such as the session cookies. The response may be personalized to include some search results higher in the order, with a special font and/or color, and include highlighted or blinking advertisements placed on top of the response (the web-page). Such personalization may be done based on history of activity of the user with the OSPs, including past search queries, URLs visited, items clicked, time spent on a web-page, and such. In another example, the OSP may be providing a social networking service, where the response may be provided based on a query at the time the user is logged in. The response from such an OSP may be personalized for the user using one or more of the user's identification attributes, such as the login details. The response may be personalized to include highlighted or blinking advertisements placed on top of the response (the web-page). Such personalization may be done based on profile details and status, and based on history of activity of the user with the OSPs, including items clicked, contents liked/disliked, contents shared and messages, and such.
[0016] Conventionally, the personalization, i.e., a level of personalization, in the responses from OSPs for users is determined, by the user, through setting and preference tools provided by the OSPs. Such tools by the OSPs provide details of categories or topics related to user interests of the users as predicted or inferred by the OSPs. Some examples of the categories or topics are "Phones", "Sports", "Universe", "Health", "Online Dating", "Footwear", "Movies", and such, depending on the user interests. These tools also allow the user to view and edit the categories under which the user interests are inferred. The conventional tools, although may provide updated categories to the user from time to time, but the list of categories provided is predefined and limited, and at a substantially higher level. With a predefined or limited categories, the user may not be able to determine whether the categories provided by the tools are the only categories under which the OSPs are personalizing the responses. Thus, with the conventional tools provided by the OSPs, the users are not able to gather substantially complete details of categories or topics under which user interests are inferred and, hence, used for personalization in the responses from the OSPs to the user. Furthermore, the conventional setting and preference tools provided by the OSPs are configured specifically for the respective OSP, and can not be utilized for assessing on the personalization over different OSPs.
[0017] Further, a variety of profile re-building tools are known which are capable of building user profile based on user's history of activities and interactions, such as past search queries, URLs visited, items clicked, etc., during usage of one or more online services. Such profile re-building tools may be used to re-build user profiles based on the user's history of activities and interactions available with the OSPs. Conventionally, based on these re-built user profiles the users may be able to determining or infer details of the user interests inferred by the OSPs for personalization of responses. The profile re-building tools are configured specifically for the respective OSP, and also require user's history of activities and interactions available with the OSPs. The conventional methodology of determining or inferring the details of personalization, based on re-built user profiles, may not be effective as the OSPs may share partial details of user's history of activities and interactions, or may not share such details at all, for the purposes of re-building the profiles. This will affect the users to determine the substantially true and complete details of personalization done by the OSPs. Further, such conventional methodology is substantially inefficient, as with the re-built profiles it can not be determined what all information is inferred by the OSPs, and which inferred information is actually being used for the personalization, and which inferred information is not used, by the OSPs.
[0018] Embodiments of systems and methods for determination of personalization in responses from the OSPs for users are described herein. The systems and the methods of the present subject matter are configured to determined a level of personalization in the responses from the OSPs for the users, and identify the categories or topics related to user interests and preferences predicted or inferred by the OSPs for the personalization. In accordance with the present subject matter, the personalization in the responses is determined based on personalized responses from the OSPs for the users and based on vanilla responses, corresponding to the personalized responses, from the OSPs. The personalized responses are the responses from the OSPs, customized for the users, based on queries to the OSPs and at least one user identification attribute leveraged on the queries. A query may be in the form of a request, for example, an http:// request, sent to the OSPs for using the online services. The user identification attributes are understood as data or information that are indicative of the identity of the users and/or the user devices through which the users are accessing or using the online services. Each user may have a unique set of user identification attributes. On the other hand, the vanilla responses are the responses from the OSPs, based on the same queries as those for the personalized responses, but without any user identification attribute leverage on to them. As the basic query that generates a vanilla response is same as that for a personalized response, each vanilla response associates or corresponds to one personalized response. The vanilla responses do not include any degree of personalization as the OSP cannot identify the user in the query received by the OSP. It may be understood that the queries with or without leveraged with the user identification attributes are sent to the OSPs from user devices, through which the users are accessing or using the online services.
[0019] Further, in accordance with the present subject matter, the personalized responses and the vanilla responses from the OSPs are captured and processed in relation to each other to identify the categories or topics that relate to the user interests inferred by the OSPs, and to determine the level of personalization on the responses from the OSPs for the users. The identified and determined details are provided to the respective users, which facilitate the users to have knowledge of information or data inferred and used by the OSPs for personalization of responses for the users.
[0020] With the systems and the methods of the present subject matter, the capturing and the processing of the personalized responses and the vanilla responses from the OSPs in relation to each other facilitate in finding all the categories or topics under which the user interests are inferred and are actually being used by the OSPs for personalization in their responses to the users. As substantially all the inferred categories or topics are identified, the user would be able to have a substantially improved control over the information that may be inferred and used by the OSPs for personalization in the future responses. The user may also be able to take necessary actions to isolate one or more inferred categories or topics that are sensitive or undesirable for the personalization. The methodology of the present subject matter can be implemented to determine the personalization done by any type of OSPs, and is agnostic to changes in the personalization techniques employed by the OSPs for personalizing the responses for the users.
[0021] Further, the methodology of the present subject matter is substantially efficient in comparison to some of the conventional methodologies for determining the personalization done by the OSPs as the user's history of activities and interactions, or user's profile or status details, with the OSPs are not relied upon. Thus, the methodology of the present subject matter can be implemented efficiently for determining the personalization, even if the user's history of activities and interactions, or user's profile or status details, with the OSPs are not publicly available or not shared, in full, by the OSPs.
[0022] The systems and methods described herein may be implemented in a variety of network environments employing one or more user devices communicatively coupled over a communication network to one or more entities associated with the OSPs. The user devices are the devices through which the users access or use the online services provided by the OSPs. The user devices may include desktop computers, laptop computers, smart phones, PDAs, and the like. The communication network may include Global System for Communication (GSM) network, Universal Telecommunications System (UMTS) network, Long Term Evolution (LTE) network, Personal Communications Service (PCS) network, Time Division Multiple Access (TDMA) network, Code Division Multiple Access (CDMA) network, Next Generation Network (NGN), Public Switched Telephone Network (PSTN), and Integrated Services Digital Network (ISDN), Internet Protocol (IP) Network. Although the description herein is with reference to certain communication networks, the systems and the methods may be implemented in other networks and devices, albeit with a few variations, as will be understood by a person skilled in the art. Further, depending on the type of communication network, the entities associated with the OSPs may include computing devices, such as computers, mainframe computers, servers, and such, and the combination thereof.
[0023] The system, in accordance with the implementation of the present subject matter, includes a personalization determination system. The personalization determination system may be implemented in a network path between the users, i.e., the user devices, and the OSPs, i.e., the entities associated with the OSPs and configured to provide responses to the users based on the queries received from them. In an implementation, the personalization determination^ystem ma be implemented as an application or a plug-in in the user device of a user, which can be configured by the user for the purposes of determination of personalization in the responses from the OSPs. In another implementation, the personalization determination system may be implemented in a computing device, such a server, communicatively coupled to one or more user devices and to one or more of the entities associated with the OSPs. The computing device implementing the personalization determination system may be referred to as a remote proxy server through which the communications between the users and the OSPs are routed. In a case where the personalization determination system is implemented in a remote proxy server, the personalization determination system may be configured by a third party for the purposes of determination of personalization in the responses from the OSPs to the users. The personalization determination system is configured to capture and process the personalized responses and the corresponding vanilla responses from the OSPs, and, hence, identify the categories or topics that relate to user interests inferred by the OSPs and determine a level of personalization in the responses from the OSPs for the users over the identified categories or topics.
[0024] In an implementation, for the purpose of determining the personalization in the responses from an OSP for a user, personalized responses for the user from the OSP are fetched. As mentioned above, each personalized response is provided by the OSP based on a query, leveraged with at least one user identification attribute, from the user device. Based on the fetched personalized responses, vanilla responses, corresponding to the personalized responses are fetched from the OSP. As mentioned earlier, each vanilla response is based on the query for the corresponding personalized response, but without any user identification attribute leveraged on the query. In an implementation, for fetching a vanilla response, the query for the corresponding personalized response is intercepted and modified to remove the user identification attributes therein. The query without the user identification attributes is sent to the OSP for fetching the vanilla response.
[0025] Based on the fetched personalized responses and the fetched vanilla responses, relative relevance of each of the personalized responses and for each of the vanilla responses to multiple categories or topics associated with responses provided by the OSP are determined. As mentioned earlier, the categories or topics may be the subject under which user interests can be inferred by the OSP for the personalization. The categories or topics incjude^plurality of words, and the information in the personalized responses and the vanilla responses may be mapped with each of the categories to determine the relative relevance. For the purposes of the present subject matter, the categories or topics are hereinafter referred to as 'topical categories'. Examples of topical categories include, but are not restricted to, "Sports", "Health", "Movies", and the like, and such topical categories include, but not restricted to, the words like, (soccer, cricket, hockey, outdoor, indoor, ....), (doctor, patient, hospital, medicine, nursing, dental, ), and (action, horror, thriller, language, english, french, classic, ....). The relative relevance of a personalized response or a vanilla response to the topical categories is indicative of how much or to what degree the personalized response or the vanilla response is relevant relatively to each of the multiple topical categories.
[0026] Further, after determining the relative relevance of all the personalized responses and all the vanilla responses to the multiple topical categories, relative importance of the topical categories are computed based on the determined relative relevance and based on comparison of the personalized responses and the vanilla responses. The relative importance of the topical categories is indicative of the topical categories under which user interests are inferred for the personalization by the OSP, and is indicative of a level of personalization for the user by the OSP. The level of personalization may be understood as the amount of personalization done in the personalized responses for the user by the OSP on different topical categories indicated from the computation, in accordance with the present subject matter.
[0027] In an implementation, the topical categories and the computed relative importance of the topical categories are provided to the user. This will facilitate the user to have knowledge of information or data inferred and used by the OSP for personalization of responses for the users. Based on the provided information, the user can identify the topical categories under which the user interests are largely inferred and used for the personalization, and can isolate one or more topical categories that are sensitive or undesirable for the user for any disclosure. Further, the user may take necessary actions, such logging off, deleting cookies, deleting the browsing history, etc., to have a substantially improved control over the information inferred and, hence, used by the OSP for the personalization.
[0028] In an implementation, for determining the relative relevance of the each personalized response and the each vanilla response to the topical categories, personalized entities and vanilla entities in all the personalized responses and in all the vanilla responses, respectively, are identified. The entities, i.e., the personalized entities of a personalized response and the vanilla entities of a vanilla response, are items, such as search results, advertisements, articles, snippets, recommended links, personal profile details, messages, blogs, etc., contained in the response (web-page) to the user. These entities along with their relative positions, fonts, colors, or any other display attributes, form the full contents in the responses from the OSP. [0029] After identifying the personalized entities and the vanilla entities, multiple topical categories based on the text contents in each of the personalized entities and in each of the vanilla entities are identified. In an implementation, the topical categories may be identified by comparing and mapping the text contents in the personalized entities and in the vanilla entities with a predefined set of topical categories stored in a database associated with the personalization determination system. The topical categories identified individually for all the personalized entities and the vanilla entities, all the topical categories are collated in as a set of topical categories.
[0030] After identifying the topical categories, a topical relevance mapping vector is computed for each personalized entity and for each vanilla entity over the topical categories. For an entity, the topical relevance mapping vector comprises a distribution of relative relevance factors for the entity over the multiple topical categories. Each relative relevance factor is indicative of a degree of relevance of the entity on one of the topical categories in relation with other topical categories. The topical relevance mapping vectors for the personalized entities and the vanilla entities provide information on the relative relevance of the personalized responses and the vanilla responses to the multiple topical categories.
[0031] Further in an implementation, for computing the relative importance of the topical categories, personalized entities in each of the personalized responses are identified, and relative rank weights are assigned to the set of personalized entities for the each personalized response. Also, the vanilla entities in each of the vanilla responses are identified, and relative rank weights are assigned to the set of vanilla entities for the each vanilla response. The relative rank weights assigned to the personalized entities are indicative of order of importance of the personalized entities in the respective personalized response, and the relative rank weights assigned to the vanilla entities are indicative of order of importance of the vanilla entities in the respective vanilla response. The order of importance, and hence the assignment of the relative rank weights, are based on one or more factors, such as a location of entity in the response, and a display attribute of entity, for example, font, size, color, highlighting, flashing, etc. Based in the relative rank weights, the personalized entities for each personalized response are arrange in a set, and the vanilla entities for each vanilla response are arranged in a set, for the comparison of the personalized responses and the vanilla responses for computing the relative importance of the topical categories.
[0032] In an implementation, for each personalized response and the corresponding vanilla response, the respective set of personalized entities is compared with the respective set of vanilla entities, and the entities present in the set of personalized entities but missing in the set of vanilla entities are appended to the end of the set of vanilla entities. The entities present in the set of personalized entities and missing in the set of vanilla entities are referred to as the missing- personalized entities. The appending of the missing-personalized entities is based on the relative rank weights of the missing-personalized entities.
[0033] Further, after arranging the personalized entities and the vanilla entities, and forming sets of personalized entities and vanilla entities for all the personalized responses and all the vanilla responses, the set of personalized entities and the set of vanilla entities for each personalized response and the corresponding response are pair-wise compared. In each pair-wise comparison, ranks of personalized entities of the personalized response are identified in the set of vanilla entities of the corresponding vanilla response. A rank of a personalized entity is indicative of the position of that personalized entity in the set of vanilla entities. In an example, the rank may be a numeral, such as 1, 2, 3, and so on. Further, based on the ranks of the personalized entities of all the personalized responses and based on the relative relevance of the personalized responses and the vanilla responses to the multiple topical categories a personalization vector is computed, where the personalization vector is indicative of the relative importance of the topical categories.
[0034] With the systems and the methods of the present subject matter, the personalization, i.e., the topical categories under which the user interests are inferred by the OSPs and used for personalization and the level of personalization in the responses from the OSPs can be identified and determined in a substantially efficient manner, in real-time, while the users are accessing or using the online services. In addition to the determination of personalization in real-time, the systems and the methods of the present subject matter facilitate in determining, in a substantially efficient manner, the information related to user interests inferred and actually being used for personalization, by the OSPs. [0035] The described methodologies can be implemented in hardware, firmware, software, or a combination thereof. For a hardware implementation, the processing units can be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, electronic devices, other electronic units designed to perform the functions described herein, or a combination thereof. Herein, the term "system" encompasses logic implemented by software, hardware, firmware, or a combination thereof.
[0036] For a firmware and/or software implementation, the methodologies can be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein. Any machine readable medium tangibly embodying instructions can be used in implementing the methodologies described herein. For example, software codes and programs can be stored in a memory and executed by a processing unit. Memory can be implemented within the processing unit or may be external to the processing unit. As used herein the term "memory" refers to any type of long term, short term, volatile, nonvolatile, or other storage devices and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
[0037] In another firmware and/or software implementation, the functions may be stored as one or more instructions or code on a non transitory computer-readable medium. Examples include computer-readable media encoded with a data structure and computer-readable media encoded with a computer program. Computer-readable media may take the form of an article of manufacturer. Computer-readable media includes physical computer storage media. A storage medium may be any available medium that can_bejiccessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD- ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer; disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
[0038] In addition to storage on computer readable medium, instructions and/or data may be provided as signals on transmission media included in a communication apparatus. For example, a communication apparatus may include a transceiver having signals indicative of instructions and data. The instructions and data are configured to cause one or more processors to implement the functions outlined in the claims. That is, the communi'cation apparatus includes transmission media with signals indicative of information to perform disclosed functions. At a first time, the transmission media included in the communication apparatus may include a first portion of the information to perform the disclosed functions, while at a second time the transmission media included in the communication apparatus may include a second portion of the information to perform the disclosed functions.
[0039] It should be noted that the description merely illustrates the principles of the present subject matter. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described herein, embody the principles of the present subject matter and are included within its spirit and scope. Furthermore, all examples recited herein are principally intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the invention and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass equivalents thereof.
[0040] The manner in which the systems and methods for determination of personalization in responses from OSPs for users shall be implemented has been explained in details with respect to the Figures 1 and 2. While aspects of described systems and methods for determination of personalization in responses from the OSPs can be implemented in any number of different computing systems, transmission environments, and/or configurations, the embodiments are described in the context of the following exemplary system(s).
[0041] It will also be appreciated by those skilled in the art that the words during, while, and when as used herein are not exact terms that mean an action takes place instantly upon an initiating action but that there may be some small but reasonable delay, such as a propagation delay, between the initial action and the reaction that is initiated by the initial action. Additionally, the word "connected" and "coupled" is used throughout for clarity of the description and can include either a direct connection or an indirect connection.
[0042] Figure 1 schematically illustrates a system architecture 100 implementing a personalization determination system 102 for determining personalization in responses from OSPs for users, in accordance with an embodiment of the present subject matter. As mentioned earlier, the personalization determination system 102 is implemented in a network path between the users and the OSPs. In an implementation, as shown in Figure 1 , the personalization determination system 102 is communicatively coupled to a plurality of user devices 104-1 , 104- 2, ... , 104-N, through which the users access and use one or more online service. The plurality of user devices 104-1 , 104-2, ... , 104-N, hereinafter, are collectively referred to as user devices 104, and individually referred to as the user device 104. The user devices 104 include, but are not restricted to, desktop computers, laptop computers, smart phones, PDAs, and the like. The personalization determination system 102, as shown in Figure 1 , is also communicatively coupled to an OSP entity or, simply, an OSP 106, which are provide the online service to the users and are capable to personalizing the responses, i.e., the web-pages sent to the users depending on user interests inferred by them. For the sake of simplicity, Figure 1 shows one OSP 106 communicating with the personalization determination system 102. However, in various implementations, the personalization determination system 102 may be communicatively coupled to a plurality of OSPs for the purpose of determination of personalization in the responses from them.
[0043] In an implementation Jhe personalization determination system 102 may be implemented, individually, in the user devices 104. In an implementation, the personalization determination system 102 may be implemented in a computing device, such as a remote proxy server.
[0044] Further, the personalization determination system 102 may be communicatively coupled to the OSP 106, and to the user devices 104, as the case may be, over a communication network. The communication network may be a wireless or a wired network, or a combination thereof. The communication network can be a collection of individual networks, interconnected with each other and functioning as a single large network. Examples of such individual networks include, but are not limited to, GSM network, UMTS network, LTE network, PCS network, TDMA network, CDMA network, NGN, PSTN, ISDN, and IP network. Depending on the terminology, the communication network includes various network entities, such as gateways and routers; however, such details have been omitted to maintain the brevity of the description. Further, it may be understood that the communication between the personalization determination system 102, the OSP 106, and the user devices 104 may take place based on the communication protocol compatible with the communication network.
[0045] In an implementation, the communication network, along with other entities, includes a standard telecommunication network entity (not shown) that may include one or more of BSC, BTS, VMSC/VLR, Radio Network Controller (RNC), Node B, etc., depending on the type of communication network. As apparent, the telecommunication network entity continues to deal with the conventional telecommunication standard based signals in a conventionally manner.
[0046] The personalization determination system 102 includes processor(s) 108. The processor(s) 108 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the processor(s) 108 are configured to fetch and execute computer-readable instructions stored in the memory.
[0047] The functions of the various elements shown in the figure, including any functional blocks labeled as "processor(s)", may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term "processor" should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), non-volatile storage. Other hardware, conventional and/or custom, may also be included.
[0048] The personalization determination system 102 also includes interface(s) 1 10. The interface(s) 1 10 may include a variety of software and hardware interfaces that allow the personalization determination system 102 to interact with the OSP 106 and with the user devices 104, as the case may be. Further, the interface(s) 1 10 may enable the personalization determination system 102 to communicate with other communication and computing devices, such as web servers and external repositories. The interface(s) 1 10 may facilitate multiple communications within a wide variety of networks and protocol types, including wire networks, for example, LAN, cable, IP, etc., and wireless networks, for example, WLAN, cellular, satellite- based network, etc.
[0049] Further, the personalization determination system 102 includes memory 1 12, coupled to the processor(s) 108. The memory 1 12 may include any computer-readable medium known in the art including, for example, volatile memory (e.g., RAM), and/or non-volatile memory (e.g., EPROM, flash memory, etc.).
[0050] Further, the personalization determination system 102 includes modules 1 14 and data 1 16. The modules 1 14 may be coupled to the proeessor(s) 108. The modules 1 14, amongst other things, include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. The modules 1 14 may also be implemented as, signal processor(s), state machine(s), logic circuitries, and/or any other device or component that manipulate signals based on operational instructions. The modules 1 14 further include modules that supplement applications on the personalization determination system 102, for example, modules of an operating system. The data 1 16 serves, amongsL other things, as a repository for storing data that may be fetched, processed, received, or generated by one or more of the modules 1 14. Although the data 1 16 is shown internal to the personalization determination system 102, it may be understood that the data 1 16 can reside in an external repository (not shown in the figure), which may be coupled to the personalization determination system 102. The personalization determination system 102 may communicate with the external repository through the interface(s) 1 10 to obtain information from the data 1 16. [0051] Further, the modules 1 14 can be implemented in hardware, instructions executed by a processing unit, or by a combination thereof. The processing unit can comprise a computer, a processor, a state machine, a logic array or any other suitable devices capable of processing instructions. The processing unit can be a general-purpose processor which executes instructions to cause the general-purpose processor to perform the required tasks or, the processing unit can be dedicated to perform the required functions.
[0052] In another aspect of the present subject matter, the modules 1 14 may be machine- readable instructions (software) which, when executed by a processor/processing unit, perform any of the described functionalities. The machine-readable instructions may be stored on an electronic memory device, hard disk, optical disk or other machine-readable storage medium or non-transitory medium. In one implementation, the machine-readable instructions can be also be downloaded to the storage medium via a network connection.
[0053] In an implementation, the modules 1 14 of the personalization determination system 102 includes a response fetcher 118, an entity extractor 120, a topic extractor 122, a personalization computing module 124, and other module(s) 126. In an implementation, the data 116 of the personalization determination system 102 includes response data 128, personalization computation data 130, and other data 132. The other module(s) 126 may include programs or coded instructions that supplement applications and functions, for example, programs in the operating system of the personalization determination system 102, and the other data 132 comprise data corresponding to one or more other module(s) 126.
[0054] In an implementation, for the purpose of determining personalization in the responses from the OSP 106 from a user, the personalization determination system 102 may seek permission and confirmation from the user to access the contents, i.e., the responses provided to the user by the OSP 106. The permission may be actively by providing login details, or passively by allowing the personalization determination system 102 to access the responses from the OSP 106 while the user is accessing or using the online service provided by the OSP 106. In an example, the login detail may be the same as those required for using the online service of the OSP 106.
[0055] In an implementation, the response fetcher 1 18 is configured to fetch personalized responses from the OSP 106 to the user. The OSP 106 may or may not require the user to log in for using the online service provided by them; however, the OSP 106 may provide responses to the user, with contents in the responses personalized for the user. The user, through the user device 104, may send queries to the OSP 106, for example, through an http: interface, and obtain responses from the OSP 106. The queries from the user device 104 are leveraged with at least one user identification attribute, such as login details, cookies, MAC address, IP address, IMEI number, and the like. The queries, in an example, are in the form of http:/ links. The responses may be in the form of html web-pages, or any other supported format, such as xml responses, json responses, and the like, depending on the type of OSP 106. The response fetcher 1 18 fetches these responses from the OSP 106 to the user for the queries sent by the user. The response fetcher 1 18 may fetch the personalized responses from the OSP 106, either actively based on the login-based permission by the user, or passively based on permission, without any login, from the user while the user is using the online service of the OSP 106. In an example, the response fetcher 118 may fetch the personalized responses for q number of queries, where q > 1. For the purposes of the description herein, the fetched personalized responses are denoted as (PI , P2, P3, ... , Pq). The personalized responses (P) fetched by the response fetcher 1 18 are stored in the response data 128.
[0056] After fetching the personalized responses, the response fetcher 1 18 fetches vanilla responses corresponding to all the personalized responses. A vanilla response is obtained based on the query as that for a personalized response, but without any of the user identification attribute leveraged on the query. In an implementation, for fetching a vanilla response, corresponding to a personalized response, the response fetcher 118 obtains the query for the personalized response, and generates a modified query based on the original query, to fetch the vanilla response. It may be understood that the modified query is leveraged with any of the user identification attributes. Further, the type of modified queries generated by the response fetcher 1 18 for fetching the vanilla responses may depend on the type of OSP 106 for which the personalization is to be determined. In an example, the response fetcher 1 18 fetches q number of vanilla response corresponding to the q number of personalized responses (PI, P2, P3, ... , Pq). For the purposes of the description herein, the fetched vanilla responses are denoted as (VI, V2, V3, ... , Vq). The vanilla responses (V) fetched by the response fetcher 118 are stored in the response data 128. [0057] In an example, for an OSP, such as a search service, online shopping service, and the like, which may not require the user to log in for accessing the online service, the response fetcher 1 18 may generate modified queries by removing the information or data related to user identification attributes from the original query for the personalized response. In another example, for an OSP, such as an online video streaming service, and the like, which may require the user to log in for accessing the online service, the response fetcher 1 18 may generate modified queries with new or dummy login details, different from those of the user, for fetching the vanilla responses. In another example, for an OSP, such as a social networking service, and the like, which may require the user to log in, and the contents in the responses are tied directly to the user's personal account with the OSP, the personalization determination system 102 may monitor activities of multiple users with the OSP, and create an average profile by aggregating the responses provided to the multiple users. With such an OSP, the response fetcher 1 18 may fetch such an aggregated response and the aggregated response is considered . as the vanilla response for further processing. Such a vanilla response may be a reference response corresponding to all the personalized responses fetched by the response fetcher 1 18.
[0058] After fetching the personalized responses and the corresponding vanilla responses, the entity extractor 120 identifies and extracts personalized entities and vanilla entities in the personalized responses and the vanilla responses, respectively. The personalized entities and the vanilla entities, hereinafter, collectively may be referred to as the entities. For the identification and extraction of the entities in the responses, the entity extractor 120 individually parses each of the personalized responses and each of the vanilla responses. The entities are items contained in the responses from the OSP 106. For the purposes of the description herein, the personalized entities identified for an ith personalized response (Pi) L_are denoted as i π', and the vanilla entities identified for an ith vanilla response (Vi) are denoted as σ1. The identified personalized entities (π) and vanilla entities (σ) identified by the entity extractor 120 are stored in the response data 128.
[0059] Table 1 illustrates some examples of OSPs, and the entities in the responses from those OSPs. It may be understood to a skilled person that the OSPs and the corresponding entities are not restricted to the ones listed in Table 1. The details listed in Table 1 are for the purposes of providing examples. Table 1
Figure imgf000022_0001
[0060] After identifying and extracting the entities (π and σ) from the personalized responses and the vanilla responses, the entity extractor 120 assigns relative rank weights to the entities (π' and σ') corresponding to each personalized response (Pi) and each vanilla response (Vi). A relative rank weight for an entity (π', σ1) is indicative of an order of importance of that entity (π1, σ1) in the corresponding response (Pi, Vi) with respect to other entities of the same response (Pi, Vi). For the each response (Pi, Vi), the relative rank weights may be assigned to the corresponding entities (π' and σ1) based on one or more factors. The factor may include, but are not restricted to, location of entity in the response, and display attributes of entity, such as text font, size, color, highlighting, and flashing. After assigning relative rank weights to the entities (π' and σ'), the entity extractor 120 arranges the entities (π1 and σ') for the each personalized response (Pi) and for the each vanilla response (Vi) individually in a set. The arrangement of entities (π' and σ1) in the respective sets is based on the relative rank weights. For example, the entities may be arranged in the decreasing order of their relative rank weights. For the purposes of the description herein, a set of personalized entities for a personalized response (Pi) may be denoted as {π1} = {π'ι, π! 2, ... , 7t'm}, and a set of vanilla entities for a vanilla response (Vi) may be denoted as {σ1} = {σ'ι, σ'2, ... , σ'η}, where m is the number of personalized entities in the personalized response (Pi), and n is the number of vanilla entities in the vanilla response (Vi). The sets of personalized entities and vanilla entities ({π} and {σ}) are stored in the response data 128.
[0061] The assignment of relative rank weights may depend on the type of OSP and the type of entity in the response from such OSP. In an example, for the OSP 106 as a search service provider, the response (personalized response or the vanilla response) may include entities like search results, advertisements, and other suggested search links. It may be understood that the search results will be located in the response in an order, for example, one below the other. The search results can be ranked from top to bottom based on their positions. The ranking may be in the form of numerals 1 to r for r number of search results. For the search results, the relative rank weights (wL) based on the location of entity may be, but is not restricted to, 1/r, or l/tr, where t > 1. In an example, if the search results are in the center of the response, the relative rank weights (wL) may be wr multiplied with ccenter, where Ccenter is a predefined constant greater than 0. For the advertisements, the relative rank weights (wL) based on the location of entity may be, but not restricted to, Ctop, Cleft, Cnght, and Cbottom, where Ctop, Cleft, Cnght, and Cbottom are predefined constants greater than 0, such that Ccenter > Ctop > Cleft > Cright > Cbottom. For the other suggested search links in the response, the relative rank weights (wL) based on the location of entity may be same as that for the advertisements, but is not restricted to, Ctop, Cleft, Cright, and Cbottom. Further, for the search results, advertisements, and other suggested search links, the relative rank weights (wF) based on the font of entity may be, but is not restricted to, Cfon * font size, where C is a predefined constant greater than 0. Similarly, for the search results, advertisements, and other suggested search links, the relative rank weights (wC) based on the color of entity may be, but is not restricted to, Ccolor * color_weight, where Cfont is a predefined constant greater than 0, and color_weight may take predefined values based on the color, for example, (red = 1), (green = 0.5), (yellow = 0.3), (blue = 0.7), and so on. Although the example herein describes relative rank weights based on location, fonts and color as the factor, relative rank weights based on other factors may be similarly assigned. In an example, the overall relative rank weight (w) for an entity may be average of relative rank weights (wL), (wF), (wC), and so on.
[0062] Further, after assigning the relative rank weights and arranging the entities (π' and σ') in the respective sets ({π'} and {σ'}), the entity extractor 120 pair-wise compares the set of personalized entities {π1} and the set of vanilla entities {σ1} for each personalized response (Pi) and the corresponding vanilla response (Vi) to identify the missing-personalized entities. The missing-personalized entities are the personalized entities that are present in the set of personalized entities {π1} but missing in the set of vanilla entities {σ1}. Based on the comparison, the entity extractor 120 appends the missing-personalized entities in the set of vanilla entities {σ1}. With this, the number of entities in the set of personalized entities {π'} and in the set of vanilla entities {σ'} will become equal, for example equal to the number m. The missing- personalized entities may be appended at the end in the set of vanilla entities {σ1} and based on the relative rank weights of the missing-personalized entities. The arranged sets of entities {π} and {σ} are used for further processing, as described later in the description. The arranged sets of entities {π} and {σ} are stored in the response data 128.
[0063] In an implementation, after identifying and extracting the entities (π and σ) from the personalized responses and the vanilla responses, the topic extractor J 22 identifies and collates all the extracted entities (π' and σ') in a set. For the purpose of the description herein, the set of all the entities may be denoted as {E} = {El , E2, ... , Ep}, where p is the total number of entities identified and collated by the topic extractor 122. In an example, the number p is equal to 2 * q * m. In an implementation, the topic extractor 122 may be configured to monitor responses provided by the OSP 106, or by one or more other OSPs, for one or more other users. Based on the monitoring, the topic extractor 122 may identify and extract entities in those responses, and collate such entities also in the set of entities {E} for further processing. The set of entities {E} is stored in the response data 128.
[0064] With the set of entities {E}, the topic extractor 122 extracts text contents in each entity (Ek) in the set {E}. It may be understood that the entities (E) may include text contents therein, along with other displayable content. The text contents extracted from each of the entities (E) is arranged in a set by the topic extractor 122. For the purpose of the description herein, the set of all the text contents may be denoted as {D} = {Dl, D2, ... , Dp}, where p is the total number of entities. Based on the set of text contents {D}, the topic extractor 122 identifies and extracts topical categories that relate with each text contents (Dk). As mentioned earlier, the topical categories may be the subjects under which user interests can be inferred by the OSP for the personalization. The set of text contents {D} are stored in the response data 128.
[0065] For extracting the topical categories for each text contents (Dk), the topic extractor 122 compares and maps the text contents (Dk) with a set of predefined topical categories. Table 2 illustrates details of some predefined topical categories in the set. Each topical category includes plurality of words and probability factors (PF) corresponding to the each word. The probability factor (PF) corresponding to each word is indicative of the weight or relevance of that word in the topical category. A high probability factor (PF) for a word implies that the word is more relevant to the topical category. For each text contents (Dk), the topic extractor 122 compares and maps the words in the text contents (Dk) with the words in the predefined topical categories. If one or more words in the text contents (Dk) match or relate with the one or more words in a predefined topical category, that predefined topical category is identified and extracted for that text contents (Dk). For example, if the text contents of an entity relate to medicine, the predefined topical categories "Medicinal Treatment", "Brain", "Healthcare", and such are identified and extracted for that text contents. Similarly, if the text contents of an entity relate to painting, the predefined topical categories "Color", and such are identified and extracted for that text contents.
Table 2
Topical category
Topical category Topical category Topical category = Medicinal
= Color = Brain = Healthcare Treatment
Word PF Word PF Word PF Word PF Word PF drugs 0.069 red 0.202 mind 0.081 doctor 0.074 medicine 0.027 blue 0.099 thought 0.068 patient 0.061 effects 0.026 yellow 0.073 memory 0.037 hospital 0.049 pain 0.016 color 0.029 felt 0.025 nurse 0.031 alcohol 0.012 bright 0.030 think 0.019 heart 0.020 abuse 0.009 look 0.017 forget 0.012 dental 0.015
[0066] The predefined topical categories may be stored in the personalization determination system 102, or stored in an external database with which the topic extractor 122 may communicate for the purpose of identification and extraction of topical categories. The topic extractor 122 identifies and extracts topical categories individually for all the text contents from the set of text contents {D}. Based on the identification and extraction, the topic extractor 122 collates all the identified topical categories in a set. For the purpose of the description herein, the set of all the topical categories may be denoted as {β} = {βΐ, β2, ... , βΤ}, where Τ is the total number of topical categories identified and extracted for all the text contents in the set {D}. The set of identified and extracted topical categories {β} is stored in the response data 128.
[0067] Based on identified topical categories, the topic extractor 122 then computes a topical relevance mapping vector for each entity (Ek) over the set of topical categories {β}. As mentioned earlier, for an entity (Ek), the topical relevance mapping vector comprises a distribution of relative relevance factors for the entity (Ek) over the topical categories, and each relative relevance factor is indicative of a degree of relevance of the entity (Ek) on one of the topical categories in relation with other topical categories. A relative relevance factor for an entity (Ek) with respect to a topical category may be determined based on the probability factors (PF) corresponding to the words in the topical category which match or relate to the text contents (Dk) of the entity (Ek). In an example, the relative relevance factors for an entity (Ek) over the topical categories may be determined by adding or multiplying the probability factors (PF) corresponding to the words in the each individual topical category, which match or relate to the text contents (Dk) of the entity (Ek), and then normalizing the computed values to make the sum total of all the relative relevance factors for the entity (Ek) as 1. For the purpose of the description herein, the topical relevance mapping vector for the k entity (Ek) may be denoted as {9k} = {9ki, 0k 2, ... ,
Figure imgf000027_0001
where 0k j is relative relevance factor for the kth entity (Ek) to the jth topical category (Pj), and where T is the total number of topical categories identified and extracted for all the text contents in the set {D}. The computed topical relevance mapping vectors {Θ} are stored in the response data 128.
[0068] In an example, consider a case where the set of identified topical categories {β} is
{"Medicinal Treatment", "Brain", "Healthcare", "Color", }. For an entity with the text contents related to medicine, the topical relevance mapping vector {0} may be {0.8, 0.01 , 0.15,
0.0, }. The values 0.8, 0.01, 0.15, 0.0 are based on the probability factors for the words in the topical category "Medicinal Treatment", "Brain", "Healthcare", "Color", respectively, matching or related to the text contents, and the sum total of the values in each topical relevance mapping vector {0} is equal to 1. The 4th element of the topical relevance mapping vector {0} has a value 0.0, as the text contents related to medicine may not match or relate to any word in the topical category "Color".
[0069] In an implementation, the topic extractor 122 may identify and extract topical categories for the entities (E), and determine the topical relevance mapping vectors {0} for all the entities based on a conventional topic modeling algorithm, such as Latent Dirichlet Allocation algorithm.
[0070] Further, as mentioned earlier, the topical relevance mapping vectors {0} for the personalized entities (π) and vanilla entities (σ) provide information on the relative relevance of the personalized responses and the vanilla responses to the multiple identified topical categories. Thus, the topic extractor 122 determine the relative relevance of the personalized responses and - the vanilla-responses to the set- of identified topical categories-based on corresponding computed topical relevance mapping vectors {Θ}.
[0071] After arranging and forming the sets of entities ({π} and {σ}) for all the personalized responses (P) and all the vanilla responses (V) by the entity extractor 120, and after computing the topical relevance mapping vectors {0} for all the entities (π and σ) by the topic extractor 122, the personalization computing module 124 computes relative importance of the identified topical categories based on the determined relative relevance and based on comparison of the personalized responses with the vanilla responses. The personalization computing module 124 computes the relative importance of the topical categories by computing a personalization vector which is indicative of the topical categories under which user interests are inferred for the personalization for the by the OSP 106 and is indicative of a level of personalization for the user by the OSP 106 based on the identified topical categories.
[0072] In an implementation, the personalization computing module 124 may compute the personalization vector based on the computation of a predefined distribution function / individually for each of the personalized responses (P). The predefined distribution function /for a personalized response (Pi) is defined as:
Figure imgf000028_0001
where,
{η} = personalization vector;
{Ojt'j} = topical relevance mapping vector for j* personalized entity (piij) of the ith personalized response (Pi);
σ"' *π^ = rank of jth personalized entity (u'j) in the set of vanilla entities {σ1} corresponding to a pair of personalized response (Pi) and vanilla response (Vi) corresponding to each other; λ = predefined constant between 0 and 1 ;
j = 1 to m (number of personalized entities in the ith personalized response (Pi)); and k = j to m.
[0073] For computing the terms σ ι *π' in the distribution function / for the ith personalized response"(Pi) the set of p sonalized" entities {π'} of thel* personalized response" (Pi) is compared with the set of vanilla entities {σ'} for the corresponding 1th vanilla response (Vi) to identify the rank of personalized entities (7tj) in the set of vanilla entities {σ1} . As mentioned earlier, the rank of a personalized entity is indicative of the position of the personalized entity in the set of the vanilla entities. The ranks are numerals, such as 1 , 2, 3, and so on.
[0074] The predefined distribution functions / as mentioned in equation (1) are computed for all personalized responses (P I , P2, ... , Pq), and multiplied together to obtain a single distribution function F. Thus, the distribution function F = /PI */P2* . . . *fPm. The personalization vector {η} and the value of λ as same in each distribution function f?i, and are computed, iteratively, through numerical computations as described later in the description. The personalization vector {η} is represented as {ηι, η2, ... , η-ρ}, where Τ is the total number of topical categories identified and extracted for all the text contents in the set {D}.
[0075] The term {η}* {θπ^} in the distribution function signifies how well the personalized entity (π j) matches with topical categories under which user interests are inferred for the personalization of the personalized response (Pi). The value of λ is indicative of how much importance is given to the topical categories for inferring the user interests for the personalization of the personalized response (Pi), λ takes a value from 0 to 1. The value of λ equal to 1 signifies that the OSP 106 gives a high importance to the user interests for the personalization but no importance to the rank of a personalized entity in the corresponding vanilla response. Further, the value of λ equal to 0 signifies that there is no personalization in the personalized response (Pi) based on user interest. Further, the term (i - ο *π)) signifies the effect of ranking of the personalized entity (π j) in the vanilla response (Vi).
[0076] In an implementation, to compute the personalization vector {η} and the value of λ, value of personalization vector {η} and λ are assigned iteratively such that the distribution function F is maximum. In the computed personalization vector {η}, the set of values of the elements of the personalization vector are indicative of the level of personalization in the personalized responses for the user by the OSP 106, over the identified set of topical categories {β} . The elements in the personalization vector are ordered in conjunction with the elements or the topical categories in the set of identified topical categories. The value of each element of the personalization vector indicates the_degree or the. .level at which, the corresponding topical category in the set of topical categories {β} is inferred and used for personalization in relation to other identified topical categories. The identified topical categories with higher corresponding values in the personalization vector are inferred more by the OSP 106 for the personalization of the responses to the user. The computed personalization vector {η} is stored in the personalization computation data 130. [0077] In an implementation, the personalization computing module 124 may compute the personalization vector {η} using the distribution function / and a statistical estimation technique, like maximum likelihood estimator.
[0078] Further, in an implementation, the personalization determination system 102 is configured to provide the identified topical categories and the computed relative importance of the topical categories based on the computed personalization vector {η} to the user on his user device 104. The topical categories that have higher relative relevance factors in the personalization vector may be displayed on the user device 104 to the user. The displayed topical categories and the corresponding relative relevance factors will enable to user to understand what information about him, i.e., his interests, are inferred by the OSP 106 and used for personalization in the responses to him from the OSP 106. In an implementation, the personalization determination system 102 may be configured to provide, along with the identified topical categories, a list of certain words from the identified topical categories which may be helpful for the user to gather a substantially improved knowledge on the his interests inferred, and actually being used for personalization, by the OSP 106.
[0079] Further, as mentioned earlier, in view of the information provided by the personalization determination system 102 to the user, the user may take actions, such as logging off from the service, deleting cookies, deleting his browsing history, modifying his profile to limit the personal details therein, and such. With such actions, the user may control the information about him that may be inferred by the OSP 106 for personalization. The information may include sensitive or private information of the user.
[0080] In an implementation, the personalization determination system 102 is configured
_to obtain a feedback from the user. In an example, the personalization jdetermination system 102_ is configured to provide to the user, the topical categories identified, based on the computation as described above, under which the user interest are largely inferred by the OSP 106 for personalization. This may be done by providing, for example, displaying, top few identified topical categories. The personalization determination system 102 may be configured to obtain an input or a feedback from the user for the topical categories (for example, sensitive topical categories) for which he is interested to know the level of personalization. Accordingly, the personalization determination system 102 may provide the details of the level of personalization, i.e., the relative relevance of those topical categories to the user.
[0081] Further, in an implementation, the user may provide a feedback to the personalization determination system 102 for adding one or more topical categories in the set of topical categories {β} for which the user may want the personalization determination system 102 to monitor for the personalization in the responses from the OSP 106.
[0082] Figure 2 illustrates a method 200 for determination of personalization in responses from OSPs for users, in accordance with an embodiment of the present subject matter. The method 200 is directed to describe the determination of personalization in responses from one OSP for a user. The method 200 can be performed for multiple users and for multiple OSPs.
[0083] The order in which the method 200 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 200, or an alternative method. Additionally, individual blocks may be deleted from the method 200 without departing from the spirit and scope of the subject matter described herein. Furthermore, the methods can be implemented in any suitable hardware, software, firmware, or combination thereof.
[0084] A person skilled in the art will readily recognize that steps of the method 200 can be performed by programmed computers. Herein, some embodiments are also intended to cover program storage devices, for example, digital data storage media, which are machine or computer readable and encode machine-executable or computer-executable programs of instructions, wherein said instructions perform some or all of the steps of the described method. The program storage devices may be, for example, digital memories, magnetic storage media such as a magnetic^disks and magnetic tapes, hard drives, or optically readable digital data storage media. The embodiments are also intended to cover both communication network and communication devices configured to perform said steps of the exemplary method.
[0085] Referring to Figure 2, although the method 200 for for determination of personalization in responses from OSPs for users may be implemented in. a variety of computing devices working in different network environments; in an embodiment described in Figure 2, the method 200 is explained in context of the aforementioned personalization determination system 102 for the ease of explanation. [0086] In an implementation, at block 202, permission is taken and received by the personalization determination system 102 from the user to contents in the responses from the OSP 106 sent to the user. With the permission, the responses from the OSP 106 to the user are fetched and processed for determining the personalization done by the OSP 106 for the user.
[0087] Based on the permission, at block 204, personalized responses from the OSP 106 to the user are fetched by the personalization determination system 102. The personalized responses may be fetched actively or passively based on the permission from by the user, as described earlier. After fetching the personalized responses, vanilla responses corresponding to the personalized responses are fetched from the OSP 106 at block 206. As mentioned earlier, in an implementation, for fetching the vanilla responses, original queries associated with he personalized responses are obtained and modified queries are generated based on the original queries to fetch the vanilla responses. The modified queries are sent to the OSP 106 for fetching the vanilla responses corresponding to the personalized responses. As mentioned earlier, the modified queries for the vanilla response are the original queries without any user identification attribute leveraged on to them.
[0088] At block 208, personalized entities and vanilla entities are identified and extracted individually in all the personalized responses and vanilla responses, respectively, For identification of personalized entities and vanilla entities, the personalized responses and the vanilla responses, respectively, may be parsed by the personalization determination system 102. After identification of personalized entities and vanilla entities, relative rank weights are assigned to the personalized entities and to the vanilla entities corresponding to each personalized response and each vanilla response, respectively, and the personalized entities and the vanilla entities for the each personalized response and the each _y_anilla response are arranged, in individual sets based on the assigned relative rank weights, at block 210. The relative rank weights are assigned by the personalization determination system 102 based on one or more factors including, but not restricting to, location of entity, font, size, color, and the like. The arranged sets of personalized entities and vanilla entities are compared with each other in accordance with the present subject matter for the purpose of determination of personalization in the responses from the OSP 106. [0089] In an implementation, prior to processing the sets of personalized entities and vanilla entities for determining the personalization, the set of personalized entities for each personalized response is pair-wise compared with the set of vanilla entities for the corresponding vanilla response to identify the missing-personalized entities. Based on the comparison, the missing-personalized entities are appended in the end of the corresponding set of the vanilla entities.
[0090] Further, based on the identified personalized entities and vanilla entities from the personalized responses aiid the vanilla responses, multiple topical categories related to the text contents in each personalized entity and each vanilla entity are identified by the personalization determination system, at block 212. Further, based on the identified set of topical categories for all the personalized entities and vanilla entities, a topical relevance mapping vector is computed for each personalized entity and each vanilla entity over the set of identified topical categories, at block 212. The topical categories are identified and the topical relevance mapping vectors are computed for all the personalized entities and vanilla entities in a manner as described in detail earlier in the description. The topical relevance mapping vectors of the personalized entities and the vanilla entities are indicative of relative relevance of the corresponding personalized responses and corresponding vanilla responses to the set of identified topical categories.
[0091] At block 214, for each personalized response and the corresponding vanilla response, ranks of corresponding personalized entities are identified in the set of vanilla entities for the corresponding vanilla response. For this, each set of personalized entities is pair-wise compared with the corresponding set of vanilla entities. The procedure is carried out for identifying the ranks of all the personalized entities in all the personalized responses.
[0092] Based on the identified ranks of the_p^sonaljzed^ntities_and the topical relevance mapping vectors for the personalized entities and for the vanilla entities, a personalization vector is computed at block 216. The personalization vectors are indicative of the relative importance of the identified topical categories, which facilitates in determining the topical categories under which user interests are inferred by the OSP 106 for personalization of responses to the user, and determine a level of personalization for the user by the OSP 106 based on the identified topical categories. The personalization vector is computed based on computation of a predefined distribution function , as mentioned in equation (1), and further iteratively carrying out numerical computation based on the predefined distribution function as described earlier in the description.
[0093] Further, in an implementation, the identified topical categories and the computed relative importance of the topical categories based on the computed personalization vector are provided to the user to enable him to understand what information about him, i.e., his interests, are inferred by the OSP 106 and used for personalization in the responses to him from the OSP 106. Based on the provided information, the user may take actions to control the information that may be inferred by the OSP 106 for personalization.
[0094] Although implementations for the personalization determination system 102 have been described in language specific to structural features and/or methods, it is to be understood that the appended claims are not necessarily limited to the specific features or methods described. Rather, the specific features and methods are disclosed as exemplary implementations for determining the personalization in the responses for users from OSPs.

Claims

I/We claim:
1. A method for determining personalization in responses from an online service provider (OSP) (106) for a user, the method comprises:
fetching personalized responses for the user from the OSP (106), wherein each of the personalized responses is based on a query and at least one user identification attribute;
fetching vanilla responses from the OSP (106), wherein each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes;
determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the
OSP (106); and
computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses, wherein the relative importance of the multiple topical categories is indicative of a level of personalization and topical categories under which user interests are inferred for the personalization by the OSP (106).
2. The method as claimed in claim 1, wherein the determining the relative relevance comprises: identifying personalized entities and vanilla entities in all the personalized responses and in all the vanilla responses, respectively; and
identifying the multiple topical categories based on text contents in the personalized entities and in the vanilla entities.
3. The method as claimed in claim 2 further comprising:
for— each—of— the— ersonalized entities -and the _ vanilla-entities, -computing a topical relevance mapping vector comprising distribution of relative relevance factors over the multiple topical categories, wherein each of the relative relevance factor is indicative of a degree of relevance of respective entity on one of the multiple topical categories.
4. The method as claimed in claim 1 , wherein the computing the relative importance comprises: identifying personalized entities in each of the personalized responses; assigning relative rank weights to the personalized entities corresponding to the each of the personalized responses, wherein the relative rank weights are indicative of order of importance of the personalized entities in the respective personalized response; and
arranging the personalized entities for the each of the personalized responses, in a set, based on the relative rank weights for the comparison of the personalized responses with the vanilla responses.
5. The method as claimed in claim 4 further comprising:
identifying vanilla entities in each of the vanilla responses;
assigning relative rank weights to the vanilla entities corresponding to the each of the vanilla responses, wherein the relative rank weights are indicative of order of importance of the vanilla entities in the respective vanilla response; and
arranging the vanilla entities for the each of the vanilla responses, in a set, based on the relative rank weights for the comparison of the personalized responses with the vanilla responses.
6. The method as claimed in claim 5 further comprising, for each of the personalized responses and the corresponding vanilla response:
comparing the respective set of the personalized entities with the respective set of the vanilla entities; and
appending missing-personalized entities to end of the set of the vanilla entities, wherein the appending is based on the relative rank weights of the missing-personalized entities.
7. The method as claimed in claim 5 further comprising, for each of the personalized responses and the corresponding vanilla response:
comparing the respective set oLthe_personaIized entities_with_the respective set .of_the_. vanilla entities; and
identifying ranks of the personalized entities in the set of the vanilla entities.
8. The method as claimed in claim 7 further comprising:
computing a personalization vector based on the relative relevance of the personalized responses and the vanilla responses to the multiple topical categories and based on the ranks of the personalized entities of all the personalized responses, wherein the personalization vector is indicative of the relative importance of the multiple topical categories.
9. The method as claimed in claim 1 further comprising:
providing the multiple topical categories and the relative importance of the multiple topical categories to the user for control by the user on the level of personalization in the personalized responses from the OSP (106).
10. A personalization determination system (102) comprising:
a processor (108); and
a response fetcher (1 18) coupled to the processor (108), the response fetcher (1 18) configured to,
fetch personalized responses for a user from an online service provider (OSP) (106), wherein each of the personalized responses is based on a query and at least one user identification attribute; and
fetch vanilla responses from the OSP (106), wherein each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes;
a topic extractor (122) coupled to the processor (108), the topic extractor (122) configured to determine relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP (106); and
a personalization computing module (124) coupled to the processor (108), the personalization computing module (124) configured to compute relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses, wherein the relative importance of the mu tiple topical categories isjndicatiye of ' jLjeyel of personalization, and topical categories under which user interests are inferred for the personalization by the OSP (106).
11. The personalization determination system (102) as claimed in claim 10 further comprising an entity extractor (120) coupled to the processor (108), the entity extractor (120) configured to identify personalized entities and vanilla entities in all the personalized responses and in all the vanilla responses, respectively, wherein,
the topic extractor (122) is configured to, identify the multiple topical categories based on text contents in the personalized entities and in the vanilla entities, and
for each of the personalized entities and the vanilla entities, compute a topical relevance mapping vector comprising distribution of relative relevance factors over the multiple topical categories, wherein each of the relative relevance factor is indicative of a degree of relevance of respective entity on one of the multiple topical categories.
12. The personalization determination system (102) as claimed in claim 10 further comprising an entity extractor (120) coupled to the processor (108), the entity extractor (120) configured to, identify personalized entities in each of the personalized responses;
assign relative rank weights to the personalized entities corresponding to the each of the personalized responses, wherein the relative rank weights are indicative of order of importance of the personalized entities in the respective personalized response; and
arrange the personalized entities for the each of the personalized responses, in a set, based on the relative rank weights for the comparison of the personalized responses with the vanilla responses.
13. The personalization determination system (102) as claimed in claim 12, wherein the entity extractor (120) is configured to,
identify vanilla entities in each of the vanilla responses;
assign relative rank weights to the vanilla entities corresponding to the each of the vanilla responses, wherein the relative rank weights are indicative of order of importance of the vanilla entities in the respective vanilla response;
arrange the vanilla entities for the each of the vanilla responses, in a set, based on the relative rank— weights-for the comparison of the-personalized_responses with the vanilla responses; and
for each of the personalized responses and the corresponding vanilla response, append missing-personalized entities to end of the set of the vanilla entities, wherein the missing- personalized entities are appended based on the relative rank weights of the missing- personalized entities.
14. The personalization determination system (102) as claimed in claim 13, wherein the personalization computing module (124) is configured to, identify, for each of the personalized responses and the corresponding vanilla response, ranks of the personalized entities in the set of the vanilla entities; and
compute a personalization vector based on the relative relevance of the personalized responses and the vanilla responses to the multiple topical categories and based on the ranks of the personalized entities of all the personalized responses, wherein the personalization vector is indicative of the relative importance of the multiple topical categories.
15. The personalization determination system (102) as claimed in one of the claims 12 and 13, wherein the relative rank weights are assigned based on at least one of a location of entity and a display attribute of entity.
16. A computer-readable medium having computer-executable instructions that when executed perform acts comprising:
fetching personalized responses for a user from an online service provider (OSP) (106), wherein each of the personalized responses is based on a query and at least one user identification attribute;
fetching vanilla responses from the OSP (106), wherein each of the vanilla responses corresponds to one of the personalized responses and is based on the query for that personalized response, without user identification attributes;
determining relative relevance of each of the personalized responses and each of the vanilla responses to multiple topical categories associated with responses provided by the OSP (106); and
computing relative importance of the multiple topical categories based on the relative relevance and based on comparison of the personalized responses with the vanilla responses, wherein the relative importance of the multiple topical categories Js indicative_of a level of_ personalization and topical categories under which user interests are inferred for personalization by the OSP (106).
PCT/EP2013/003292 2012-11-26 2013-11-01 System and method for determination of personalization in online service provider responses WO2014079534A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN3632/DEL/2012 2012-11-26
IN3632DE2012 2012-11-26

Publications (1)

Publication Number Publication Date
WO2014079534A1 true WO2014079534A1 (en) 2014-05-30

Family

ID=49639835

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2013/003292 WO2014079534A1 (en) 2012-11-26 2013-11-01 System and method for determination of personalization in online service provider responses

Country Status (1)

Country Link
WO (1) WO2014079534A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017078960A1 (en) * 2015-11-02 2017-05-11 Microsoft Technology Licensing, Llc Emotionally connected responses from a digital assistant

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071328A1 (en) * 2003-09-30 2005-03-31 Lawrence Stephen R. Personalization of web search
US7440968B1 (en) * 2004-11-30 2008-10-21 Google Inc. Query boosting based on classification

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071328A1 (en) * 2003-09-30 2005-03-31 Lawrence Stephen R. Personalization of web search
US7440968B1 (en) * 2004-11-30 2008-10-21 Google Inc. Query boosting based on classification

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ZHICHENG DOU ET AL: "Evaluating the Effectiveness of Personalized Web Search", IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 21, no. 8, 1 August 2009 (2009-08-01), pages 1178 - 1190, XP011248003, ISSN: 1041-4347 *
ZHONGMING M, GAUTAM P, OLIVIA R, LIU S: "Interest-Based Personalized Search", ACM, 2 PENN PLAZA, SUITE 701 - NEW YORK USA, vol. 25, no. 1, February 2007 (2007-02-01), ACM2 Penn Plaza, Suite 701 - New York, USA, pages 1 - 38, XP040054944 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017078960A1 (en) * 2015-11-02 2017-05-11 Microsoft Technology Licensing, Llc Emotionally connected responses from a digital assistant
US10437615B2 (en) 2015-11-02 2019-10-08 Microsoft Technology Licensing, Llc Emotionally connected responses from a digital assistant

Similar Documents

Publication Publication Date Title
US20220030085A1 (en) Method, client, server, and system for sharing content
CN104604200B (en) Method and apparatus for the secret protection aggregation to user interest profile
US9348916B2 (en) Method and system for providing search services for a social media ecosystem
EP2698967A1 (en) Social network data mining method for terminal user, and relevant method, device and system
US10496263B2 (en) De-anonymization of website visitor identity
US9230030B2 (en) Method and system for mining websites
US11770438B2 (en) Network communications
US20130311283A1 (en) Data mining method for social network of terminal user and related methods, apparatuses and systems
US9686242B2 (en) Protection of sensitive data of a user from being utilized by web services
WO2014186131A1 (en) Cross platform user joining
CA2775899A1 (en) Determining connectivity within a community
US20190019222A1 (en) User/group servicing based on deep network analysis
US9866454B2 (en) Generating anonymous data from web data
JP6865763B2 (en) Data processing method and equipment
EP2725538B1 (en) Privacy protected dynamic clustering of end users
CN111177481B (en) User identifier mapping method and device
US11120176B2 (en) Object count estimation by live object simulation
US11126785B1 (en) Artificial intelligence system for optimizing network-accessible content
JP6683681B2 (en) Determining the contribution of various user interactions to conversions
US20140006438A1 (en) Virtual agent response to customer inquiries
JP2017016544A (en) Information processing device and information processing method
US9069763B2 (en) Services management application integrating social media and automated infrastructure monitoring
WO2014079534A1 (en) System and method for determination of personalization in online service provider responses
US20160283517A1 (en) Real Estate Data Gathering System and Method
WO2014194440A1 (en) Method and system for providing content with user interface

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13795158

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13795158

Country of ref document: EP

Kind code of ref document: A1