US20120030027A1 - System and method for presenting targeted content - Google Patents
System and method for presenting targeted content Download PDFInfo
- Publication number
- US20120030027A1 US20120030027A1 US13/089,772 US201113089772A US2012030027A1 US 20120030027 A1 US20120030027 A1 US 20120030027A1 US 201113089772 A US201113089772 A US 201113089772A US 2012030027 A1 US2012030027 A1 US 2012030027A1
- Authority
- US
- United States
- Prior art keywords
- user
- identifier
- social networking
- friend
- networking platform
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012545 processing Methods 0.000 claims abstract description 11
- 230000006855 networking Effects 0.000 claims description 90
- 230000002776 aggregation Effects 0.000 claims description 14
- 238000004220 aggregation Methods 0.000 claims description 14
- 238000005065 mining Methods 0.000 claims 3
- 238000012795 verification Methods 0.000 abstract description 2
- 239000000284 extract Substances 0.000 description 9
- 238000013459 approach Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 239000002537 cosmetic Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000001012 protector Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0269—Targeted advertisements based on user profile or attribute
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9558—Details of hyperlinks; Management of linked annotations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0255—Targeted advertisements based on user history
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0277—Online advertisement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/535—Tracking the activity of the user
Definitions
- Embodiments relate generally to the field of presenting targeted content to users of a website and, more particularly but not exclusively, to presenting targeted content to the users based on information aggregated from one or more online social networking platforms.
- a large number of web portals enable users to buy goods and services online. Some web portals allow users to only search or browse their inventory online and facilitate buying of goods and services available in their inventory. On the other hand, some web portals present targeted content, such as advertisements, recommendations or suggestions to a user on what goods or services the user may wish to buy.
- collaborative filtering is used with machine learning algorithms to present targeted content to users of the web portal.
- Amazon is one such web portal that appears to use collaborative filtering to group users who have carried out similar actions, and provides recommendations thereafter. It has been often observed that, sometimes, unrelated recommendations are presented to the user, when recommendations are provided based on the group a user pertains to, which has been algorithmically determined by adopting collaborative filtering algorithm.
- the instant approach may not be ideal when a user is using the web portal for purchasing gifts for other persons. While purchasing gifts, the preference of the person receiving the gift is of importance. However, the instant approach does not appear to be designed to consider the preference of the person who will be receiving the gift into consideration for providing recommendations to the user purchasing the gifts.
- Another approach for presenting targeted content to the user is by using information gathered from an online social networking platform, which the user might be using.
- a website, www.goodreads.com is one such example that appears to recommend books to its users based on the information corresponding to the user that is gathered from an online social networking platform (www.facebook.com), which the user might be using.
- the user is allowed to log into the web portal using his online social networking authentication credentials. After the user provides his online social networking authentication credentials, the user is asked to provide access to information that may be used to give recommendations. Once the user grants rights to access the information, the information is used to provide recommendation to the user.
- information corresponding to the user is gathered from only one social networking platform, which the user is using.
- a single user socializes by using more than one online social networking platform.
- a user may use LinkedIn Network to socialize and increase acquaintances within his professional work.
- the same user may also use Facebook to interact and stay in touch with his friends.
- the user may be using location based social networking platforms, such as, Foursquare to meet his friends at a given location.
- the interactions in each of these social networks are isolated from each other and there are no clear ways to aggregate the interactions of a user across social networks and share the information to applications, which can leverage this information to enhance the relevance of targeted content presented to the user.
- the technique shall enable aggregation of information corresponding to users across online social networking platforms. Furthermore, the technique shall enable sharing of the aggregated information to applications that can leverage the information to enhance the relevance of the targeted content presented to the user.
- a method for presenting targeted content to users over the internet includes enabling a user to sign into a website. An identifier is generated for the user, if the user is signing into the website for the first time. Information corresponding to the user is mined and the information is linked to the user. Further, verification is made to determine whether the generated identifier matches with existing identifiers. If the generated identifier matches with an existing identifier, then existing information corresponding to the matched identifier is linked to the user. Targeted content is presented to the user by processing at least the information linked to the user.
- a method for presenting, to a user, recommendation of gifts for the user's one or more friends over the internet includes, authenticating the user through an online social networking platform and receiving selection from the user, wherein the selection comprises at least one friends of the user, present in the online social networking platform. Thereafter, information corresponding to the friend is mined from the online social networking platform. Recommending corresponding to gifts for the friend is presented based on processing of at least the mined information.
- a system for presenting targeted content to users over the internet includes an authentication module, a data aggregation module, an identifier generation module, a database and a targeted content selection module.
- the authentication module is configured to enable a user to sign into a website.
- the data aggregation module is configured to mine information corresponding to the user.
- the identifier generation module is configured to generate an identifier for the user, if the user is signing into the website for the first time, and verify whether the generated identifier matches with existing identifiers.
- the database is configured to store mined information corresponding to the user, and link existing information corresponding to the matched identifier to the user, if the generated identifier matches with an existing identifier.
- the targeted content selection module is configured to present targeted content to the user by processing at least the information linked to the user.
- FIG. 1 is a block diagram illustrating a system 100 for presenting targeted content to users, in accordance with an embodiment
- FIG. 2 is a flow chart illustrating a method for generating identifier for a user, in accordance with an embodiment
- FIG. 3 is a flow chart illustrating a method for generating identifiers when a user creates an account using an online social networking platform, in accordance with an embodiment
- FIG. 4 is a flow chart illustrating a method for determining whether an identifier has already been created for a user whenever a new identifier has to be created, in accordance with an embodiment
- FIG. 5 is a flow chart illustrating a method for recommending gifts, which a user may wish to purchase for his friends, in accordance with an embodiment.
- FIG. 1 is a block diagram illustrating a system 100 for presenting targeted content to users, in accordance with an embodiment.
- System 100 may enable presenting targeted content, over the internet.
- the targeted content presented to the users can be, presenting recommendations corresponding to goods and services, which the users may wish to, buy or gift. Examples of goods and services can include, but are not limited to, gifts, books, concerts, restaurants, musical compositions, spa treatments, gadgets, clothing, pet accessories, jewelry and cosmetics.
- the targeted content presented to users for example, may include, but not limited to, advertisements, links to web pages and customized layout of the website the user is visiting.
- a user may use his user terminal 110 to access a website in which the targeted content is displayed to the user.
- the user terminal 110 can be, for example, a desktop computer, a laptop, a communication device, a personal digital assistant or a programmable consumer electronics device.
- the website for example, can be an ecommerce website that enables online buying of goods and services. Alternatively, the website can be a blog or a corporate website. On the other hand, the website can be a platform that allows, for example, viewing of videos (Ex: YouTube), presentations (Ex: Slideshare), documents (Ex: Scribd) or lyrics (Ex: www.lyrics.com).
- System 100 includes an authentication module 102 , a data aggregation module 104 , a database 106 , an identifier generation module 107 and a targeted content selection module 108 .
- the system 100 is configured to communicate with user terminals (Ex: User terminal 110 ) over a communication network 116 .
- user terminals Ex: User terminal 110
- FIG. 1 only one user terminal 110 is illustrated to simplify understanding of the embodiment.
- the system 100 is also configured to communicate over the communication network 116 , with one or more social networking platforms.
- a first social networking platform 112 and a second social networking platform 114 are illustrated.
- the System 100 may be coupled with one or more websites in which visitors (users) to the websites are presented with targeted content.
- the authentication module 102 may be configured to enable users of a website to sign-in to the website, either by allowing the users to create an account in the website or by allowing signing-in using an online social networking platform (Ex: First social networking platform 112 or second social networking platform 114 ). If a user signs-in using the online first social networking platform 112 , then the data aggregation module 104 , which is configured to mine data corresponding to the user from the first social networking platform 112 , extracts the data from the first social networking platform 112 after receiving permission from the user for such data mining. At least a part of the mined data is communicated to the identifier generation module 107 .
- the identifier generation module 107 is configured to generate identifiers, using the mined data, for the user and the user's contacts present in the first social networking platform 112 . Thereafter, the generated identifiers and the mined data are communicated to the database 106 .
- the database 106 is configured to receive data from the data aggregation module 104 and the generated identifiers, and store the same for retrieval when desired. It shall be noted that the identifiers and the corresponding data are linked. Additionally, the relationship between the identifiers created for various users (and their friends) may also be created and stored.
- the targeted content selection module 108 is configured to query the database 106 and process the data provided by the database 106 to select content that can be presented to the user.
- FIG. 2 is a flow chart illustrating a method for generating identifier for a user, in accordance with an embodiment.
- an identifier is generated for a user who creates an account in the website.
- the website is displayed in the web browser of the user terminal 110 . If the user does not have an account in the website, then he may create an account using an account creation web page present in the website or by using an online social networking platform. In this embodiment, the user attempts to create an account using the account creation page.
- the account creation page may request the user to provide information that is required to create an account.
- the information requested may include, first name, last name, date of birth, location and email address.
- the information required to create the account is received from the user. Thereafter, at least a part of the information that is required to generate an identifier for the user is communicated to the identifier generation module 107 , at step 206 .
- the identifier may be generated using information fields, such as, first name, last name, date of birth, email address and location. It shall be noted that, from the instant example, one of more information field may be added or removed to generate identifiers.
- FIG. 3 is a flow chart illustrating a method for generating identifiers when a user creates an account using an online social networking platform, in accordance with an embodiment.
- a user can create an account in the website using the website's account creation page or by using an online social networking platform (Ex: Facebook). If the user chooses to create an account using the online social networking platform, then at step 302 , authentication webpage of the social networking platform is displayed.
- the user provides the authentications credentials, and upon successful authentication, a web page seeking permission to access data corresponding to the user, from the social networking platform is displayed at step 304 .
- the information sought to be accessed may include, user's name, date of birth, location, email address, likes, dislikes, groups, interests and feeds. Additionally, permission may be sought to access user's friends' name, date of birth, location, email address, likes, dislikes, groups, interests and feeds. If the user does not grant access, then information is not accessed. On the other hand, if the user grants access, then at step 310 , data is extracted by the data aggregation module 104 .
- At least a part of the user's data is used to generate identifier for the user at step 312 by the identifier generation module 107 . Further, if the website configured in such a way that generation of identifier for each of user's friends is desired, then at step 318 , identifier for each of user's friends is generated using information that is accessible to the data aggregation module 104 .
- data aggregated from one or more social networking platforms is used by the system 100 to present targeted content to the user.
- the system 100 may have to identify whether data, extracted from a social networking platform, corresponding to the user is already present in the database 106 , and use the same to present targeted content.
- User 1 may create an account in the website using a social networking platform (Ex: Facebook), and provide access to data corresponding to User 2 , who is in User 1 's online social network.
- the system may generate an identifier for user 2 , extract data corresponding to User 2 and store the data corresponding to User 2 in the database 106 .
- the system may generate an identifier for User 2 . Thereafter, the system may verify whether information, aggregated from a social networking platform, corresponding to User 2 is available in the database, and use the same to present targeted content, if information is available.
- system 100 when the system 100 gets access to data corresponding to a user from more than one social networking platform, the system 100 may have to correlate the data from the social networking platforms to a single user.
- system 100 may be coupled with two websites, Website 1 and Website 2 , which allows users to create accounts in their websites using a first social networking platform and a second social networking platform, respectively.
- a user for example, User 1 may create an account using the first social networking platform in website 1 .
- the system 100 creates an identifier for User 1 , when User 1 creates an account using the first social networking platform in website 1 .
- User 1 may create an account using the second social networking platform in website 2 .
- System 100 creates an identifier for User 1 upon creation of the account in website 2 .
- the system 100 may compare the identifier generated and identify that the identifier are generated for a unique person. Thereafter, the system 100 aggregates the information, corresponding to User 1 , extracted from both the social networking platforms, and use the information to present targeted content to User 1 .
- FIG. 4 is a flow chart illustrating a method for determining whether an identifier has already been created for a user whenever a new identifier has to be created, in accordance with an embodiment.
- the user provides information that is required to create an account in the website. The information may be provided using an account creation page in the website or by using a social networking platform.
- system 100 generates an identifier using the information received by the user. The generated identifier is compared with the existing identifiers at step 406 .
- an identifier for the user has already been created.
- the instant user's online social networking friend might have created an account using the social networking platform.
- system 100 might have accessed information corresponding to the instant user, and created an identifier for the instant user.
- the instant user might have created an account in a first website, which is coupled to the system 100 , using a first social networking platform.
- the instant user might be in the process of creating an account in a second website, which is coupled to the system 100 , using a second social networking platform.
- the system might have created an identifier for the instant user when he created an account in the first website.
- the system 100 can identify unique users, and also aggregate information gathered from multiple social networking platforms to increase the relevancy of the targeted content presented to the user.
- the system checks whether there is a partial match between the newly generated identifier and the existing identifiers. If there is a partial match, then at step 412 , the system 100 checks if the partial match is satisfactory to conclude that an identifier for the instant user already exists. If the partial match is satisfactory, then the system correlates existing information corresponding to the instant user with the newly discovered information to present targeted content to the instant user. However, if the match is not satisfactory, then the system may conclude that a new unique user has been identified.
- system 100 may be coupled to an ecommerce website that enables purchasing of entities over the internet.
- the user accesses the ecommerce website using a web browser provided in the user terminal 110 .
- the user is asked to authenticate himself.
- the user may authenticate himself by communicating his authentication credentials, such as, user identification and password to the authentication module 102 .
- the user may authenticate himself using his authentication credentials for a online social networking platform, such as Facebook.
- the user can click on the sign-in button of the social networking platform and provide the required authentication credentials in the sign-in web page of the social networking platform.
- the sign-in button of the social networking platform can be provided in the ecommerce website.
- the authentication module 102 can be configured to seek additionally permission from the user. For example, when the user successfully authenticates himself by using the social networking platform, the user is requested to grant explicit permission to extract information corresponding to him. Further, permission may be sought to extract information corresponding to the user's friends. Furthermore, permission may be sought to carry out certain actions in the social networking platform, on behalf of the user.
- the data aggregation module 104 extract the information.
- the data aggregation module 104 may be configured to extract data to which the permission has been granted by the user.
- the data aggregation module 104 may extract, from the social networking platform, data corresponding to, user identification, date of birth, location of the user, email address, likes and dislikes. Additionally, the data aggregation module 104 may extract data corresponding to friends, such as, friends' name, date of birth, location, likes and dislikes.
- information to be stored in the database 106 may appear as:
- a hash function may be used, which maps username, date of birth and location to a Byte Array.
- This function could be a one-way hash function, to ensure that privacy of users is not compromised.
- the identifier generation module 107 may be configured to generate an identifier for the user.
- the identifier may be generated using name of the user, date of birth and location of the user, which are extracted from the social networking platform.
- the identifier may be generated using the name of the user and the user's date of birth.
- the identifier may be generated using the user ID and the user's date of birth.
- the identifier may be generated using the user ID, user's date of birth, email address and location of the user.
- the identifier generated and the extracted data is sent to the database 106 .
- the database 106 is configured to store the identifier and the corresponding data.
- the database 106 is configured to be queried, at least by the targeted content selection module 108 .
- the database 106 may be configured to enable retrieval of data from the database 106 by the targeted content selection 108 for further processing to generate recommendations of entities, which will be presented to the user. It shall be noted that the information used for processing is mapped to the context in which targeted content is being presented to the user.
- system 100 may be configured to recommend gifts to users, which the users may buy for his friend(s).
- FIG. 5 is a flow chart illustrating a method for recommending gifts, which a user may wish to purchase for his friends, in accordance with an embodiment.
- An ecommerce website may allow a user to purchase gifts for his friends. Such a website may be configured to present recommendations corresponding to the gifts the user's friend or friends may like.
- the user accesses the website using a web browser.
- the website may allow the user to purchase gifts or present recommendations after the user successfully authenticates himself.
- the user authenticates himself using a social networking platform.
- a link to the authentication page of the social networking platform may be provided in the ecommerce website.
- the user selects one or more friends who are in his friend network in the online social networking platform, for whom the user wishes to purchase gifts.
- the system 100 extracts information corresponding to the friend, and processes the information at step 506 . Thereafter, based on the processing, system 100 presents recommendations corresponding to the gifts the user's friend may like.
- a naive Bayes classifier is used to classify a person as a sports fanatic or tech savvy person and recommend him sports accessories or tech gadgets.
- collaborative filtering algorithm is used to recommend gifts to used based on gifting/personality related keywords in social feed
- the system may generate an identifier for the friend. Thereafter, the system 100 may verify if the generated identifier matches (completely or partially as described earlier) with existing identifiers. If the generated identifier does not match with the existing identifier, the system 100 may conclude that a new user has been identified. The system 100 extracts information corresponding to the friend from the social networking platform. The information is processed by system 100 to present recommendations corresponding to the gifts the user's friend may like.
- the system may use information corresponding to the friend, which may already exist in system 100 , and may extract any new information corresponding to the friend from the social networking platform, to process and present recommendations. It shall be noted that information, corresponding to the friend, which may have been extracted from other social networking platforms, may exist in the system. In this scenario, system 100 will be able to provide recommendation based on information, corresponding to the friend, which has been aggregated from more than one online social networking platform.
- the system 100 may be configured with two websites, one that sells goods and services, and other that facilitates purchasing gifts for friends. If the friend (from the above embodiments) has used to first website to purchase an iPhone, the system may have generated an identifier for the friend and aggregated information about the friend, including the activity of purchasing of the iPhone. Thereafter, when the user (from the above embodiments) signs-in to the second website to purchase gifts for his friend, the system 100 may generate an identifier for the friend. Thereafter, the system 100 realizes that an identifier has already been created for the friend. Subsequently, system 100 uses information corresponding to the friend, such as, purchase of the iPhone, to provide recommendation. For example, the gift recommendations may include accessories for iPhone, such as, iPhone cases, car charger and iPhone screen protector, which the user's friend may like, thereby, increasing the relevancy of the recommendations presented.
- system 100 may have access to information corresponding to the user's friend from more than one social networking platform, such as Foursquare, which may provide information corresponding to the friend's location, and another social networking platform, such as Facebook, which may provide information, such as likes, dislikes and interests, corresponding to the friend's.
- the system can use the information, aggregated from both the social networking platforms, corresponding to the friend, to provide gift recommendations to the user.
- the system may identifies that the user's friend is in London from one of the social networking platforms, and may also identify that the friend likes wine tasting, from the second social networking platform.
- the system may include wine tasting sessions and offers among the recommendation of gifts provided to the user, who may purchase the gift for his friend, thereby enhancing the relevancy of the recommendations presented.
- user friend's information is combined with recommendation algorithms, such as, collaborative algorithm, which can be used in the friend feed as additional attributes in estimating the relevance of results that are shown to the user.
- recommendation algorithms such as, collaborative algorithm
- a friend feed is analyzed for keywords in an application context, which is used to refine the neighbor-hood scores given by collaborative filtering/information retrieval algorithms.
- the important keywords themselves can be extracted from a data store combined with category information in the feed from the friend. For example, if the feed includes “Music: Britney Spears concert is great”, then a music recommendation application would add Britney Spears as one of the liked artists in Music Entities Category, by doing a data-store lookup for important string matches in the feed, combined with sentiment analysis.
- important strings in the feed are extracted using token weights, TFIDF (term frequency inverted document frequency) scores across social feed by eliminating stop words approach in one embodiment.
- TFIDF term frequency inverted document frequency
- the sentiment analysis can be done by a Bayes classifier in one embodiment.
- a SVM support vector machines classifier
- a person skilled in the art can come up with different ways of analyzing feed.
- One embodiment for instance can just use look up in the data store for the whole, skip the token weights and use a decision tree for sentiment analysis.
- all the recommendation services leveraging social network feeds can be hosted in a single domain, in which case, the website can lookup cookie values and provide recommendations without asking the user to login into social network.
- a user visits a food recommendation site
- the user is asked to log into location networking sites such as www.twitter.com or www.foursquare.com or www.google.com/latitude to retrieve his and his network's information.
- the response from the feeds can then be used to aggregate the information for each user in the response from the location based social network, using identifier approach.
- the system 100 can predict that the user likes Indian restaurant, based on his analysis of, for example, Facebook profile, and location as San Jose, from one of the location based social networks.
- the system 100 may present a user with targeted content based on information extracted, corresponding to the user, from more than one social networking platforms. This may be made possible by coupling the system 100 with more than one website that enables creation of account using distinct social networking platforms.
- system 100 may have access to various categories of information corresponding to several users. Using this information, the system may generate a graph of users and, goods and service, which users may be interested in. This graph may be used by the system to process and present targeted content.
- the example embodiments described herein may be implemented in an operating environment comprising software installed on a computer, in hardware, or in a combination of software and hardware.
Abstract
A method and system for presenting targeted content to users over the internet is provided. The method includes enabling a user to sign into a website. An identifier is generated for the user, if the user is signing into the website for the first time. Information corresponding to the user is mined and the information is linked to the user. Further, verification is made to determine whether the generated identifier matches with existing identifiers. If the generated identifier matches with an existing identifier, then existing information corresponding to the matched identifier is linked to the user. Targeted content is presented to the user by processing at least the information linked to the user.
Description
- This application claims the benefit of U.S. Provisional Application No. U.S. 61/400,663 filed Aug. 2, 2010.
- 1. Field
- Embodiments relate generally to the field of presenting targeted content to users of a website and, more particularly but not exclusively, to presenting targeted content to the users based on information aggregated from one or more online social networking platforms.
- 2. Discussion of Related Field
- It is a well-known fact that penetration of internet has increased substantially, and continues to increase. With increased penetration of the internet, users have started using internet for a gamut of reasons. Internet is being used for conducting research that helps in taking decisions, expressing views and opinions, and buying products and services, among other reasons.
- A large number of web portals enable users to buy goods and services online. Some web portals allow users to only search or browse their inventory online and facilitate buying of goods and services available in their inventory. On the other hand, some web portals present targeted content, such as advertisements, recommendations or suggestions to a user on what goods or services the user may wish to buy.
- One of the commonly adopted methodologies for presenting targeted content is collaborative filtering. Collaborative filtering is used with machine learning algorithms to present targeted content to users of the web portal. Amazon is one such web portal that appears to use collaborative filtering to group users who have carried out similar actions, and provides recommendations thereafter. It has been often observed that, sometimes, unrelated recommendations are presented to the user, when recommendations are provided based on the group a user pertains to, which has been algorithmically determined by adopting collaborative filtering algorithm. Additionally, the instant approach may not be ideal when a user is using the web portal for purchasing gifts for other persons. While purchasing gifts, the preference of the person receiving the gift is of importance. However, the instant approach does not appear to be designed to consider the preference of the person who will be receiving the gift into consideration for providing recommendations to the user purchasing the gifts.
- Another approach for presenting targeted content to the user is by using information gathered from an online social networking platform, which the user might be using. A website, www.goodreads.com, is one such example that appears to recommend books to its users based on the information corresponding to the user that is gathered from an online social networking platform (www.facebook.com), which the user might be using. In the instant approach, the user is allowed to log into the web portal using his online social networking authentication credentials. After the user provides his online social networking authentication credentials, the user is asked to provide access to information that may be used to give recommendations. Once the user grants rights to access the information, the information is used to provide recommendation to the user. It shall be noted that, in the instant approach, information corresponding to the user is gathered from only one social networking platform, which the user is using. However, it has been observed that generally a single user socializes by using more than one online social networking platform. For instance, a user may use LinkedIn Network to socialize and increase acquaintances within his professional work. The same user may also use Facebook to interact and stay in touch with his friends. Additionally, the user may be using location based social networking platforms, such as, Foursquare to meet his friends at a given location. The interactions in each of these social networks are isolated from each other and there are no clear ways to aggregate the interactions of a user across social networks and share the information to applications, which can leverage this information to enhance the relevance of targeted content presented to the user.
- In light of the foregoing discussion, there is a need for a technique to improve relevancy of the targeted content presented to users. Further, the technique shall enable aggregation of information corresponding to users across online social networking platforms. Furthermore, the technique shall enable sharing of the aggregated information to applications that can leverage the information to enhance the relevance of the targeted content presented to the user.
- In one aspect, a method for presenting targeted content to users over the internet is provided. The method includes enabling a user to sign into a website. An identifier is generated for the user, if the user is signing into the website for the first time. Information corresponding to the user is mined and the information is linked to the user. Further, verification is made to determine whether the generated identifier matches with existing identifiers. If the generated identifier matches with an existing identifier, then existing information corresponding to the matched identifier is linked to the user. Targeted content is presented to the user by processing at least the information linked to the user.
- In another aspect, a method for presenting, to a user, recommendation of gifts for the user's one or more friends over the internet is provided. The method includes, authenticating the user through an online social networking platform and receiving selection from the user, wherein the selection comprises at least one friends of the user, present in the online social networking platform. Thereafter, information corresponding to the friend is mined from the online social networking platform. Recommending corresponding to gifts for the friend is presented based on processing of at least the mined information.
- In yet another aspect, a system for presenting targeted content to users over the internet is provided. The system includes an authentication module, a data aggregation module, an identifier generation module, a database and a targeted content selection module. The authentication module is configured to enable a user to sign into a website. The data aggregation module is configured to mine information corresponding to the user. The identifier generation module is configured to generate an identifier for the user, if the user is signing into the website for the first time, and verify whether the generated identifier matches with existing identifiers. The database is configured to store mined information corresponding to the user, and link existing information corresponding to the matched identifier to the user, if the generated identifier matches with an existing identifier. The targeted content selection module is configured to present targeted content to the user by processing at least the information linked to the user.
- Embodiments are illustrated by way of example and not limitation in the Figures of the accompanying drawings, in which like references indicate similar elements and in which:
-
FIG. 1 is a block diagram illustrating asystem 100 for presenting targeted content to users, in accordance with an embodiment; -
FIG. 2 is a flow chart illustrating a method for generating identifier for a user, in accordance with an embodiment; -
FIG. 3 is a flow chart illustrating a method for generating identifiers when a user creates an account using an online social networking platform, in accordance with an embodiment; -
FIG. 4 is a flow chart illustrating a method for determining whether an identifier has already been created for a user whenever a new identifier has to be created, in accordance with an embodiment; and -
FIG. 5 is a flow chart illustrating a method for recommending gifts, which a user may wish to purchase for his friends, in accordance with an embodiment. - The following detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show illustrations in accordance with example embodiments. These example embodiments, which are also referred to herein as “examples,” are described in enough detail to enable those skilled in the art to practice the present subject matter. The embodiments can be combined, other embodiments can be utilized, or structural, logical, and electrical changes can be made without departing from the scope of what is claimed. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope is defined by the appended claims and their equivalents.
- In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one. In this document, the term “or” is used to refer to a nonexclusive “or” such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. Furthermore, all publications, patents, and patent documents referred to in this document are incorporated by reference herein in their entirety, as though individually incorporated by reference. In the event of inconsistent usages between this document and those documents so incorporated by reference, the usage in the incorporated reference(s) should be considered supplementary to that of this document; for irreconcilable inconsistencies, the usage in this document controls.
-
FIG. 1 is a block diagram illustrating asystem 100 for presenting targeted content to users, in accordance with an embodiment.System 100 may enable presenting targeted content, over the internet. The targeted content presented to the users, for example, can be, presenting recommendations corresponding to goods and services, which the users may wish to, buy or gift. Examples of goods and services can include, but are not limited to, gifts, books, concerts, restaurants, musical compositions, spa treatments, gadgets, clothing, pet accessories, jewelry and cosmetics. The targeted content presented to users, for example, may include, but not limited to, advertisements, links to web pages and customized layout of the website the user is visiting. - A user may use his
user terminal 110 to access a website in which the targeted content is displayed to the user. Theuser terminal 110 can be, for example, a desktop computer, a laptop, a communication device, a personal digital assistant or a programmable consumer electronics device. The website, for example, can be an ecommerce website that enables online buying of goods and services. Alternatively, the website can be a blog or a corporate website. On the other hand, the website can be a platform that allows, for example, viewing of videos (Ex: YouTube), presentations (Ex: Slideshare), documents (Ex: Scribd) or lyrics (Ex: www.lyrics.com). -
System 100 includes anauthentication module 102, adata aggregation module 104, adatabase 106, anidentifier generation module 107 and a targetedcontent selection module 108. Thesystem 100 is configured to communicate with user terminals (Ex: User terminal 110) over acommunication network 116. InFIG. 1 , only oneuser terminal 110 is illustrated to simplify understanding of the embodiment. Thesystem 100 is also configured to communicate over thecommunication network 116, with one or more social networking platforms. InFIG. 1 a firstsocial networking platform 112 and a secondsocial networking platform 114 are illustrated. -
System 100 may be coupled with one or more websites in which visitors (users) to the websites are presented with targeted content. Theauthentication module 102 may be configured to enable users of a website to sign-in to the website, either by allowing the users to create an account in the website or by allowing signing-in using an online social networking platform (Ex: Firstsocial networking platform 112 or second social networking platform 114). If a user signs-in using the online firstsocial networking platform 112, then thedata aggregation module 104, which is configured to mine data corresponding to the user from the firstsocial networking platform 112, extracts the data from the firstsocial networking platform 112 after receiving permission from the user for such data mining. At least a part of the mined data is communicated to theidentifier generation module 107. Theidentifier generation module 107 is configured to generate identifiers, using the mined data, for the user and the user's contacts present in the firstsocial networking platform 112. Thereafter, the generated identifiers and the mined data are communicated to thedatabase 106. Thedatabase 106 is configured to receive data from thedata aggregation module 104 and the generated identifiers, and store the same for retrieval when desired. It shall be noted that the identifiers and the corresponding data are linked. Additionally, the relationship between the identifiers created for various users (and their friends) may also be created and stored. The targetedcontent selection module 108 is configured to query thedatabase 106 and process the data provided by thedatabase 106 to select content that can be presented to the user. - As highlighted in the foregoing discussion, the
identifier generation module 107 is configured to generate identifiers using the information provided by or information mined using permission granted by the visitor.FIG. 2 is a flow chart illustrating a method for generating identifier for a user, in accordance with an embodiment. In this embodiment, an identifier is generated for a user who creates an account in the website. Atstep 202, the website is displayed in the web browser of theuser terminal 110. If the user does not have an account in the website, then he may create an account using an account creation web page present in the website or by using an online social networking platform. In this embodiment, the user attempts to create an account using the account creation page. The account creation page may request the user to provide information that is required to create an account. For example, the information requested may include, first name, last name, date of birth, location and email address. Atstep 204, the information required to create the account is received from the user. Thereafter, at least a part of the information that is required to generate an identifier for the user is communicated to theidentifier generation module 107, atstep 206. The identifier, for example, may be generated using information fields, such as, first name, last name, date of birth, email address and location. It shall be noted that, from the instant example, one of more information field may be added or removed to generate identifiers. - In the foregoing embodiment, the identifier was created using information provided by the user while creating an account using the account creation page of the website. In another embodiment, identifier for a user may be generated when the user creates an account using a social networking platform.
FIG. 3 is a flow chart illustrating a method for generating identifiers when a user creates an account using an online social networking platform, in accordance with an embodiment. As mentioned earlier, a user can create an account in the website using the website's account creation page or by using an online social networking platform (Ex: Facebook). If the user chooses to create an account using the online social networking platform, then atstep 302, authentication webpage of the social networking platform is displayed. The user provides the authentications credentials, and upon successful authentication, a web page seeking permission to access data corresponding to the user, from the social networking platform is displayed atstep 304. The information sought to be accessed, for example, may include, user's name, date of birth, location, email address, likes, dislikes, groups, interests and feeds. Additionally, permission may be sought to access user's friends' name, date of birth, location, email address, likes, dislikes, groups, interests and feeds. If the user does not grant access, then information is not accessed. On the other hand, if the user grants access, then atstep 310, data is extracted by thedata aggregation module 104. At least a part of the user's data, such as user's name, date of birth, location and sex, is used to generate identifier for the user atstep 312 by theidentifier generation module 107. Further, if the website configured in such a way that generation of identifier for each of user's friends is desired, then atstep 318, identifier for each of user's friends is generated using information that is accessible to thedata aggregation module 104. - It may be noted that, as aforementioned, data aggregated from one or more social networking platforms is used by the
system 100 to present targeted content to the user. Hence, when a user creates an account in the website using the website's account creation page, thesystem 100 may have to identify whether data, extracted from a social networking platform, corresponding to the user is already present in thedatabase 106, and use the same to present targeted content. For example, User 1 may create an account in the website using a social networking platform (Ex: Facebook), and provide access to data corresponding to User 2, who is in User 1's online social network. After gaining access to User 2's data, the system may generate an identifier for user 2, extract data corresponding to User 2 and store the data corresponding to User 2 in thedatabase 106. In a scenario, wherein User 2 creates an account in the website using the account creation page of the website, the system may generate an identifier for User 2. Thereafter, the system may verify whether information, aggregated from a social networking platform, corresponding to User 2 is available in the database, and use the same to present targeted content, if information is available. - In another scenario, when the
system 100 gets access to data corresponding to a user from more than one social networking platform, thesystem 100 may have to correlate the data from the social networking platforms to a single user. For example,system 100 may be coupled with two websites, Website 1 and Website 2, which allows users to create accounts in their websites using a first social networking platform and a second social networking platform, respectively. A user, for example, User 1 may create an account using the first social networking platform in website 1. Thesystem 100 creates an identifier for User 1, when User 1 creates an account using the first social networking platform in website 1. Additionally, User 1 may create an account using the second social networking platform in website 2.System 100 creates an identifier for User 1 upon creation of the account in website 2. Thereafter, thesystem 100 may compare the identifier generated and identify that the identifier are generated for a unique person. Thereafter, thesystem 100 aggregates the information, corresponding to User 1, extracted from both the social networking platforms, and use the information to present targeted content to User 1. - In light of the foregoing discussion, it may be noted that the
system 100 may be configured to determine whether an identifier has already been created for a user whenever thesystem 100 generates a new identifier.FIG. 4 is a flow chart illustrating a method for determining whether an identifier has already been created for a user whenever a new identifier has to be created, in accordance with an embodiment. Atstep 402, the user provides information that is required to create an account in the website. The information may be provided using an account creation page in the website or by using a social networking platform. Thereafter, atstep 404,system 100 generates an identifier using the information received by the user. The generated identifier is compared with the existing identifiers atstep 406. It shall be noted that, there can be various scenarios, wherein an identifier for the user has already been created. For example, the instant user's online social networking friend might have created an account using the social networking platform. During creation of the account,system 100 might have accessed information corresponding to the instant user, and created an identifier for the instant user. In another example, the instant user might have created an account in a first website, which is coupled to thesystem 100, using a first social networking platform. Thereafter, the instant user might be in the process of creating an account in a second website, which is coupled to thesystem 100, using a second social networking platform. In this scenario as well, the system might have created an identifier for the instant user when he created an account in the first website. Hence, by comparing the newly generated identifier with the existing identifier, thesystem 100 can identify unique users, and also aggregate information gathered from multiple social networking platforms to increase the relevancy of the targeted content presented to the user. - It shall be noted that, there can be various scenarios, wherein the newly generated identifier and the existing identifiers do not match completely. At
step 410, the system checks whether there is a partial match between the newly generated identifier and the existing identifiers. If there is a partial match, then atstep 412, thesystem 100 checks if the partial match is satisfactory to conclude that an identifier for the instant user already exists. If the partial match is satisfactory, then the system correlates existing information corresponding to the instant user with the newly discovered information to present targeted content to the instant user. However, if the match is not satisfactory, then the system may conclude that a new unique user has been identified. - In an embodiment,
system 100 may be coupled to an ecommerce website that enables purchasing of entities over the internet. The user accesses the ecommerce website using a web browser provided in theuser terminal 110. In an embodiment, the user is asked to authenticate himself. The user may authenticate himself by communicating his authentication credentials, such as, user identification and password to theauthentication module 102. Alternatively, the user may authenticate himself using his authentication credentials for a online social networking platform, such as Facebook. To authenticate himself using the website online social networking platform, the user can click on the sign-in button of the social networking platform and provide the required authentication credentials in the sign-in web page of the social networking platform. The sign-in button of the social networking platform can be provided in the ecommerce website. In an embodiment, theauthentication module 102 can be configured to seek additionally permission from the user. For example, when the user successfully authenticates himself by using the social networking platform, the user is requested to grant explicit permission to extract information corresponding to him. Further, permission may be sought to extract information corresponding to the user's friends. Furthermore, permission may be sought to carry out certain actions in the social networking platform, on behalf of the user. - If the user grants permission to the extract the requested information, then the
data aggregation module 104 extract the information. Thedata aggregation module 104 may be configured to extract data to which the permission has been granted by the user. - In an embodiment, the
data aggregation module 104 may extract, from the social networking platform, data corresponding to, user identification, date of birth, location of the user, email address, likes and dislikes. Additionally, thedata aggregation module 104 may extract data corresponding to friends, such as, friends' name, date of birth, location, likes and dislikes. - In an embodiment, information to be stored in the
database 106 may appear as: -
[user] [[userid]: 1234 [username]: Jagdish Nomula [dob]: 01/01/1976 [location]: San Jose [friends] [friend ] [[friendid]: 1324 [username]: Todd Johnson [dob]:01/02/1974 [location]: San Francisco [hobbies]: Hiking, Tennis [likes]: Britney Spears, Barak Obama [feed]: The next time Steve pulls out a new iPhone, you can be sure where everyone's eyes will be .... ] .... ]] - For the above example, in an embodiment, a hash function may be used, which maps username, date of birth and location to a Byte Array. A person skilled in art would know that this functionality could be replaced with other implementations. This function could be a one-way hash function, to ensure that privacy of users is not compromised.
- The
identifier generation module 107 may be configured to generate an identifier for the user. The identifier may be generated using name of the user, date of birth and location of the user, which are extracted from the social networking platform. - In an embodiment, the identifier may be generated using the name of the user and the user's date of birth.
- In another embodiment, the identifier may be generated using the user ID and the user's date of birth.
- In yet another embodiment, the identifier may be generated using the user ID, user's date of birth, email address and location of the user.
- The identifier generated and the extracted data is sent to the
database 106. Thedatabase 106 is configured to store the identifier and the corresponding data. Thedatabase 106 is configured to be queried, at least by the targetedcontent selection module 108. Thedatabase 106 may be configured to enable retrieval of data from thedatabase 106 by the targetedcontent selection 108 for further processing to generate recommendations of entities, which will be presented to the user. It shall be noted that the information used for processing is mapped to the context in which targeted content is being presented to the user. - In an embodiment,
system 100 may be configured to recommend gifts to users, which the users may buy for his friend(s).FIG. 5 is a flow chart illustrating a method for recommending gifts, which a user may wish to purchase for his friends, in accordance with an embodiment. An ecommerce website may allow a user to purchase gifts for his friends. Such a website may be configured to present recommendations corresponding to the gifts the user's friend or friends may like. In order to purchase gifts, the user accesses the website using a web browser. The website may allow the user to purchase gifts or present recommendations after the user successfully authenticates himself. Atstep 502, the user authenticates himself using a social networking platform. A link to the authentication page of the social networking platform may be provided in the ecommerce website. After successful authentication, the user selects one or more friends who are in his friend network in the online social networking platform, for whom the user wishes to purchase gifts. To make understanding convenient, we may assume that the user selects one friend from the social networking platform. Thesystem 100 extracts information corresponding to the friend, and processes the information atstep 506. Thereafter, based on the processing,system 100 presents recommendations corresponding to the gifts the user's friend may like. In one embodiment of extracting application related information, a naive Bayes classifier is used to classify a person as a sports fanatic or tech savvy person and recommend him sports accessories or tech gadgets. In another embodiment, collaborative filtering algorithm is used to recommend gifts to used based on gifting/personality related keywords in social feed - In an embodiment, after the user selects a friend to whom he wishes to purchase gift(s), the system may generate an identifier for the friend. Thereafter, the
system 100 may verify if the generated identifier matches (completely or partially as described earlier) with existing identifiers. If the generated identifier does not match with the existing identifier, thesystem 100 may conclude that a new user has been identified. Thesystem 100 extracts information corresponding to the friend from the social networking platform. The information is processed bysystem 100 to present recommendations corresponding to the gifts the user's friend may like. - Alternatively, if the generated identifier for the friend matches with an existing identifier, then the system may use information corresponding to the friend, which may already exist in
system 100, and may extract any new information corresponding to the friend from the social networking platform, to process and present recommendations. It shall be noted that information, corresponding to the friend, which may have been extracted from other social networking platforms, may exist in the system. In this scenario,system 100 will be able to provide recommendation based on information, corresponding to the friend, which has been aggregated from more than one online social networking platform. - As an example, the
system 100 may be configured with two websites, one that sells goods and services, and other that facilitates purchasing gifts for friends. If the friend (from the above embodiments) has used to first website to purchase an iPhone, the system may have generated an identifier for the friend and aggregated information about the friend, including the activity of purchasing of the iPhone. Thereafter, when the user (from the above embodiments) signs-in to the second website to purchase gifts for his friend, thesystem 100 may generate an identifier for the friend. Thereafter, thesystem 100 realizes that an identifier has already been created for the friend. Subsequently,system 100 uses information corresponding to the friend, such as, purchase of the iPhone, to provide recommendation. For example, the gift recommendations may include accessories for iPhone, such as, iPhone cases, car charger and iPhone screen protector, which the user's friend may like, thereby, increasing the relevancy of the recommendations presented. - In another example of recommending gifts,
system 100 may have access to information corresponding to the user's friend from more than one social networking platform, such as Foursquare, which may provide information corresponding to the friend's location, and another social networking platform, such as Facebook, which may provide information, such as likes, dislikes and interests, corresponding to the friend's. The system can use the information, aggregated from both the social networking platforms, corresponding to the friend, to provide gift recommendations to the user. For example, the system may identifies that the user's friend is in London from one of the social networking platforms, and may also identify that the friend likes wine tasting, from the second social networking platform. In light of these identifications, the system may include wine tasting sessions and offers among the recommendation of gifts provided to the user, who may purchase the gift for his friend, thereby enhancing the relevancy of the recommendations presented. - In an embodiment, user friend's information (feed information) is combined with recommendation algorithms, such as, collaborative algorithm, which can be used in the friend feed as additional attributes in estimating the relevance of results that are shown to the user.
- In one of the embodiments, a friend feed is analyzed for keywords in an application context, which is used to refine the neighbor-hood scores given by collaborative filtering/information retrieval algorithms. The important keywords themselves can be extracted from a data store combined with category information in the feed from the friend. For example, if the feed includes “Music: Britney Spears concert is great”, then a music recommendation application would add Britney Spears as one of the liked artists in Music Entities Category, by doing a data-store lookup for important string matches in the feed, combined with sentiment analysis. In an embodiment, important strings in the feed are extracted using token weights, TFIDF (term frequency inverted document frequency) scores across social feed by eliminating stop words approach in one embodiment. The sentiment analysis can be done by a Bayes classifier in one embodiment. In another embodiment, a SVM (support vector machines) classifier is used to get sentiment information about a given entity. It is to be noted that a person skilled in the art can come up with different ways of analyzing feed. One embodiment for instance can just use look up in the data store for the whole, skip the token weights and use a decision tree for sentiment analysis.
- A person skilled in art would know that social feeds that are derived in an application can be used across other applications as we are storing the feeds and users info in a data store.
- We also need to note that, we are aggregating information about the user's friend as well, from the feed in the data store, which can be used later when we need to present targeted content to the friend when the friend visits a website that is coupled to
system 100. - In another embodiment, all the recommendation services leveraging social network feeds can be hosted in a single domain, in which case, the website can lookup cookie values and provide recommendations without asking the user to login into social network.
- In an embodiment, when a user visits a food recommendation site, the user is asked to log into location networking sites such as www.twitter.com or www.foursquare.com or www.google.com/latitude to retrieve his and his network's information. The response from the feeds can then be used to aggregate the information for each user in the response from the location based social network, using identifier approach. In this embodiment, we have information about his location as well as the user's personal interests, which can be used, for example, to recommend “Indian restaurants” in “San Jose”. The
system 100 can predict that the user likes Indian restaurant, based on his analysis of, for example, Facebook profile, and location as San Jose, from one of the location based social networks. - In an embodiment, the
system 100 may present a user with targeted content based on information extracted, corresponding to the user, from more than one social networking platforms. This may be made possible by coupling thesystem 100 with more than one website that enables creation of account using distinct social networking platforms. - It shall be noted that, with time,
system 100 may have access to various categories of information corresponding to several users. Using this information, the system may generate a graph of users and, goods and service, which users may be interested in. This graph may be used by the system to process and present targeted content. - The processes described above and illustrated in the drawings is shown as a sequence of steps, this was done solely for the sake of illustration. Accordingly, it is contemplated that some steps may be added, some steps may be omitted, the order of the steps may be re-arranged, and/or some steps may be performed simultaneously.
- The example embodiments described herein may be implemented in an operating environment comprising software installed on a computer, in hardware, or in a combination of software and hardware.
- Although embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the system and method described herein. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
- Many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. It is to be understood that the description above contains many specifications, these should not be construed as limiting the scope of the invention but as merely providing illustrations of some of the personally preferred embodiments of this invention. Thus the scope of the invention should be determined by the appended claims and their legal equivalents rather than by the examples given.
Claims (20)
1. A method for presenting targeted content to users over the internet, the method comprising the steps of:
enabling a user to sign into a website;
generating an identifier for the user, if the user is signing into the website for the first time;
mining information corresponding to the user;
linking mined information to the user;
verifying whether the generated identifier matches with existing identifiers;
linking existing information corresponding to the matched identifier to the user, if the generated identifier matches with an existing identifier; and
presenting targeted content to the user by processing at least the information linked to the user.
2. The method according to claim 1 , wherein the step of enabling the user to sign into the website comprises, enabling the user to sign into the website by creating an account in the website or by authenticating himself using an online social networking platform.
3. The method according to claim 2 , further comprising, generating identifier for each of friends of the user present in the online social networking platform.
4. The method according to claim 2 , further comprising, mining information corresponding to each of friends of users present in the online social networking platform.
5. The method according to claim 1 , wherein, generating the identifier for the user comprises, using one or more of, name, sex, location, email address and age.
6. The method according to claim 1 , wherein the matched identifier is created using information corresponding to the user, gathered from an online social networking platform.
7. The method according to claim 1 , wherein the step of presenting targeted content to the user comprises, presenting at least one of goods, services, advertisements and customized layout of the website.
8. A method for presenting, to a user, recommendation of gifts for the user's one or more friends over the internet, the method comprising the steps of:
authenticating the user through an online social networking platform;
receiving selection from the user, wherein the selection comprises at least one friends of the user, present in the online social networking platform;
mining information corresponding to the friend from the online social networking platform;
processing at least the mined information;
recommending gifts for the friend based on processing of at least the mined information.
9. The method according to claim 8 , further comprising, generating an identifier for the friend.
10. The method according to claim 9 , further comprising the steps of:
comparing the generated identifier with existing identifiers; and
recommending gifts for the friend, if generated identifier matches with an existing identifier, at least based on the information corresponding to the matched identifier.
11. The method according to claim 10 , wherein the matched identifier is generated using information corresponding to the friend, wherein the information corresponding to the friend is extracted from the online social networking platform used by the user for authentication.
12. The method according to claim 10 , wherein the matched identifier is generated using information corresponding to the friend, wherein the information corresponding to the friend is extracted from an online social networking platform that is different from the online social networking platform used by the user for authentication.
13. The method according to claim 10 , wherein the matched identifier is generated using information provided by the friend in an ecommerce website.
14. A system for presenting targeted content to users over the interne, the system comprising:
an authentication module configured to enable a user to sign into a website;
a data aggregation module configured to mine information corresponding to the user;
an identifier generation module configured to generate an identifier for the user, if the user is signing into the website for the first time, and verify whether the generated identifier matches with existing identifiers;
a database configured to store mined information corresponding to the user, and link existing information corresponding to the matched identifier to the user, if the generated identifier matches with an existing identifier; and
a targeted content selection module configured to present targeted content to the user by processing at least the information linked to the user.
15. The system according to claim 14 , wherein the authentication module is configured to enable the user to sign into the website by creating an account in the website or by authenticating himself using an online social networking platform.
16. The system according to claim 15 , wherein the identifier generation module is further configured to generate identifier for each of friends of the user present in the online social networking platform.
17. The system according to claim 15 , wherein the data aggregation module is further configured to mine information corresponding to each of friends of users present in the online social networking platform.
18. The system according to claim 15 , wherein the targeted content selection module is further configured to recommend gifts for at least one user's friend present in the online social networking platform, if generated identifier for the friend matches with an existing identifier, at least based on the information corresponding to the matched identifier.
19. The system according to claim 18 , wherein the existing identifier, which matches the identifier generated for the friend, is generated using information corresponding to the friend, wherein the information corresponding to the friend is extracted from the online social networking platform used by the user for authentication.
20. The system according to claim 18 , wherein the existing identifier, which matches the identifier generated for the friend, is generated using information corresponding to the friend, wherein the information corresponding to the friend is extracted from an online social networking platform that is different from the online social networking platform used by the user for authentication, or by using information provided by the friend in an ecommerce website.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/089,772 US20120030027A1 (en) | 2010-08-02 | 2011-04-19 | System and method for presenting targeted content |
US13/908,992 US20130268596A1 (en) | 2010-08-02 | 2013-06-03 | System and method for presenting targeted content |
US14/927,431 US20160048886A1 (en) | 2010-08-02 | 2015-10-29 | System and method for presenting targeted content |
US15/081,782 US20160239877A1 (en) | 2010-08-02 | 2016-03-25 | System and method for presenting targeted content |
US15/245,208 US20160364763A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US15/245,211 US20160364764A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US16/006,850 US20190139092A1 (en) | 2011-04-19 | 2018-06-13 | Advanced techniques to improve content presentation experiences for businesses and users |
US17/232,168 US20210233121A1 (en) | 2010-08-02 | 2021-04-16 | System and method for presenting targeted content |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40066310P | 2010-08-02 | 2010-08-02 | |
US13/089,772 US20120030027A1 (en) | 2010-08-02 | 2011-04-19 | System and method for presenting targeted content |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/245,208 Continuation US20160364763A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
Related Child Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/908,992 Continuation US20130268596A1 (en) | 2010-08-02 | 2013-06-03 | System and method for presenting targeted content |
US14/927,431 Continuation US20160048886A1 (en) | 2010-08-02 | 2015-10-29 | System and method for presenting targeted content |
US15/081,782 Continuation US20160239877A1 (en) | 2010-08-02 | 2016-03-25 | System and method for presenting targeted content |
US15/245,211 Continuation US20160364764A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US15/245,208 Continuation US20160364763A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US16/006,850 Continuation US20190139092A1 (en) | 2011-04-19 | 2018-06-13 | Advanced techniques to improve content presentation experiences for businesses and users |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120030027A1 true US20120030027A1 (en) | 2012-02-02 |
Family
ID=45527684
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/089,772 Abandoned US20120030027A1 (en) | 2010-08-02 | 2011-04-19 | System and method for presenting targeted content |
US13/908,992 Abandoned US20130268596A1 (en) | 2010-08-02 | 2013-06-03 | System and method for presenting targeted content |
US14/927,431 Abandoned US20160048886A1 (en) | 2010-08-02 | 2015-10-29 | System and method for presenting targeted content |
US15/081,782 Abandoned US20160239877A1 (en) | 2010-08-02 | 2016-03-25 | System and method for presenting targeted content |
US15/245,211 Abandoned US20160364764A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US15/245,208 Pending US20160364763A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US17/232,168 Abandoned US20210233121A1 (en) | 2010-08-02 | 2021-04-16 | System and method for presenting targeted content |
Family Applications After (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/908,992 Abandoned US20130268596A1 (en) | 2010-08-02 | 2013-06-03 | System and method for presenting targeted content |
US14/927,431 Abandoned US20160048886A1 (en) | 2010-08-02 | 2015-10-29 | System and method for presenting targeted content |
US15/081,782 Abandoned US20160239877A1 (en) | 2010-08-02 | 2016-03-25 | System and method for presenting targeted content |
US15/245,211 Abandoned US20160364764A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US15/245,208 Pending US20160364763A1 (en) | 2010-08-02 | 2016-08-24 | System and method for presenting targeted content |
US17/232,168 Abandoned US20210233121A1 (en) | 2010-08-02 | 2021-04-16 | System and method for presenting targeted content |
Country Status (1)
Country | Link |
---|---|
US (7) | US20120030027A1 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130247212A1 (en) * | 2010-09-03 | 2013-09-19 | Facebook, Inc. | Providing User Confidence Information to Third-Party Systems |
US20150012336A1 (en) * | 2013-07-02 | 2015-01-08 | Facebook, Inc. | Assessing impact of communications between social networking system users on a brand |
US20150089669A1 (en) * | 2012-04-27 | 2015-03-26 | Rakuten, Inc. | Content provision device, content provision method, program, and recording medium |
US20150120800A1 (en) * | 2013-10-31 | 2015-04-30 | Mark D. Yarvis | Contextual content translation system |
US20150304058A1 (en) * | 2014-01-03 | 2015-10-22 | Johnson Manuel-Devadoss | System and method to provide the ability to the plurality of users to broadcast their plurality of personalized contents to their preferred device and preferred language |
US9203905B1 (en) | 2012-08-27 | 2015-12-01 | Google Inc. | Sessionization of visitor activity |
US20160125478A1 (en) * | 2014-10-31 | 2016-05-05 | Microsoft Corporation | Efficient promotion model |
US20180268151A1 (en) * | 2017-03-19 | 2018-09-20 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
US11205103B2 (en) | 2016-12-09 | 2021-12-21 | The Research Foundation for the State University | Semisupervised autoencoder for sentiment analysis |
US20220414685A1 (en) * | 2021-06-25 | 2022-12-29 | Jpmorgan Chase Bank, N.A. | Method and system for interpreting customer behavior via customer journey embeddings |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8666980B1 (en) | 2010-05-19 | 2014-03-04 | Amazon Technologies, Inc. | Virtual clickstream recommendations |
US10013493B1 (en) * | 2011-07-13 | 2018-07-03 | Google Llc | Customized search engines |
US8984051B2 (en) * | 2011-07-26 | 2015-03-17 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for communicating feed information to one or more recipients |
US20190037035A1 (en) * | 2017-07-31 | 2019-01-31 | Microsoft Technology Licensing, Llc | Distributed Automated Learning of User Personalization |
CN107464143A (en) * | 2017-08-15 | 2017-12-12 | 安徽婧文科技有限公司 | Network commodity marketing system and method |
CN109388360A (en) * | 2018-09-10 | 2019-02-26 | 王成刚 | A kind of interactive display system and implementation method based on Internet of Things |
CN109040306A (en) * | 2018-09-10 | 2018-12-18 | 王成刚 | intelligent display terminal based on Internet of things |
JP7082071B2 (en) * | 2019-01-30 | 2022-06-07 | 株式会社日立製作所 | Information linkage system and information linkage method |
US11677557B1 (en) | 2022-04-29 | 2023-06-13 | Codebreaker IP Reserves, LLC | Value preference capture funnel and coding system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080189188A1 (en) * | 2007-02-02 | 2008-08-07 | Jared Morgenstern | System and method for giving gifts and displaying assets in a social network environment |
US20080294624A1 (en) * | 2007-05-25 | 2008-11-27 | Ontogenix, Inc. | Recommendation systems and methods using interest correlation |
US20090055249A1 (en) * | 2007-08-13 | 2009-02-26 | Universal Passage, Inc. | Method and system for providing a structured virtual world for advertising and data mining as a part of a marketing and sales program for universal life stage decision support |
US20090222329A1 (en) * | 2005-09-14 | 2009-09-03 | Jorey Ramer | Syndication of a behavioral profile associated with an availability condition using a monetization platform |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8386519B2 (en) * | 2008-12-30 | 2013-02-26 | Expanse Networks, Inc. | Pangenetic web item recommendation system |
-
2011
- 2011-04-19 US US13/089,772 patent/US20120030027A1/en not_active Abandoned
-
2013
- 2013-06-03 US US13/908,992 patent/US20130268596A1/en not_active Abandoned
-
2015
- 2015-10-29 US US14/927,431 patent/US20160048886A1/en not_active Abandoned
-
2016
- 2016-03-25 US US15/081,782 patent/US20160239877A1/en not_active Abandoned
- 2016-08-24 US US15/245,211 patent/US20160364764A1/en not_active Abandoned
- 2016-08-24 US US15/245,208 patent/US20160364763A1/en active Pending
-
2021
- 2021-04-16 US US17/232,168 patent/US20210233121A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090222329A1 (en) * | 2005-09-14 | 2009-09-03 | Jorey Ramer | Syndication of a behavioral profile associated with an availability condition using a monetization platform |
US20080189188A1 (en) * | 2007-02-02 | 2008-08-07 | Jared Morgenstern | System and method for giving gifts and displaying assets in a social network environment |
US20080294624A1 (en) * | 2007-05-25 | 2008-11-27 | Ontogenix, Inc. | Recommendation systems and methods using interest correlation |
US20090055249A1 (en) * | 2007-08-13 | 2009-02-26 | Universal Passage, Inc. | Method and system for providing a structured virtual world for advertising and data mining as a part of a marketing and sales program for universal life stage decision support |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130247212A1 (en) * | 2010-09-03 | 2013-09-19 | Facebook, Inc. | Providing User Confidence Information to Third-Party Systems |
US8943604B2 (en) * | 2010-09-03 | 2015-01-27 | Facebook, Inc. | Providing user confidence information to third-party systems |
US20150089669A1 (en) * | 2012-04-27 | 2015-03-26 | Rakuten, Inc. | Content provision device, content provision method, program, and recording medium |
US9203905B1 (en) | 2012-08-27 | 2015-12-01 | Google Inc. | Sessionization of visitor activity |
US20150012336A1 (en) * | 2013-07-02 | 2015-01-08 | Facebook, Inc. | Assessing impact of communications between social networking system users on a brand |
US20150120800A1 (en) * | 2013-10-31 | 2015-04-30 | Mark D. Yarvis | Contextual content translation system |
US20150304058A1 (en) * | 2014-01-03 | 2015-10-22 | Johnson Manuel-Devadoss | System and method to provide the ability to the plurality of users to broadcast their plurality of personalized contents to their preferred device and preferred language |
US20160125478A1 (en) * | 2014-10-31 | 2016-05-05 | Microsoft Corporation | Efficient promotion model |
US9996860B2 (en) * | 2014-10-31 | 2018-06-12 | Microsoft Technology Licensing, Llc | Efficient promotion model |
US11205103B2 (en) | 2016-12-09 | 2021-12-21 | The Research Foundation for the State University | Semisupervised autoencoder for sentiment analysis |
US20180268151A1 (en) * | 2017-03-19 | 2018-09-20 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
US10515233B2 (en) * | 2017-03-19 | 2019-12-24 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
US11176277B2 (en) | 2017-03-19 | 2021-11-16 | International Business Machines Corporation | Automatic generating analytics from blockchain data |
US20220414685A1 (en) * | 2021-06-25 | 2022-12-29 | Jpmorgan Chase Bank, N.A. | Method and system for interpreting customer behavior via customer journey embeddings |
Also Published As
Publication number | Publication date |
---|---|
US20160239877A1 (en) | 2016-08-18 |
US20160364763A1 (en) | 2016-12-15 |
US20210233121A1 (en) | 2021-07-29 |
US20160048886A1 (en) | 2016-02-18 |
US20160364764A1 (en) | 2016-12-15 |
US20130268596A1 (en) | 2013-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210233121A1 (en) | System and method for presenting targeted content | |
US11868966B2 (en) | Utilizing cross-network identity data for audience analysis, metrics, profiling and targeting | |
US20210133817A1 (en) | Information Recommendation Method and Apparatus | |
US20120158792A1 (en) | Aggregated profile and online concierge | |
US10528574B2 (en) | Topical trust network | |
US8417698B2 (en) | Systems and methods to provide search based on social graphs and affinity groups | |
US8984647B2 (en) | Systems, methods, and computer readable media for security in profile utilizing systems | |
US9633376B2 (en) | Systems and methods for providing meta-social graphs | |
US20130046623A1 (en) | Method For Providing a Recommendation, Recommender System, and Recommender Computer Program Product | |
JP6883657B2 (en) | Multi-user login session | |
JP2013525883A (en) | Personalizing web pages outside social networking systems using content from social networking systems | |
US8521735B1 (en) | Anonymous personalized recommendation method | |
US20100274887A1 (en) | System and Method for Recommending Personalized Identifiers | |
US11586688B2 (en) | Computerized anonymous permission-based communications system with micro-catalog server enabling permission-based third-party communications | |
US10691736B2 (en) | Contextualized analytics platform | |
US9536015B1 (en) | Using social networking information | |
US20150310337A1 (en) | Method for providing a platform for building a dynamic social knowledgebase | |
US20220114638A1 (en) | Dynamically updating ecommerce basket | |
WO2014029904A1 (en) | Method and arrangement for a distributed recommendation system | |
US11785001B1 (en) | Image-based access to data | |
KR20130073163A (en) | Information searching system using bookmark | |
Ko | User-centric secure cross-site interaction framework for online social networking services | |
Schlee et al. | Analysis of Key Building Blocks in Targeted Advertising Technologies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |
|
STCV | Information on status: appeal procedure |
Free format text: APPLICATION INVOLVED IN COURT PROCEEDINGS |
|
STCV | Information on status: appeal procedure |
Free format text: COURT PROCEEDINGS TERMINATED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |
|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |