Determining diverse recommendations from data segments

This disclosure describes one or more embodiments of systems, methods, and non-transitory computer-readable media that determine a degree of diversification for item recommendations to a user based on the user's input and generate diverse item recommendations for the user according to the degree of diversification. For instance, the disclosed systems can receive a diversification metric from a client device based on a user interaction with a selectable tool (or another interactive element) in a graphical user interface. From among data segments representing users clustered according to item affinities, the disclosed systems can subsequently use the diversification metric to identify a data segment that is diverse from a reference data segment for the user. The disclosed systems further rank items associated with the diverse data segment to select an anomalous item as an item recommendation for display on the client device.

BACKGROUND

In recent years, computing devices have increasingly used recommendation systems to generate content recommendations in part by executing analytics tools to categorize user behavior or characteristics. For instance, some existing recommendation systems can analyze user data to determine recommendations for digital images, video, or other content for users and provide the content recommendations to the users' computing devices. Such conventional recommendation systems provide content recommendations to a user device according to styles, tastes, and contexts associated with the user from data analytics tools. Although these conventional recommendation systems can determine and provide content recommendations, they have a number of technical shortcomings. For instance, some conventional systems inefficiently create informational echo chambers by repeatedly generating a same or similar type of content recommendation for a user. As a further example, conventional systems can also rigidly rely on historical data recording past user interactions with digital content to determine content recommendations—thereby reinforcing informational echo chambers.

SUMMARY

This disclosure describes one or more embodiments of systems, computer-readable media, and methods that solve the foregoing problems and provide other benefits. In some cases, the disclosed systems determine a degree of diversification for item recommendations to a user based on the user's input and generate diverse item recommendations for the user according to the degree of diversification. For example, the disclosed systems can generate data segments representing users according to item affinities clustered (in some cases) according to a machine-learning-clustering algorithm. The systems can further receive a diversification metric from a client device reflecting a degree of diversification in item recommendations based on a user interaction with a selectable tool (or another interactive element) in a graphical user interface. From among the data segments, the disclosed systems can subsequently use the diversification metric to identify a data segment that is diverse from a reference data segment for the user. The disclosed systems can further rank items associated with the diverse data segment to select an anomalous item as an item recommendation for display on the client device. By using a user-selected diversification metric for item recommendation preferences, the disclosed systems can efficiently and flexibly determine diverse item recommendations for users.

DETAILED DESCRIPTION

The disclosure describes one or more embodiments of a diverse recommendation system that can determine a degree of diversification for item recommendations to a user based on the user's input and generate diverse item recommendations for the user according to the degree of diversification. For example, the diverse recommendation system can use a machine-learning-clustering algorithm to generate data segments that represent users (or other data) clustered according to affinities for particular items. The diverse recommendation system can further receive an indication from a client device of a selection by a user of a diversification metric reflecting a degree of diversification in item recommendations. Such a selection can come via a selectable-diversification tool within a customizable-recommendation-user interface. From among the data segments, the diverse recommendation system can further identify a diverse data segment within a threshold distance, as indicated by the diversification metric, of a reference data segment that corresponds to the user. The diverse recommendation system can further rank items associated with the diverse data segment and select an anomalous item for recommendation to the user from the ranked items. Subsequently, the diverse recommendation system provides the anomalous item as an item recommendation for display on the client device of the user.

As just mentioned, the diverse recommendation system can generate data segments. For example, the diverse recommendation system can generate data segments that represent users clustered according to affinities for particular items from a set of items. Such items may include products, media-content items, or various other items. In some embodiments, the diverse recommendation system utilizes user segmentation (or clustering) algorithms (e.g., machine-learning-clustering algorithms) to generate data segments, such as, but not limited to, unsupervised non-parametric clustering, domain expertise, non-supervised clustering seeded with domain expertise, or semi-supervised clustering seeded with domain expertise.

As also mentioned above, the diverse recommendation system can receive an indication from a client device of a diversification metric reflecting a degree of diversification in item recommendations. In some cases, the diverse recommendation system provides data to a client device for a graphical user interface with a selectable-diversification tool to configure diversification metrics (e.g., via a graphical user interface for item-recommendation-preference settings). Based on user interaction with the graphical user interface, the diverse recommendation system can receive an indication of a selection by a user of a diversification metric. In addition to (or as part of) receiving the diversification metric, the diverse recommendation system can also receive one or both of a frequency metric indicating a frequency with which the user receives recommendations of anomalous items and a time metric indicating a time period in which the user receives recommendations of anomalous items.

Upon receiving the diversification metric, the diverse recommendation system can identify, from among data segments, a diverse data segment within a threshold distance of a reference data segment. In some cases, the diversification metric indicates the threshold distance between the diverse data segment and the reference data segment. For example, the diverse recommendation system can identify a reference data segment that corresponds to the user from a plurality of data segments. The diverse recommendation system can further identify neighboring data segments within a threshold distance, as indicted by the diversification metric, from the reference data segment. From the identified neighboring data segments, the diverse recommendation system selects a data segment as the diverse data segment. In some embodiments, the diverse recommendation system selects the most diverse data segment (e.g., having the greatest distance from the reference data segment within the threshold distance) from among the neighboring data segments as the diverse data segment.

After identifying a diverse data segment, the diverse recommendation system can select an anomalous item for recommendation to the user corresponding to the identified diverse data segment. In particular, the diverse recommendation system can identify items associated with the diverse data segment, such as items associated with users in the diverse data segment. Subsequently, in some embodiments, the diverse recommendation system determines user-preference scores for the items based on one or both of preference factors for the items and weights based on user behavior of the user. Indeed, the diverse recommendation system can rank the items using the user-preference scores and select the highest ranked item as the anomalous item (e.g., the item having the highest user-preference score). The diverse recommendation system can further provide the anomalous item as a diverse item recommendation for display on a client device in a variety of contexts, such as recommendations on a website or in-application recommendations.

As an illustration, the diverse recommendation system can generate data segments that represent users clustered according to affinities for particular clothing products from a set of clothing products (as the items) utilizing user data and item data of an e-commerce website. On the e-commerce website, the diverse recommendation system can provide data for a customizable-recommendation-user interface with a selectable-diversification tool (or option) to receive a selection of a diversification metric reflecting a degree of diversification in clothing product recommendations. Then, the diverse recommendation system can utilize the diversification metric to identify a diverse data segment (e.g., corresponding to a diverse clothing style) that is within a threshold distance of a reference data segment (e.g., corresponding to a clothing style that the user has an affinity towards). Based on the diverse data segment, the diverse recommendation system can select a clothing item (e.g., a popular item in the diverse data segment using user-preference scores) as the anomalous (or diverse) item and provide the clothing item as a diverse item recommendation to the user's client device.

As suggested above, many conventional recommendation systems inefficiently create informational echo chambers by repeatedly generating a same or similar type of content recommendation for a user and rigidly following algorithms that reinforce such echo chambers. For instance, conventional recommendation systems often determine content recommendations for users using information from past user interactions with content. By using information from past user interactions, many conventional recommendation systems generate analogous or homogenous content recommendations of the same or similar type of content.

When determining and providing analogous or homogenous content recommendations to users, conventional recommendation systems often generate computing inefficiencies. To reduce homogenous content recommendations, for instance, some conventional recommendation systems purge user data (or enable a user to purge user data such as cookies) to reset how and what type of content recommendations are provided to the user. Such conventional recommendation systems inefficiently utilize memory, processing time, and other computing resources by having to repetitively collect user data and terminate the use of that user data to make non-analogous or non-homogenous content recommendations. By purging or disregarding available user data to make non-analogous or non-homogenous content recommendations, some conventional recommendation systems inefficiently store user data that is being underutilized, relearn user affinities to content, and/or provide inaccurate content recommendations while relearning.

In addition to such computing inefficiencies, by generating analogous or homogenous content recommendations, some conventional recommendation systems repeatedly determine and present content recommendations that have already been seen or acted upon by a user (e.g., via another source). By providing repetitive or similar content recommendations that are not utilized or interacted with by the user, conventional recommendation systems often inefficiently utilize computing resources by using repetitive transmissions over a network—or back-and-forth communications for content requests over a network—to send the same or similar digital content. Such repetitive communications are inefficient uses of computing inputs and data repeatedly consuming portions of a network's bandwidth.

In addition to computing or network inefficiencies, some conventional recommendation systems rigidly follow recommendation algorithms that reinforce the echo chamber effect of same or similar content recommendations. Due to the complex nature of many conventional recommendation systems, for instance, conventional recommendation systems are not easily configurable to reduce homogenous content recommendations. Rather than adjusting recommendations, conventional systems can repeatedly rely on tracked user interactions with videos, websites, and other digital content to create the same or similar recommendations tied to the same types of user interactions. As just mentioned, some conventional recommendation systems purge user data (or enable a user to purge user data) to reduce informational echo chambers caused by homogenous content recommendations at the cost of underutilizing the purged user data. Even if users reset existing cookies (or other user data) to reduce homogenous content recommendations, some conventional recommendation systems apply the same rigid algorithm based on tracked user interactions to generate a new echo chamber of the same or similar content recommendations.

The disclosed diverse recommendation system provides several advantages over conventional systems by determining diverse item recommendations using an adjustable or selectable diversification metric. For example, the diverse recommendation system avoids and solves the informational echo chambers resulting from conventional machine-learning algorithms by providing a graphical-user-interface tool to easily adjust and control a degree of diversification for item recommendations. As noted above, some conventional machine-learning algorithms learn inferences for a user based on a self-perpetuating user dataset to create echo chambers of the same or similar item recommendations. Unlike conventional machine-learning algorithms that repetitively provide content recommendations learned from a single data cluster, the diverse recommendation system can both generate data segments using a machine-learning-clustering algorithm and capture a variety of item recommendations from diverse data segments by using an adjustable diversification metric customized with a selectable-diversification tool. In addition to more flexibly adjusting the diversity of item recommendations, in some cases, the diverse recommendation system provides tools to adjust one or both of the frequency and time periods with which a system provides diverse item recommendations corresponding to diverse segments.

In addition to improved flexibility, the diverse recommendation system improves the efficiency of computing devices that use conventional machine-learning algorithms for item recommendations. By determining and providing diverse item recommendations based on a user specified degree of diversification, the diverse recommendation system can deliver anomalous item recommendations on computing devices and—in contrast to conventional systems—avoid purging and relearning user data to select item recommendations. Unlike conventional recommendation systems, the diverse recommendation system can determine a degree of diversification for item recommendations based on a user's selection or other input and generate diverse item recommendations according to the degree of diversification, thereby exposing users to diverse content not previously seen or acted upon.

By diversifying item recommendations, the diverse recommendation system more efficiently uses computational resources to generate content recommendations. For instance, the diverse recommendation system efficiently utilizes user data to determine item recommendations. In contrast to some conventional systems, the diverse recommendation system can determine diverse item recommendations (e.g., non-homogenous item recommendations) without having to purge user data or terminate the use of already obtained user data. By utilizing a user specified degree of diversification to determine a diverse data segment and an anomalous item corresponding to that diverse data segment, the diverse recommendation system can determine and provide diverse item recommendations while continuing to utilize existing stored user data or without relearning user affinities to items.

In addition to more efficient use of computing resources, in some embodiments, the diverse recommendation system also provides interactive elements within a graphical user interface that introduces a novel functionality—quickly and efficiently facilitating the configuration of a diversification metric that reflects a degree of diversification in item recommendations. Unlike conventional graphical user interfaces that lack tools for user input for item recommendations, in some cases, the diverse recommendation system provides a selectable-diversification tool within a customizable-recommendation-user interface that (upon user interaction) changes the degree of diversification in item recommendations. By providing the selectable-diversification tool within a customizable-recommendation-user interface, the diverse recommendation system can determine and provide diverse item recommendations to users tailored to a user's diversification preferences—thereby more efficiently delivering customized and diverse item recommendations without users purging cookies (or user data) or purging or ignoring existing user data.

As indicated by the foregoing discussion, this disclosure describes various features and advantages of the diverse recommendation system. As used in this disclosure, a data segment includes a group or cluster of data points corresponding to one or more characteristics or events. In particular, a data segment can include a group of multidimensional datapoints representing users clustered according to characteristics or tracked user behavior over a network. In particular, a data segment can include a group of multidimensional data points representing users clustered according to affinities for particular items. More specifically, a data segment can include a cluster of users (as multidimensional datapoints) that share similarities in their affinities for particular items (e.g., a similar style, similar genre, similar category).

Additionally, as used in this disclosure, an item includes an object, digital content, or a service. In particular, an item can include an object, digital content, or a service that is viewable, obtainable, or accessible by a user. For instance, items can include products (e.g., clothing, electronics, food), software programs and/or applications (e.g., mobile phone applications, computer applications), media-content items such as, but not limited to images, videos, articles, website links, graphic-based assets, and/or services (e.g., hotels, airline flights, lessons).

Additionally, as used in this disclosure, an item recommendation includes a digital communication or graphical representation describing, portraying, or representing an item or information associated with the item. In particular, an item recommendation can include a digital communication or graphical representation of an item or information corresponding to the item using, but not limited to, an online advertisement, an email, Multimedia Messaging Service (“MMS”), Short Message Service (“SMS”), social-networking post, text, links, and/or selectable elements associated with items for display within a graphical user interface.

Furthermore, as used in this disclosure, an anomalous item includes an item diverse or different from items preferred, viewed, or interacted with by a user. In particular, an anomalous item can include an item corresponding to a diverse data segment that is distinct from particular items corresponding to a reference data segment corresponding to a user. Indeed, an anomalous item can include an item selected from a set of items corresponding to user datapoints from a diverse data segment, such as an item from a set of items with which users in a diverse data segment share a strong affinity. Similarly, an anomalous item can include an item selected from such a diverse data segment, as described below.

As used in this disclosure, a diversification metric includes a value reflecting a degree or amount of diversification in an item recommendation. In particular, a diversification metric can include a value indicating a distance value between a reference data segment corresponding to a user and a diverse data segment or a distance value between a data point from a reference data segment corresponding to a user and another data point from a diverse data segment.

As used in this disclosure, a distance or a distance value includes a value that represents an amount of space or values along one or more axes between data points or data segments within multidimensional space. In particular, a distance can include a value that represents the amount of space between various combinations of data points, center points of clusters, cluster edges within a multidimensional space. For instance, a distance value can represent a quantification of similarities or dissimilarities between entities (e.g., datapoints, clusters). In some embodiments, a shorter distance between two entities in a multidimensional space can represent a greater similarity between the two entities (e.g., a short distance between the center point of two clusters can represent that the two clusters are similar).

As used in this disclosure, a frequency metric includes a value that represents a rate of occurrences. In particular, a frequency metric can include a value that indicates a frequency with which a user receives item recommendations. Moreover, a frequency metric can include a value that indicates a frequency with which a user receives recommendations of anomalous items. For example, a frequency metric can include a time based rate (e.g., once per day, twice per day, once per week, once per month).

As used in this disclosure, a time metric includes a value representing a time period. In particular, a time metric can include a value that indicates a time period in which the user receives item recommendations. More specifically, a time metric can include a value that indicates a time period in which a user receives recommendations of anomalous items. For instance, a time metric can include a time value (e.g., ten hours, three days, two weeks, two months).

As used in this disclosure, a user-preference score includes a score representing a preference and/or relevance of an item for a user. In particular, a user-preference score can include a value corresponding to a count of an item that has been purchased, clicked, downloaded, viewed, listened to, selected, searched for, or consumed. For example, a user-preference score can be determined for an item using an evaluation of preference factors corresponding to the item, such as various combinations of one or more of purchases, downloads, views, listens, selections, searches, or consumptions.

As used in this disclosure, item data includes information corresponding to an item. In particular, item data can include information corresponding to characteristics and/or attributes of a product (e.g., color, size, product ID, weight, price) or a media-content item (e.g., title, genre, category, data format, data size, streaming quality, rating). Additionally, item data can include preference factors for the item. Moreover, as used in this disclosure, a preference factor (i.e., an item preference factor) includes a characteristic and/or attribute corresponding to an item that is utilized to determine a user-preference score for the item. For example, a preference factor can include, but is not limited to, clicks on websites associated with a particular item, downloads of a particular item, listens of a particular item, purchases of the particular item, available quantity of the particular item, views of the particular item, selections of a particular item, searches for a particular item, pricing of the particular item, interaction trends associated with the particular item, and/or other user interactions with the particular item.

As used in this disclosure, user data includes information corresponding to a user. In particular, user data can include information corresponding to characteristics and/or attributes of a user. For example, user data can include user demographic data (geographic location, gender, age), user client device data (e.g., device type, OS type), and/or user behavior data. Furthermore, as used in this disclosure, user behavior (i.e., user behavior data) includes interactions associated with a user. In particular, user behavior can include interactions of a user in relation to a set of items and/or an entity associated with the set of items. For example, user behavior can include interactions of a user within an e-commerce website (e.g., purchases, views, visits) with products (e.g., items) of the e-commerce website. Additionally, user behavior can include interactions of a user within a media-content streaming application (e.g., clicks, views, saves, downloads) with media-content (e.g., video streams) of the media-content streaming application.

As used in this disclosure, a slider tool includes an interactive element within a graphical user interface that can be adjusted to modify a value. In particular, a slider tool can include an interactive element within a graphical user interface that facilitates the selection of a value by adjusting or sliding the element (e.g., via a touchscreen interaction, cursor interaction) to change the value. For example, the diverse recommendation system can provide a slider tool within a customizable-recommendation-user interface to adjust a value associated with a diversification metric, frequency metric, and/or a time metric for diverse item recommendations.

As used in this disclosure, a clustering algorithm (or a machine-learning-clustering algorithm) includes a method for grouping datapoints based on data or descriptors corresponding to the datapoints. In particular, a clustering algorithm can include a method for using distances between datapoints, that represent a degree of similarity between the datapoints (e.g., determined using statistical analysis, machine learning), to group similar datapoints near each other in a multidimensional space. For example, the diverse recommendation system can utilize a clustering algorithm to cluster datapoints corresponding to users that have similar affinities towards particular items. In addition, a clustering algorithm can include, but is not limited to, Bayesian non-parametric clustering (e.g., unsupervised), k-means clustering, mean-shift clustering, density based spatial clustering, gaussian-based clustering, and/or hierarchical clustering. For instance, a clustering algorithm can include a non-supervised clustering algorithm seeded with domain expertise or a semi-supervised clustering algorithm with domain expertise. Furthermore, as used in this disclosure, an unsupervised non-parametric clustering algorithm includes a clustering algorithm that utilizes any variety of variables (e.g., infinite dimensions) to group (or cluster) datapoints without utilizing a target variable.

Turning now to the figures,FIG. 1illustrates a schematic diagram of a system100(or environment) in which a diverse recommendation system106can operate in accordance with one more embodiments. As illustrated inFIG. 1, the system100includes server device(s)102, a network108, an administrator device114, and client devices110a-110n. As further illustrated inFIG. 1, the one or more components of the system100can communicate with each other (e.g., via network108and/or directly).

As illustrated inFIG. 1, the server device(s)102can include a variety of types of computing devices, including those explained below with reference toFIG. 9. The server device(s)102can include a data analytics system104which further includes the diverse recommendation system106. The diverse recommendation system106(via server device(s)102) can store, identify, generate, retrieve, and/or utilize a variety of user data, item data, segmentation data, clustering algorithms and/or models, graphical user interfaces (for recommendation preferences and/or item recommendations), and/or diversification metrics. In addition, the diverse recommendation system106can utilize a diversification metric to identify a diverse data segment and/or a diverse (or anomalous) item recommendation for a user (as described below).

Furthermore, as mentioned above and as shown inFIG. 1, the system100includes the administrator device114. In one or more embodiments, the administrator device114may include, but is not limited to, a mobile device (e.g., a smartphone, tablet), a laptop, a desktop, or another type of computing device as described below with reference toFIG. 9. In one or more embodiments, the administrator device114can host, provide, and/or communicate a platform (e.g., a website, application, digital service) to users (of client devices110a-110n). Indeed, in some embodiments, the administrator device114stores, generates, and/or retrieves user data, item data, and/or segmentation data from communications with the client devices110a-110nvia a platform (e.g., an e-commerce website and/or application). For instance, the administrator device114can provide user data, item data, and/or segmentation data to the diverse recommendation system106(via server device(s)102) to determine an anomalous item recommendation in accordance with one or more embodiments herein.

In addition, as shown inFIG. 1, the system100includes the client devices110a-110n. In some embodiments, the client devices110a-110nmay include but are not limited to, a mobile device (e.g., a smartphone, tablet), a laptop, a desktop, or another type of computing device as described below with reference toFIG. 9. In one or more embodiments, users of the client devices110a-110ncan interact with platforms (e.g., website, application, digital service) to provide user data (or interactions) to the administrator device114and/or server device(s)102. Moreover, the client devices110a-110ncan receive and display graphical user interfaces that obtain information such as diversification metrics, frequency metrics, and/or time metrics to provide to the diverse recommendation system106(via the administrator device114and/or server device(s)102). Furthermore, the client devices110a-110ncan receive item recommendations (for display to users) from the administrator device114and/or server device(s)102.

To access the functionalities of the diverse recommendation system106, in certain embodiments, an administrator interacts with an administrator device application116on the administrator device114. Similarly, to provide user data, selection data, or to access other functions (e.g., item recommendations) of the data analytics system104, in some implementations, users interact with content applications112a-112non the client devices110a-110n, respectively. For example, the administrator device application116and/or the content applications112a-112ncan be software applications (e.g., for the platforms mentioned above) installed on the administrator device114and/or the client devices110a-110n, respectively, or a software application hosted on the server device(s)102. In addition, when hosted on the server device(s)102, the administrator device application116and/or the content applications112a-112ncan be accessed by the administrator device114and/or the client devices110a-110nthrough a web browser.

Additionally, as shown inFIG. 1, the system100includes the network108. As mentioned above, the network108can enable communication between components of the system100. In one or more embodiments, the network108may include a suitable network and may communicate using any communication platforms and technologies suitable for transporting data and/or communication signals, examples of which are described with reference toFIG. 9. Furthermore, althoughFIG. 1illustrates the server device(s)102, administrator device114, and the client devices110a-110ncommunicating via the network108, the various components of the system100can communicate and/or interact via other methods (e.g., the server device(s)102and the administrator device114can communicate directly).

As an overview of the diverse recommendation system, a client device from the client devices110a-110n(associated with a user) interacts with a platform (e.g., an e-commerce website) hosted by the administrator device114to provide user data (e.g., interactions with items) and/or item recommendation preferences (e.g., a diversification metric via a selectable-diversification tool). The administrator device114can provide the user data, item data, and the diversification metric for one or more users to the diverse recommendation system106(via the server device(s)102). Subsequently, the diverse recommendation system106utilizes data segments (associated with items and users of the platform hosted by the administrator device114) with the diversification metric to determine an anomalous item for the user (in accordance with one or more embodiments herein). Then, the administrator device114can generate a diverse item recommendation for the determined anomalous item and provide the diverse item recommendation to the user.

AlthoughFIG. 1illustrates the diverse recommendation system106being implemented by a particular component and/or device (e.g., server device(s)102) within the system100. But the diverse recommendation system106(and/or the data analytics system104) can be implemented, in whole or in part, by other computing devices and/or components in the system100. For example, the diverse recommendation system106(and/or the data analytics system104) can be implemented in whole, or in part, by the administrator device114.

As mentioned above, the diverse recommendation system106can determine (or select) an anomalous item for recommendation to a user. For example,FIGS. 2A-2Billustrate an overview of the diverse recommendation system106selecting an anomalous item for recommendation to a user in accordance with one or more embodiments. More specifically,FIGS. 2A-2Billustrate a flowchart of the diverse recommendation system106generating a plurality of data segments, receiving a diversification metric, identifying a diverse data segment, selecting an anomalous item, and providing the anomalous item as an item recommendation to a client device.

For instance, as shown inFIG. 2A, the diverse recommendation system106generates a plurality of data segments in an act202. Indeed, the diverse recommendation system106can utilize a dataset for a set of users and a dataset for a set of items to identify user data and corresponding item data for each user (e.g., interactions with items). Subsequently, the diverse recommendation system106can generate data segments by clustering particular users from the set of users according to affinities to particular items from the set of items (e.g., to cluster users that have an affinity towards similar items). Indeed, in one or more embodiments, the diverse recommendation system106utilizes a clustering algorithm to cluster users according to affinities for particular items. Additional detail regarding the diverse recommendation system106generating data segments is provided below (e.g., in relation toFIG. 3).

Furthermore, as shown inFIG. 2A, the diverse recommendation system106receives a diversification metric in an act204. In particular, as shown inFIG. 2A, the diverse recommendation system106can generate data for a customizable-recommendation-user interface with a selectable-diversification tool for display on a client device. Afterwards, the diverse recommendation system106can receive (via the server device(s)102or receivers for the server device(s)102), from the client device via user interaction with the selectable-diversification tool within the customizable-recommendation-user interface, a diversification metric (e.g., as a numerical value). Indeed, as illustrated inFIG. 2A, the selectable-diversification tool can include a slider tool with a range of values for the diversification metric. The diverse recommendation system106can also receive a frequency metric and/or a time metric from a client device. Additional detail regarding the diversification metric and customizable-recommendation-user interfaces to select a diversification metric is provided below (e.g., in relation toFIGS. 4A and 4B).

Additionally, as shown inFIG. 2A, the diverse recommendation system106identifies a diverse data segment utilizing a diversification metric in an act206. More specifically, as shown inFIG. 2A, the diverse recommendation system106can identify a reference data segment and identify a diverse data segment that is a threshold distance within the reference data segment as indicated by the diversification metric. Indeed, the diverse recommendation system106can utilize the diversification metric to determine the threshold distance and identify data segments within a multidimensional space that are within the threshold distance from the reference data segment. As shown inFIG. 2A, the diverse recommendation system106identifies a data segment that is furthest in distance from the reference data segment while still within the threshold distance (e.g., indicated by the illustrated arrow) as the diverse data segment. Additional detail regarding identifying a diverse data segment is provided below (e.g., in relation toFIG. 5A).

Moreover, as illustrated inFIG. 2B, the diverse recommendation system106selects an anomalous item in an act208. In particular, as shown inFIG. 2B, the diverse recommendation system106selects an anomalous item from items associated with user datapoints from the identified diverse data segment. In some embodiments, the diverse recommendation system106identifies one or more items associated with the diverse data segment (e.g., using item associations with user datapoints within the diverse data segment). Then, the diverse recommendation system106can determine user-preference scores for the one or more items to rank the one or more items. Subsequently, as shown inFIG. 2B, the diverse recommendation system106selects an anomalous item from the ranked items in the act208. Additional detail regarding determining user-preference scores, ranking items, and selecting an anomalous item is provided below (e.g., in relation toFIGS. 5B and 5C).

As also shown inFIG. 2B, the diverse recommendation system106provides the anomalous item as an item recommendation in an act210. In particular, the diverse recommendation system106can utilize the selected anomalous item to generate a diverse item recommendation. Then, as shown inFIG. 2B, the diverse recommendation system106can provide the diverse item recommendation for display within a graphical user interface of a client device (e.g., a product recommendation via an email). Additional detail regarding providing anomalous item selections as item recommendations is provided below (e.g., in relation toFIG. 6).

As mentioned above, the diverse recommendation system106can generate a plurality of data segments that represent users clustered according to affinities for particular items. For example,FIG. 3illustrates the diverse recommendation system106generating a plurality of data segments. Indeed, as shown inFIG. 3, the diverse recommendation system106can identify user data302for a plurality of users and those user's associations with items (from a dataset of items). As illustrated inFIG. 3, the user data302includes particular user's interactions with particular items from the dataset of items (e.g., views, purchases, saves). Subsequently, the diverse recommendation system106can utilize a clustering algorithm to analyze the user data to cluster users with similar affinities toward similar items in a multidimensional space. For instance, as shown inFIG. 3, the diverse recommendation system106can generate data segments in an act304by clustering user datapoints (including the user data) using a clustering algorithm and then determining data segments of user datapoints from those clusters.

In one or more embodiments, the diverse recommendation system106receives (or identifies) a dataset of users and a dataset of items from the administrator device114. As an example, the item data can include item information for a platform. The diverse recommendation system106can receive (or obtain) the item information (as item data) and user data (e.g., information about users and interactions with items on the platform). For example, as illustrated inFIG. 3, the user data302indicates a variety of user interactions from users with items. As an illustration, the item data can include product information for an e-commerce website and the diverse recommendation system106can receive (or obtain) the product information (as item data) and user data (e.g., information about users and interactions with items on an e-commerce website).

Indeed, in one or more embodiments, the diverse recommendation system106can receive (or identify) item data and user data that is specific to a variety of platforms hosted by the administrator device114. For example, for a news or magazine content provider, the items can include media-content, such as articles and/or categories of news. Moreover, the user data can include user interactions with particular articles and/or categories on the news or magazine content provider platform. Furthermore, in some embodiments, the diverse recommendation system106can receive (or identify) item data and user data for a video streaming provider. For instance, for the video streaming provider, the items can include media-content, such as videos, and the user data can include user interactions with particular videos on the video streaming provider platform.

Upon receiving (or identifying) user data (with item associations), the diverse recommendation system106can utilize the user data to generate data segments. In particular, the diverse recommendation system106can analyze the user data (e.g., items associated with each user, information about the users, interactions with items) to cluster datapoints representing users that have an affinity to similar items closer together in a multidimensional space. For example, the diverse recommendation system106can utilize a clustering algorithm with parameters for the various user data (and/or item data) to determine clusters of user datapoints with similarities. Indeed, the diverse recommendation system106can minimize distance in the multidimensional space between user datapoints that have a greater similarity (e.g., based on user behavior with items, user information, item associations) and increase distance between user datapoints that have lesser similarities. Then, the diverse recommendation system106can identify a cluster (or group) of user datapoints as a data segment.

For example, in one or more embodiments, the diverse recommendation system106can utilize Bayesian non-parametric clustering to cluster user datapoints to generate the data segments. For instance, by utilizing Bayesian non-parametric clustering, the diverse recommendation system106can utilize various combinations of user data and/or item data to determine user datapoint clusters (e.g., a non-parametric clustering approach can include an undefined or various numbers of dimensions). Furthermore, the diverse recommendation system106can utilize Bayesian non-parametric clustering to continuously obtain user data and/or item data to update user datapoint clusters and/or a number of existing clusters (e.g., as new items or users data is introduced, the diverse recommendation system106can generate new clusters). Indeed, the diverse recommendation system106can utilize Bayesian non-parametric clustering can generate (or learn) an undefined or various numbers of clusters to adapt to new user data and/or item data. Furthermore, the diverse recommendation system106can utilize a variety of clustering algorithm approaches as described above.

For instance, in some embodiments, the diverse recommendation system106can utilize a Bayesian non-parametric clustering approach, as described in Peter Orbanz and Yee Whye Teh,Bayesian Nonparametric Models, Encyclopedia of Machine Learning, https://www.stats.ox.ac.uk/˜teh/research/npbayes/OrbTeh2010a.pdf (2010), which is hereby incorporated by reference in its entirety.

Furthermore, the clusters learned (or generated) by the diverse recommendation system106can represent affinities for particular items from a dataset of items. Indeed, the diverse recommendation system106can utilize the generated clusters to represent specific categories (e.g., a specific style of clothing, movie genres, news categories). Furthermore, the diverse recommendation system106can associate the users corresponding to user datapoints in a cluster corresponding to the specific category. Furthermore, the diverse recommendation system106can utilize a cluster of user datapoints as a data segment to generate a plurality of data segments for different clusters of user datapoints.

Although one or more embodiments herein describe the diverse recommendation system106clustering user datapoints to generate data segments, the diverse recommendation system106can cluster various combinations of available data to generate the data segments. For example, the diverse recommendation system106can determine clusters of one or both of user datapoints and item datapoints within a multidimensional space using a variety of clustering algorithms (as described above). In some embodiments, the diverse recommendation system106clusters items based on similarities of the items using a variety of clustering algorithms. Then, the diverse recommendation system106can determine users that are associated with the clustered items as the data segments.

Additionally, in some embodiments, the diverse recommendation system106can identify data segments from a third party. For instance, the diverse recommendation system106can identify (or receive) predetermined data segments from the administrator device114(e.g., an e-commerce web site host that generates data segments using information received by the e-commerce website). Indeed, the diverse recommendation system106can receive the predetermined data segments and utilize a diversification metric to select an anomalous item for a user after identifying a diverse data segment for the user from the received data segments.

As mentioned above, the diverse recommendation system106can receive a diversification metric. Indeed, in one or more embodiments, the diverse recommendation system106provides data corresponding to a customizable-recommendation-user interface for display on a client device of a user with selectable tools (or options) to enable easy and quick configuration of a degree of diversification in item recommendations for a user. For example, the diverse recommendation system106can provide a customizable-recommendation-user interface with selectable tools to receive a variety of metrics including a diversification metric, a frequency metric, and/or a time metric.

For example,FIG. 4Aillustrates a customizable-recommendation-user interface402generated by the diverse recommendation system106for display on the client device110a. As shown inFIG. 4A, the diverse recommendation system106provides a selectable-diversification tool404within the customizable-recommendation-user interface402(for item-recommendation-preference settings). Indeed, as further illustrated inFIG. 4A, the diverse recommendation system106provides the selectable-diversification tool404as a slider tool. The diverse recommendation system106can receive from the client device110a, via user interaction with the selectable-diversification tool404, an indication of a position of the slider tool on the selectable-diversification tool404(e.g., between not diverse and very diverse). Furthermore, the position of the slider tool on the selectable-diversification tool404can correspond to a value for the diversification metric from a range of values. Indeed, the diverse recommendation system106can determine the selected value for the diversification metric using the position of the slider tool on the selectable-diversification tool404.

In addition to the selectable-diversification tool404to select a diversification metric, the diverse recommendation system106can also provide a selectable-frequency tool406and a selectable-time tool408for display within the customizable-recommendation-user interface402. For example, the diverse recommendation system106can receive, via user interaction with the selectable-frequency tool406, an indication of a position of the slider tool on the selectable-frequency tool406(e.g., between one time and three times a day). Then, the diverse recommendation system106can determine a value for the frequency metric using the position of the slider tool on the selectable-frequency tool406. Moreover, the diverse recommendation system106can receive, via user interaction with the selectable-time tool408, an indication of a position of the slider tool on the selectable-time tool408(e.g., between one day and six months). Subsequently, the diverse recommendation system106can determine a value for the time metric using the position of the slider tool on the selectable-time tool408. Indeed, the diverse recommendation system106can present a variety of values for the frequency metric and time metric via the customizable-recommendation-user interface402.

As another example,FIG. 4Billustrates the diverse recommendation system106providing a selectable-diversification tool410within the customizable-recommendation-user interface402(for item-recommendation-preference settings) on the client device110a. Indeed, as illustrated inFIG. 4B, the diverse recommendation system106provides the selectable-diversification tool410as selectable tools (e.g., radio buttons) between varying degrees of diversification for item recommendations. The diverse recommendation system106can receive, via user interaction with the selectable-diversification tool410, an indication of a selection of one of the options associated with the selectable-diversification tool410(e.g., very diverse, diverse, somewhat diverse, not diverse). Then, the diverse recommendation system106can determine a value for the diversification metric using the selected option from the selectable-diversification tool410.

As shown inFIG. 4B, the diverse recommendation system106can also provide a selectable-frequency tool412and a selectable-time tool414for display within the customizable-recommendation-user interface402. For example, the diverse recommendation system106can receive from the client device110a, via user interaction with the selectable-frequency tool412, an indication of a selection of one of the options associated with the selectable-frequency tool412(e.g., 3 per day, 1 per day, 1 per week, 1 time). Then, the diverse recommendation system106can determine a value for the frequency metric using the selected option from the selectable-frequency tool412. Furthermore, the diverse recommendation system106can receive, via user interaction with the selectable-time tool414, an indication of a selection of one of the options associated with the selectable-time tool414(e.g., 1 month, 1 week, 3 days, 1 day). Subsequently, the diverse recommendation system106can determine a value for the time metric using the selected option from the selectable-time tool414.

The diverse recommendation system106can provide a variety of graphical user interface elements to receive a diversification metric (or another metric) from a user via a client device. For instance, the diverse recommendation system106can generate data for a graphical user interface with various combinations of slider tools, radio button elements, text input elements, selectable images, and/or other selectable elements to facilitate selection of a diversification metric (or another metric). Indeed, by doing so, the diverse recommendation system106can provide diverse item recommendations to users by simple selection of a diversification metric while using complex clustering algorithms to determine the item recommendations.

In some embodiments, the diverse recommendation system106can provide a graphical user interface with selectable-diversification tools (or other selectable-metric tools) for specific types of items or situations. For example, the diverse recommendation system106can provide a first selectable-diversification tool to select a first diversification metric for a first type of items and a second selectable-diversification tool to select a second diversification metric for a second type of items (e.g., to utilize a different degree of diversification for different types of items). As an example, in an e-commerce web site that includes various types of items (e.g., clothing, electronics, cooking products), the diverse recommendation system106can utilize a first diversification metric to select diverse item recommendations for clothing items and a second diversification metric to selective diverse item recommendations for electronics items on the e-commerce website.

Additionally, the diverse recommendation system106can utilize a selection of a user via a selectable-diversification tool on a graphical user interface to translate the selection into a value for the diversification metric. For instance, the diverse recommendation system106can provide a slider tool that ranges from no diversity to very diverse with a range of values from 0 through 10. Indeed, the diverse recommendation system106can utilize a value of 0 for a diversification metric when “no diversity” is selected by a user and a value of 10 for the diversification metric when “very diverse” is selected by the user. Subsequently, the diversification metric can be utilized to identify a diverse data segment and an anomalous item as described below.

Moreover, the diverse recommendation system106can utilize a selected frequency metric to indicate a frequency with which to provide a user with diverse item recommendations based on the diversification metric. For example, when a user selects a frequency metric of “once per week,” the diverse recommendation system106can provide a diverse item recommendation (in accordance with one or more embodiments herein) once per week to the user. Likewise, when a user selects a frequency metric of “one time,” the diverse recommendation system106can provide a diverse item recommendation once to the user. Indeed, the diverse recommendation system106can utilize a variety of frequencies for the frequency metric.

In some embodiments, the diverse recommendation system106can determine a frequency metric. For instance, the diverse recommendation system106can determine a frequency metric without user selection of a frequency metric (e.g., using a default frequency metric and/or a configured frequency metric provided by an administrator user). In one or more embodiments, the diverse recommendation system106determines a frequency metric using a selected diversification metric. For example, the diverse recommendation system106can increase and/or decrease a value associated with a frequency metric based on a value of the diversification metric (e.g., using a higher frequency metric as a higher diversification metric is selected). For instance, the diverse recommendation system106can utilize a frequency metric that is proportional to a selected diversification metric.

In addition, the diverse recommendation system106can utilize a selected time metric to indicate a time period in which to provide a user with diverse item recommendations based on the diversification metric. For instance, when a user selects a time metric of “1 week,” the diverse recommendation system106can provide diverse item recommendations within specified the week (e.g., further based on the specified frequency). Likewise, when a user selects a time metric of “one day,” the diverse recommendation system106can provide diverse item recommendations to the user for just the specified day. Indeed, the diverse recommendation system106can utilize a variety of time durations for the time metric. In addition, the diverse recommendation system106can provide, via a customizable-recommendation-user interface, a selectable tool (or option) for the diversification metric alone or with various combinations of selectable tools for a frequency metric or a time metric. Additionally, in some embodiments, the diverse recommendation system106determines a time metric utilizing a default time metric setting and/or a time metric that is proportional to a selected diversification metric.

Moreover, the diverse recommendation system106can provide a customizable-recommendation-user interface for selection of a diversification metric in various formats and/or locations. For instance, the diverse recommendation system106can provide the customizable-recommendation-user interface as an item-recommendation-preference settings page within a website and/or application. In some embodiments, the diverse recommendation system106can provide the customizable-recommendation-user interface for selection of a diversification metric alongside an item recommendation (e.g., a preference setting link displayed with an item recommendation as described inFIG. 6). Furthermore, the diverse recommendation system106can also provide a selectable tool for a diversification metric as a browser plugin (e.g., a diversification metric that is presented and selected for a specific website and/or for a variety of websites to provide diverse item recommendations in correspondence with the specific website and/or for the variety of websites).

As mentioned above, the diverse recommendation system106can identify a diverse data segment. For example, as shown inFIG. 5A, the diverse recommendation system106can utilize the diversification metric502to determine a threshold distance508for a reference data segment within a multidimensional space that includes data segments504. Furthermore, the diverse recommendation system106can identify a reference data segment506that includes a multidimensional datapoint representing the user that provided the diversification metric502(e.g., user 1). Subsequently, as shown inFIG. 5A, the diverse recommendation system106can determine a proximity510, from the reference data segment506, within the multidimensional space of the data segments504using the threshold distance508. Within the proximity510, the diverse recommendation system106can select a neighboring data segment as the diverse data segment (e.g., diverse data segment512).

In one or more embodiments, the diverse recommendation system106determines a threshold distance to utilize in identifying a diverse data segment based on the diversification metric. For instance, the diverse recommendation system106can utilize the value corresponding to the diversification metric as a threshold distance (e.g., a one-to-one translation of the value or proportional translation of the value). In some embodiments, the diverse recommendation system106can utilize a diversification metric as a modifier or multiplier for a threshold distance. For instance, the diverse recommendation system106can multiply a predetermined threshold distance (e.g., set by the administrator device114) by a value corresponding to the diversification metric. In some embodiments, the diverse recommendation system106adds a value corresponding to the diversification metric to the predetermined threshold distance.

Furthermore, within a multidimensional space that includes the data segments (e.g., user datapoint clusters corresponding to the data segments), the diverse recommendation system106can determine distances between one or more data segments. For example, the diverse recommendation system106can utilize a variety of approaches to determine distances between one or more data segments. For instance, the diverse recommendation system106can utilize approaches such as, but not limited to, cosine similarities, L2distance, Jaccard similarities, or Euclidean distances to determine distances between one or more data segments. Additionally, the diverse recommendation system106can determine (or measure) distances between various combinations of center points, edges, datapoints of data segments (e.g., center-to-center, edge-to-edge, center-to-edge, center-to-datapoint). In addition, the diverse recommendation system106can determine a minimal and/or maximum distance between data segments.

As an example, the diverse recommendation system106can determine a center point for a reference data segment. Subsequently, the diverse recommendation system106can identify a center point for a neighboring data segment. In some embodiments, the diverse recommendation system106determines a distance value between the center points of the reference data segment and the diverse data segment (e.g., by measuring a cosine similarity between the center points). Moreover, in one or more embodiments, the diverse recommendation system106can utilize a maximum distance between data segments by determining a greatest distance value between a center point of a reference data segment and any given point associated with a neighboring data segment (e.g., a furthest edge of the neighboring data segment).

Additionally, the diverse recommendation system106can identify a reference data segment from a plurality of data segments represented in a multidimensional space. For example, the diverse recommendation system106can identify user datapoint within the multidimensional space that corresponds to the user associated with the diversification metric (e.g., the target user). Then, the diverse recommendation system106can identify the data segment that includes the user datapoint as the reference data segment.

Upon identifying the reference data segment, the diverse recommendation system106can identify a diverse data segment from among a plurality of data segments represented in the multidimensional space. For instance, the diverse recommendation system106can determine a proximity within the multidimensional space utilizing the threshold distance (as indicated by the diversification metric). Subsequently, the diverse recommendation system106can identify neighboring data segments (e.g., a plurality of neighboring data segments) that are within the determined proximity (e.g., different clusters) in the multidimensional space.

From the neighboring data segments, in some embodiments, the diverse recommendation system106selects a data segment having the greatest distance from the reference data segment as the diverse data segment. Indeed, the diverse recommendation system106can select a diverse data segment that is furthest in distance from the reference data segment, in the multidimensional space, while still being within the threshold distance. By doing so, the diverse recommendation system106selects the most diverse data segment (relative to the reference data segment) within the threshold distance.

In some embodiments, the diverse recommendation system106can select a data segment from among the neighboring data segments based on a variety of other attributes and/or characteristics of the neighboring data segments. For example, the diverse recommendation system106can select a data segment from among the neighboring data segments based on a number of user interactions corresponding to the neighboring data segments (e.g., as an indication of popularity of the data segment). For instance, the diverse recommendation system106can determine a number of user interactions with items (or on a platform hosting the items) from users corresponding to the user datapoints from the data segments. Moreover, the diverse recommendation system106can utilize the number of user interactions to determine which data segment, from the neighboring data segments, is associated with the most user interactions and select that data segment as the diverse data segment.

Additionally, in one or more embodiments, the diverse recommendation system106can select a data segment from among the neighboring data segments based on sizes corresponding to the neighboring data segments. For instance, the diverse recommendation system106can determine a number of user datapoints associated with each neighboring data segment. Then, the diverse recommendation system106can identify the data segment having the highest number of user datapoints as the largest data segment from the neighboring data segments. Indeed, in some embodiments, the diverse recommendation system106selects the largest data segment from the neighboring data segments as the diverse data segment.

Furthermore, in some embodiments, the diverse recommendation system106selects user datapoints from the reference data segment as the diverse data segment. In particular, the diverse recommendation system106can determine that a threshold distance as indicated by a diversification metric is within the bounds of the reference data segment (e.g., the threshold distance from the center point of the reference data segment is still within the bounds of the reference data segment). Upon determining that the threshold distance is within the bounds of the reference data segment, the diverse recommendation system106can select user datapoints within the reference data segment to create a diverse data segment.

More specifically, in some embodiments, the diverse recommendation system106selects a threshold number of user datapoints that are furthest from the center point of the reference data segment while still within the threshold distance to create a diverse data segment to utilize in diverse item recommendations. In one or more embodiments, the diverse recommendation system106can select user datapoints that are within the reference data segment and outside of the threshold distance from the center point of the reference data segment to create a diverse data segment to utilize in diverse item recommendations. Indeed, by doing so, the diverse recommendation system106can identify items that are associated with users that correspond to user datapoints further from the center of the reference data segment (e.g., more diverse than user datapoints of users that are near the center of the reference data segment).

As mentioned above, the diverse recommendation system106can identify one or more items associated with a diverse data segment and determine user-preference scores for the one or more items. For instance,FIG. 5Billustrates the diverse recommendation system106identifying items associated with a diverse data segment and determining user-preference scores for those items. In particular, as shown inFIG. 5B, the diverse data segment512can includes user datapoints. The diverse recommendation system106can, in an act514, identify items (e.g., Items 3, 4, 71, 8, 9) associated with user datapoints from the diverse data segment512. In particular, the diverse recommendation system106can identify items that are associated with the user datapoints from the diverse data segment512. Then, the diverse recommendation system106can utilize item preference factors and user behavior to determine user-preference scores in an act516. Indeed, the diverse recommendation system106can determine user-preference scores in the act516to result in the user-preference scores518(e.g., a list of items with corresponding user-preference scores that indicate higher affinity to an item for a user based on a higher score value).

In one or more embodiments, the diverse recommendation system106identifies items associated with a diverse data segment by utilizing user interactions. In particular, the diverse recommendation system106can identify user interactions with one or more items for each user datapoint in the diverse data segment. Then, the diverse recommendation system106identifies the one or more items with user interactions from the user datapoints in the diverse data segment as items associated with the diverse data segment. For example, the user interactions can include views, clicks, or purchases of items from user datapoints from the diverse data segment.

Upon identifying items associated with the diverse data segment, the diverse recommendation system106can determine user-preference scores for the identified items. As mentioned above, a user-preference score can indicate a preference and/or relevance for a of an item for a user. In particular, the diverse recommendation system106can determine user-preference scores for items associated with user datapoints from the diverse data segment to select an anomalous item for recommendation to the user (e.g., the target user associated with the diversification metric).

In one or more embodiments, the diverse recommendation system106determines a user-preference score for an item by utilizing item preference factors that correspond to the item. In particular, the diverse recommendation system106can determine scores for a variety of item preference factors (e.g., characteristics and/or attributes corresponding to the item). For example, the diverse recommendation system106can determine a number of interactions (or clicks) that are associated with the item and assign a first value to the item based on the number of interactions. Moreover, the diverse recommendation system106can determine a number of purchases associated with the item and assign a second value to the item based on the number of purchases.

Then, the diverse recommendation system106can combine the values assigned to the item (each based on different factors of the item) to determine the user-preference score for the item. For instance, the diverse recommendation system106can add the values corresponding to the item preference factors to determine the user-preference score. Indeed, the diverse recommendation system106can utilize a variety of factors (e.g., characteristics and/or attributes) of an item to determine a user-preference score. By doing so, in some embodiments, the diverse recommendation system106determines a high user-preference score for popular items within the diverse data segment (e.g., popularity due to factors such as higher number of interactions, purchases, reviews).

In some embodiments, the diverse recommendation system106determines a user-preference score for an item by utilizing a single item preference factor of an item. In particular, the diverse recommendation system106can utilize a count of user interactions associated with an item. For instance, the diverse recommendation system106can determine a number of purchases associated with an item and utilize the number of purchases as the user-preference score for the item.

Furthermore, in some embodiments, the diverse recommendation system106determines user-preference scores utilizing weights based on user behavior (e.g., using a dataset reflecting user behavior of the target user). In particular, the diverse recommendation system106can utilize user behavior data (e.g., user interactions in relation to a set of items and/or an entity associated with the set of items) to apply weights to specific item preference factors of an item when determining a user-preference score for an item. Indeed, the diverse recommendation system106can identify user behaviors of a user from user data in a dataset of users (or a portion of a dataset of users). Moreover, in some embodiments, the diverse recommendation system106can utilize user behavior data to weight specific item preference factors that are associated with user interactions that are similar to the user behavior data.

For example, for a user having a user behavior that indicates that the user is a frequent shopper, the diverse recommendation system106can apply a higher weight to item preference factors, such as views associated with the items when determining user-preference scores. As another example, for a user having a user behavior that indicates that the user is not a frequent shopper, the diverse recommendation system106can apply a higher weight to a number of purchases (e.g., popularity) and pricing associated with the items when determining user-preference scores. By doing so, the diverse recommendation system106can determine user-preference scores for items such that diverse item recommendations are more relevant for the target user.

To illustrate, the diverse recommendation system106can identify a number of purchases and an available quantity of an item as item preference factors for the item. Furthermore, the diverse recommendation system106can assign a value of 0.5 to the item preference factor of number of purchases due to a high number of purchases associated with the item. Additionally, the diverse recommendation system106can assign a value of 0.1 to the item preference factor of available quantity of the item due to a low quantity associated with the item. The diverse recommendation system106can further determine that, from user behavior data, the user is not frequently active on the platform where the items are sold (e.g., a non-frequent shopper) and consequently apply a weight of 1.5 to the item preference factor of number of purchases. Indeed, the diverse recommendation system106can update the value of 0.5 associated to the item preference factor of number of purchases to be 0.75. Using the updated item preference factors, the diverse recommendation system106can determine a user-preference score of 0.85 (out of 1.0) for the item.

Although one or more embodiments herein illustrate user-preference scores as number values between 0 and 1, the diverse recommendation system106can utilize a variety of numerical values and/or scoring formats to assign user-preference scores to items. For instance, the diverse recommendation system106can utilize, but is not limited to, user-preference scores between 0 and 100 and/or 0 and 10. The diverse recommendation system106can also assign a variety of labels and/or classifications as user-preference scores based on a determined value from the item preference factors (e.g., a grade and/or level).

As mentioned above, the diverse recommendation system106can select an anomalous item for recommendation to a user from items associated with user datapoints from a diverse data segment. In particular, in one or more embodiments, the diverse recommendation system106utilizes user-preference scores corresponding to items to rank items and select an anomalous item from the ranked items. Indeed, the diverse recommendation system106can rank items utilizing user-preference scores (e.g., from a highest user-preference score to a lowest user-preference score) and select the highest ranked item as the anomalous item for recommendation.

For instance,FIG. 5Cillustrates the diverse recommendation system106ranking items and selecting an anomalous item from items associated with user datapoints from a diverse data segment. As shown inFIG. 5C, the diverse recommendation system106ranks items in an act520based on the user-preference scores518. Indeed, as illustrated inFIG. 5C, the diverse recommendation system106ranks the items (in the act520) from a highest user-preference score to a lowest user-preference score to determine ranked items associated with user datapoints from the diverse data segment512(e.g., fromFIG. 5B). Subsequently, as shown inFIG. 5C, the diverse recommendation system106selects the top item (e.g., “Item 4”) from the ranked items (from the act520) as the anomalous item522.

Although one or more embodiments herein describe the diverse recommendation system106selecting a single item, the diverse recommendation system106can select a various numbers of items as anomalous items for recommendation to a user. For instance, upon ranking items associated with user datapoints from a diverse data segment, the diverse recommendation system106can select the top two items (or another threshold number of items) as anomalous items. Indeed, the diverse recommendation system106can utilize a threshold number of items provided by the administrator device114.

In addition, the diverse recommendation system106can select anomalous items for recommendation to a user based on various combinations of values from a received frequency metric and/or time metric. In particular, the diverse recommendation system106can select subsequent anomalous items as item recommendations based on a specified frequency metric and/or time metric. For instance, for a frequency metric of three times a week, the diverse recommendation system106can select an anomalous item as an item recommendation and also select subsequent anomalous items to satisfy the frequency metric preference (e.g., three times a week results in three anomalous item selections per week).

In one or more embodiments, the diverse recommendation system106selects subsequent anomalous items associated with user datapoints from the same diverse data segment. For instance, the diverse recommendation system106can iteratively select the next item from ranked items as the subsequent anomalous item. Indeed, the diverse recommendation system106can continuously select items according to their rank for subsequent anomalous item selections to satisfy a frequency metric preference (e.g., selecting an item ranked second followed by selecting an item ranked third).

In some embodiments, the diverse recommendation system106identifies a different diverse data segment for subsequent anomalous item selections. For instance, for subsequent anomalous item recommendations, the diverse recommendation system106can identify (or select) another diverse data segment (e.g., different from the diverse data segment used for the first anomalous item recommendation). Indeed, the diverse recommendation system106can identify the next furthest data segment, from among neighboring data segments, that is within the threshold distance, a data segment that is next largest in size from neighboring data segments, and/or the second most popular from the neighboring data segments. Then, the diverse recommendation system106can select an anomalous item from the newly identified diverse data segment (in accordance with one or more embodiments herein) to satisfy a frequency metric preference.

As mentioned above, the diverse recommendation system106can provide an anomalous item as a diverse item recommendation for display on a client device. For instance, the diverse recommendation system106can utilize a selected anomalous item to generate a diverse item recommendation. Then, the diverse recommendation system106can provide the item recommendation for display on a client device corresponding to a target user (e.g., the user that provided the diversification metric).

For example,FIG. 6illustrates the diverse recommendation system106providing an anomalous item as a diverse item recommendation for display on a client device. Indeed, as shown onFIG. 6, the diverse recommendation system106provides an indication of the anomalous item522(e.g., “Item 4” as selected inFIG. 5C) to the client device110a. Subsequently, as shown inFIG. 6, client device110adisplays the diverse item recommendation606(e.g., a product recommendation for a clothing item associated with the anomalous item “Item 4”) to a user in the graphical user interface602(e.g., an email user interface).

AlthoughFIG. 6illustrates the diverse recommendation system106providing the diverse item recommendation606as an email message, the diverse recommendation system106can provide an anomalous item as an item recommendation in a variety of formats. For instance, the diverse recommendation system106can provide an item recommendation within, but not limited to, an advertisement banner, a popup, within a specified section of a website and/or application, and/or via other communication formats (e.g., text, chat box, phone call).

Additionally, in some embodiments, the diverse recommendation system106can provide an identifier associated with the selected anomalous item to the administrator device114to enable an administrator (or the administrator device application116) to populate an item recommendation format with the anomalous item associated with the provided identifier. Then, the administrator device114can provide the item recommendation of the anomalous item for display to a client device in the item recommendation format.

Moreover, the diverse recommendation system106can also provide a selectable graphical user element to enable access to a customizable-recommendation-user interface for item-recommendation-preference settings (e.g., to select a diversification metric, frequency metric, time metric) on a client device. For example, as shown inFIG. 6, the diverse recommendation system106provides a selectable element608(e.g., a link to “Change Preferences”) for display within the graphical user interface602. Upon receiving an indication of the selectable element608, the diverse recommendation system106can cause the client device110ato display a customizable-recommendation-user interface for item-recommendation-preference settings.

In addition, the diverse recommendation system106can also provide information related to the anomalous item recommendation for display on a client device. For instance, the diverse recommendation system106can provide the diversification metric value utilized to select the anomalous item for display with an item recommendation of the anomalous item on a client device. In addition, the diverse recommendation system106can provide a user-preference score for the anomalous item for display with the item recommendation of the anomalous item on a client device. In some embodiments, the information related to the anomalous item recommendation for display can be a non-numerical indicator (e.g., a color, text, a visual gauge) to represent a degree of diversification between the anomalous item and previously recommended items to the user. Indeed, the diverse recommendation system106can provide the diversification metric and/or user-preference score for display to describe the degree to which the recommended item is similar to or diverse from items that were previously recommended to a user.

The diverse recommendation system106can determine diverse recommendations in accordance with one or more embodiments herein for a variety of platforms. As an example, the diverse recommendation system106can determine diverse recommendations for an e-commerce platform. In particular, the diverse recommendation system106can generate data segments from user data (e.g., customers of the e-commerce platform) and item data (e.g., products from the e-commerce platform). Additionally, the diverse recommendation system106can utilize a diversification metric provided by a customer to identify a diverse data segment and an anomalous product for the customer as a diverse product recommendation in accordance with one or more embodiments herein.

Furthermore, in some embodiments, the diverse recommendation system106determines diverse recommendations for a news article platform. More specifically, the diverse recommendation system106can generate data segments from user data (e.g., subscribers and/or article viewers) and item data (e.g., articles and/or news categories). Then, the diverse recommendation system106can utilize a diversification metric provided by a viewer to identify a diverse data segment and an anomalous article/category for the viewer as a diverse article/category recommendation in accordance with one or more embodiments herein.

Moreover, in certain implementations, the diverse recommendation system106determines diverse recommendations for a video streaming platform. In particular, the diverse recommendation system106can generate data segments from user data (e.g., viewers) and item data (e.g., videos and/or genres). Subsequently, the diverse recommendation system106can utilize a diversification metric provided by a viewer of the video stream platform to identify a diverse data segment and an anomalous video stream/genre for the viewer as a diverse video stream/genre recommendation in accordance with one or more embodiments herein.

Turning now toFIG. 7, additional detail will be provided regarding components and capabilities of one or more embodiments of the diverse recommendation system. In particular,FIG. 7illustrates an embodiment of an example diverse recommendation system106executed by a computing device700(e.g., the server device(s)102and/or the administrator devices114). As shown by the embodiment inFIG. 7, the computing device700can include or host the data analytics system104and the diverse recommendation system106. The diverse recommendation system106can include a data segment manager702, a user-preference score generator704, an anomalous item determination manager706, an item recommendation manager708, a graphical user interface manager710, and a storage manager712which can include item data714, user data716, data segment data718, user-preference score data720, and item recommendation data722.

As just mentioned, and as illustrated in the embodiment inFIG. 7, the diverse recommendation system106can include the data segment manager702. For instance, the data segment manager702can utilize user data and/or item data to generate one or more data segments as described above (e.g., in relation toFIG. 3). Furthermore, the data segment manager702can generate the one or more data segments to represent particular users clustered according to affinities for particular items as described above (e.g., in relation toFIG. 3). Moreover, the data segment manager702can determine a diverse data segment using a threshold distance as indicated by a diversification metric as described above (e.g., in relation toFIG. 5A).

Additionally, as shown inFIG. 7, the diverse recommendation system106can include the user-preference score generator704. For instance, the user-preference score generator704can identify items associated with user datapoints from a diverse data segment as described above (e.g., in relation toFIG. 5B). In addition, the user-preference score generator704can generate user preference scores for items using item preference factors and/or weights as described above (e.g., in relation toFIG. 5B).

Moreover, as shown inFIG. 7, the diverse recommendation system106can include the anomalous item determination manager706. For example, the anomalous item determination manager706can rank items associated with user datapoints from a diverse data segment as described above (e.g., in relation toFIG. 5C). Additionally, the anomalous item determination manager706can select an anomalous item from ranked items as described above (e.g., in relation toFIG. 5C).

Furthermore, as shown inFIG. 7, the diverse recommendation system106can include the item recommendation manager708. For instance, the item recommendation manager708can utilize a selected anomalous item to generate an item recommendation as described above (e.g., in relation toFIG. 6). Moreover, the item recommendation manager708can provide the anomalous item as the item recommendation for display on a client device as described above (e.g., in relation toFIG. 6).

In addition, as shown inFIG. 7, the diverse recommendation system106can include the graphical user interface manager710. For example, the graphical user interface manager710can generate and/or provide customizable-recommendation-user interfaces to select diversification metrics (and/or other metrics) as described above (e.g., in relation toFIGS. 4A and 4B). In addition, the graphical user interface manager710can also generate and/or provide graphical user interfaces to display diverse item recommendations as described above (e.g., in relation toFIG. 6).

Additionally, as shown inFIG. 7, the diverse recommendation system106can include the storage manager712. In some embodiments, the storage manager712can be implemented by one or more memory devices. The storage manager712can maintain data to perform one or more functions of the diverse recommendation system106. As shown inFIG. 7, the storage manager712can include the item data714(e.g., information corresponding to products and/or media-content items, item preference factors), the user data716(e.g., demographic data, client device data, user behavior data), the data segment data718(e.g., clustering algorithms, clusters, data segments, distances, multidimensional representations of datapoints, diversification factors), the user-preference score data720(e.g., item preference factor values, weights, user-preference scores), and item recommendation data722(e.g., selected anomalous items, recommendation formats, item recommendations, frequency metrics, time metrics).

Each of the components702-722of the computing device700(e.g., the computing device700implementing the diverse recommendation system106), as shown inFIG. 7, may be in communication with one another using any suitable communication technologies. It will be recognized that although components702-722of the computing device700(or computer device) are shown to be separate inFIG. 7, any of components702-722may be combined into fewer components, such as into a single facility or module, divided into more components, or configured into different components as may serve a particular embodiment.

The components702-722of the computing device900can comprise software, hardware, or both. For example, the components702-722can comprise one or more instructions stored on a computer-readable storage medium and executable by processor of one or more computing devices. When executed by the one or more processors, the computer-executable instructions of the diverse recommendation system106(e.g., via the computing device700) can cause a client device and/or server device to perform the methods described herein. Alternatively, the components702-722and their corresponding elements can comprise hardware, such as a special purpose processing device to perform a certain function or group of functions. Additionally, the components702-722can comprise a combination of computer-executable instructions and hardware.

Furthermore, the components702-722of the diverse recommendation system106may, for example, be implemented as one or more operating systems, as one or more stand-alone applications, as one or more modules of an application, as one or more plug-ins, as one or more library functions or functions that may be called by other applications, and/or as a cloud-computing model. Thus, the components702-722may be implemented as a stand-alone application, such as a desktop or mobile application. Furthermore, the components702-722may be implemented as one or more web-based applications hosted on a remote server. The components702-722may also be implemented in a suite of mobile device applications or “apps.” To illustrate, the components702-722may be implemented in an application, including but not limited to, ADOBE EXPERIENCE PLATFORM, ADOBE ANALYTICS CLOUD, ADOBE ANALYTICS, ADOBE AUDIENCE MANAGER, ADOBE CAMPAIGN, and ADOBE TARGET. “ADOBE,” “ADOBE EXPERIENCE PLATFORM,” “ADOBE ANALYTICS CLOUD,” “ADOBE ANALYTICS,” “ADOBE AUDIENCE MANAGER,” “ADOBE CAMPAIGN,” and “ADOBE TARGET” are either registered trademarks or trademarks of Adobe Inc. in the United States and/or other countries.

FIGS. 1-7, the corresponding text, and the examples provide a number of different methods, systems, devices, and non-transitory computer-readable media of the diverse recommendation system106. In addition to the foregoing, one or more embodiments can also be described in terms of flowcharts comprising acts for accomplishing a particular result, as shown inFIG. 8.FIG. 8may be performed with more or fewer acts. Further, the acts may be performed in differing orders. Additionally, the acts described herein may be repeated or performed in parallel with one another or parallel with different instances of the same or similar acts.

As mentioned above,FIG. 8illustrates a flowchart of a series of acts800for determining a diverse item recommendation in accordance with one or more embodiments. WhileFIG. 8illustrates acts according to one embodiment, alternative embodiments may omit, add to, reorder, and/or modify any of the acts shown inFIG. 8. The acts ofFIG. 8can be performed as part of a method (e.g., in a digital medium environment of computational analytics for diverse data segments). Alternatively, a non-transitory computer-readable medium can comprise instructions that, when executed by one or more processors, cause a computing device to perform the acts ofFIG. 8. In some embodiments, a system can perform the acts ofFIG. 8.

As shown inFIG. 8, the series of acts800include an act810of generating data segments. In particular, the act810can include generating a plurality of data segments representing user affinities for items. Furthermore, the act810can include generating a plurality of data segments utilizing a machine-learning-clustering algorithm. For instance, a machine-learning-clustering algorithm can include an unsupervised non-parametric clustering algorithm. In addition, the act810can include generating a plurality of data segments representing particular users from a set of users clustered according to affinities for particular items from a set of items. As further indicated byFIG. 8, the act810may include (i) an act810aof determining particular user affinities for items, and (ii) an act810bof generating data segments clustered according to the user affinities for items utilizing a machine-learning-clustering algorithm.

As shown inFIG. 8, the series of acts800include an act820of receiving an indication of a diversification metric. In particular, the act820can include receiving, from a client device, an indication of a selection by a user of a diversification metric reflecting a degree of diversification in item recommendations. As further indicated byFIG. 8, the act820may include (i) an act820aof providing a selectable-diversification tool within a customizable-recommendation-user interface, and (ii) an act820bof receiving an indication of a user interaction with the selectable-diversification tool indicating the diversification metric.

For instance, the act820can include receiving, from a client device via user interaction with a selectable-diversification tool within a customizable-recommendation-user interface, an indication of a selection by a user of a diversification metric reflecting a degree of diversification in item recommendations. Furthermore, the act820can include receiving, from a client device, an indication of a selection by a user of a diversification metric by receiving an indication of a user interaction with a slider tool within a customizable-recommendation-user interface (for item-recommendation-preference settings). For example, a selectable-diversification tool can include a slider tool within a customizable-recommendation-user interface. For instance, a slider tool can indicate a range of values corresponding to a degree of diversification in item recommendations.

In addition, the act820can include receiving, from a client device via user interaction with a selectable-frequency tool within a customizable-recommendation-user interface, an indication of a selection by a user of a frequency metric indicating a frequency with which the user receives recommendations of anomalous items. Moreover, the act820can include utilizing a diversification metric to determine a frequency metric indicating a frequency with which a user receives recommendations of anomalous items. Additionally, the act820can include receiving, from a client device via user interaction with a selectable-time tool within a customizable-recommendation-user interface, an indication of a selection by a user of a time metric indicating a time period in which the user receives recommendations of anomalous items.

As shown inFIG. 8, the series of acts800include an act830of selecting an anomalous item for recommendation. In particular, the act830can include identifying, from among a plurality of data segments, a reference data segment corresponding to a user and a diverse data segment within a threshold distance of the reference data segment as indicated by a diversification metric. As further indicated byFIG. 8, the act830may include (i) an act830aof identifying a diverse data segment within a threshold distance of a reference data segment, and (ii) an act830bof selecting an anomalous item from ranked items corresponding to the diverse data segment.

For instance, the act830can include selecting an anomalous item corresponding to a diverse data segment for recommendation to a user. In addition, the act830can include selecting an anomalous item for recommendation to a user by identifying, from among a plurality of data segments, a diverse data segment within a threshold distance of a reference data segment corresponding to a user, as indicated by a diversification metric, and selecting the anomalous item from among items corresponding to the diverse data segment based on item rankings of the items.

Furthermore, the act830can include identifying a reference data segment corresponding to a user by identifying, from among a plurality of data segments, a data segment including a multidimensional datapoint representing the user. Additionally, the act830can include identifying a diverse data segment by identifying a plurality of neighboring data segments within a threshold distance of a reference data segment and selecting, from among the plurality of neighboring data segments, a data segment having a greatest distance from the reference data segment as the diverse data segment.

In addition, the act830can include selecting an anomalous item corresponding to a diverse data segment by selecting the anomalous item from among items corresponding to the diverse data segment based on item rankings of the items. Furthermore, the act830can include ranking items based on user-preference scores reflecting preference factors for the items. For instance, preference factors can include at least one of clicks on websites associated with particular items, purchases of the particular items, available quantity of the particular items, views of the particular items, pricing of the particular items, or interaction trends associated with the particular items. Additionally, the act830can include determining user-preference scores utilizing weights based on a dataset (or portion of a dataset) reflecting user behavior of a user. Furthermore, the act830can include selecting an anomalous item by selecting an item from among items corresponding to a highest user-preference score from user-preference scores (of the items).

As shown inFIG. 8, the series of acts800include an act840of providing an anomalous item as an item recommendation. In particular, the act840can include providing an anomalous item as an item recommendation for display on a client device. For example, an anomalous item can include a product or a media-content item. Moreover, an anomalous-item recommendation can include an anomalous-product recommendation or an anomalous-media-content-item recommendation.

In addition to (or in alternative to) the acts above, the diverse recommendation system106can also perform a step for determining an anomalous-item recommendation for a user based on a plurality of data segments generated utilizing a machine-learning-clustering algorithm and a diversification metric. For instance, the acts and algorithms described above in relation toFIGS. 5A-5C(e.g., the acts502-522) can comprise the corresponding acts and algorithms for performing a step for determining an anomalous-item recommendation for a user based on a plurality of data segments generated utilizing a machine-learning-clustering algorithm and a diversification metric.

FIG. 9illustrates a block diagram of an example computing device900that may be configured to perform one or more of the processes described above. One will appreciate that one or more computing devices, such as the computing device900may represent the computing devices described above (e.g., computing device700, server device(s)102, administrator device114, and client devices110a-110n). In one or more embodiments, the computing device900may be a mobile device (e.g., a mobile telephone, a smartphone, a PDA, a tablet, a laptop, a camera, a tracker, a watch, a wearable device, etc.). In some embodiments, the computing device900may be a non-mobile device (e.g., a desktop computer or another type of client device). Further, the computing device900may be a server device that includes cloud-based processing and storage capabilities.

As shown inFIG. 9, the computing device900can include one or more processor(s)902, memory904, a storage device906, input/output interfaces908(or “I/O interfaces908”), and a communication interface910, which may be communicatively coupled by way of a communication infrastructure (e.g., bus912). While the computing device900is shown inFIG. 9, the components illustrated inFIG. 9are not intended to be limiting. Additional or alternative components may be used in other embodiments. Furthermore, in certain embodiments, the computing device900includes fewer components than those shown in FIG.9. Components of the computing device900shown inFIG. 9will now be described in additional detail.

In particular embodiments, the processor(s)902includes hardware for executing instructions, such as those making up a computer program. As an example, and not by way of limitation, to execute instructions, the processor(s)902may retrieve (or fetch) the instructions from an internal register, an internal cache, memory904, or a storage device906and decode and execute them.

The computing device900includes memory904, which is coupled to the processor(s)902. The memory904may be used for storing data, metadata, and programs for execution by the processor(s). The memory904may include one or more of volatile and non-volatile memories, such as Random-Access Memory (“RAM”), Read-Only Memory (“ROM”), a solid-state disk (“SSD”), Flash, Phase Change Memory (“PCM”), or other types of data storage. The memory904may be internal or distributed memory.

The computing device900includes a storage device906includes storage for storing data or instructions. As an example, and not by way of limitation, the storage device906can include a non-transitory storage medium described above. The storage device906may include a hard disk drive (“HDD”), flash memory, a Universal Serial Bus (“USB”) drive or a combination these or other storage devices.

As shown, the computing device900includes one or more I/O interfaces908, which are provided to allow a user to provide input to (such as user strokes), receive output from, and otherwise transfer data to and from the computing device900. These I/O interfaces908may include a mouse, keypad or a keyboard, a touch screen, camera, optical scanner, network interface, modem, other known I/O devices or a combination of such I/O interfaces908. The touch screen may be activated with a stylus or a finger.

The computing device900can further include a communication interface910. The communication interface910can include hardware, software, or both. The communication interface910provides one or more interfaces for communication (such as, for example, packet-based communication) between the computing device and one or more other computing devices or one or more networks. As an example, and not by way of limitation, communication interface910may include a network interface controller (“NIC”) or network adapter for communicating with an Ethernet or other wire-based network or a wireless NIC (“WNIC”) or wireless adapter for communicating with a wireless network, such as a WI-FI. The computing device900can further include a bus912. The bus912can include hardware, software, or both that connects components of computing device900to each other.