US20210096710A1 - Systems and methods for updating recommendations on a user interface - Google Patents
Systems and methods for updating recommendations on a user interface Download PDFInfo
- Publication number
- US20210096710A1 US20210096710A1 US17/120,905 US202017120905A US2021096710A1 US 20210096710 A1 US20210096710 A1 US 20210096710A1 US 202017120905 A US202017120905 A US 202017120905A US 2021096710 A1 US2021096710 A1 US 2021096710A1
- Authority
- US
- United States
- Prior art keywords
- user
- screen
- recommendation
- user interface
- recommendations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 57
- 239000003973 paint Substances 0.000 description 10
- 241000282472 Canis lupus familiaris Species 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
Definitions
- This disclosure relates to systems and methods for providing a user interface that facilitates learning user preferences via real-time recommendations of media items.
- typical recommendation computer systems do not provide a user with updated recommendations such that (i) the updated recommendations provided during a current session and (ii) are based on the user's selection of presented recommendations during the same session.
- typical machine-learning systems do not provided a user with updated recommendations of items potentially relevant to a concept (e.g., a new concept to be learned, a concept to be updated, etc.) such that (i) the updated recommendations provided during a current session and (ii) are based on the user's selection of presented recommendations during the same session.
- the updated recommendations provided by typical recommendation computer systems may be “out-of-date” during that current session with respect to the user's selections during that session (e.g., such updated recommendations do not take into account the user's selections during that session), resulting in update delays that may negatively affect the user experience.
- One aspect of the disclosure relates to a system configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections.
- preferences of a user may be learned through some interaction (e.g., user selection, lack of user selection) with displayed media items (or representations thereof) in order to predict new media items to show.
- the new media items may or may not currently appear on the screen. If the new media items appear on the screen, they can re-sort the order of the displayed media items.
- the user may not see the re-sorting of the media items, but when the user scrolls, paginates, or otherwise manipulates the user interface to the next view of media items, the on-screen media items will appear more relevant to the initial selected items.
- Some implementations may not rely on other users. This may be achieved by heavily relying on machine learning to quickly learn over items that have feedback associated with them and then predict over the remaining items that the user has not interacted with.
- Some implementations may utilize neural networks for such learning, while some may not be dependent on neural networks.
- the system may be configured to quickly learn the user's preferences in order to teach the system about the user's interests, perspectives, personal life, and/or other information relevant to the user.
- learning the user's preferences may teach the system about the user's friends and family, or it may teach the system about new concepts the system does not already understand. This may be achieved by clicking on positive examples of images that contain the concept as well as skipping over (e.g., not clicking) the ones that do not contain the concept acts as negative examples to teach the system what the user has in mind.
- the user may do a search for “dog” to retrieve media items that contain the user's specific pet dog. Then the user may click on their specific dog, while skipping over other dogs that are not theirs.
- the system may refine on-screen media items and/or off-screen media items to show next in order to refine the displayed media items towards the user's specific pet dog.
- the system may comprise one or more hardware processors configured by machine-readable instructions to present the user interface via a hardware display of a computing platform.
- the one or more hardware processors may be configured by machine-readable instructions to present within the user interface one or more concept categories.
- the one or more hardware processors may be configured by machine-readable instructions to receive a user selection of a given concept category.
- the one or more hardware processors may be configured by machine-readable instructions to receive a user selection to add a new concept within the given concept category.
- the one or more hardware processors may be configured by machine-readable instructions to present within the user interface recommendations of media items that may or may not convey the new concept.
- the one or more hardware processors may be configured by machine-readable instructions to receive, as a positive example, a user selection of a recommendation of a media item that does convey the new concept.
- the one or more hardware processors may be configured by machine-readable instructions to identify, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection.
- the one or more hardware processors may be configured by machine-readable instructions to update within the user interface non-selected recommendations based on the positive example and the negative example.
- the one or more hardware processors may be configured by machine-readable instructions to receive a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.
- Another aspect of the disclosure relates to a method for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections.
- the method may be performed by one or more hardware processors configured by machine-readable instructions.
- the method may comprise presenting the user interface via a hardware display of a computing platform.
- the method may comprise presenting within the user interface one or more concept categories.
- the method may comprise receiving a user selection of a given concept category.
- the method may comprise receiving a user selection to add a new concept within the given concept category.
- the method may comprise presenting within the user interface recommendations of media items that may or may not convey the new concept.
- the method may comprise receiving, as a positive example, a user selection of a recommendation of a media item that does convey the new concept.
- the method may comprise identifying, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection.
- the method may comprise updating within the user interface non-selected recommendations based on the positive example and the negative example.
- the method may comprise receiving a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.
- FIG. 1 illustrates a system configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items, in accordance with one or more implementations.
- FIGS. 2A, 2B, 2C, 2D, 2E, 2F, and 2G illustrate a user interface, in accordance with one or more implementations.
- FIGS. 3A, 3B, 3C, 3D, 3E, 3F, and 3G illustrate a user interface, in accordance with one or more implementations.
- FIG. 4 illustrates a method for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections, in accordance with one or more implementations.
- FIG. 1 illustrates a system 100 configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items, in accordance with one or more implementations.
- system 100 may include one or more servers 102 .
- the server(s) 102 may be configured to communicate with one or more computing platforms 104 according to a client/server architecture. Users may access system 100 via computing platform(s) 104 .
- the server(s) 102 may be configured to execute machine-readable instructions 106 .
- the machine-readable instructions 106 may include one or more of a user interface component 108 , a concept category component 110 , a new concept component 112 , a recommendation component 114 , a positive/negative example component 116 , and/or other components.
- the user interface component 108 may be configured to present a user interface via a hardware display of a given computing platform 104 .
- the user interface may include a graphical user interface.
- the hardware display of the computing platform may include a touch screen.
- the touch screen may be configured to receive user selections responsive to a user touching regions of the touch screen that correspond to information being displayed within the regions.
- the concept category component 110 may be configured to present within the user interface one or more concept categories.
- the one or more concept categories may be represented as category tiles within the graphical user interface.
- the concept categories may include one or more of recently created concepts, people, places, things, times, favorites, interests, categories provided by other users, duplicate media items, and/or other concept categories.
- a concept may include a general notion or idea that corresponds to some class of entities and that has the characteristic or essential features of the class.
- a concept may include one or more of a person's identity, a name of a specific thing, a type of thing, an idea described by a noun, an idea described by a verb, an idea described by an adverb, an idea of what a user is interested in, and/or other concepts.
- the concept category component 110 may be configured to receive a user selection of a given concept category.
- the concept category component 110 may be configured to present within the user interface one or more representations of media items corresponding to the given concept category.
- a given media item may include one or more of an image, a video, text, audio, animations, graphics, data points, and/or other media items.
- the one or more representations of media items may correspond to one or more media items stored in one or more media item repositories.
- a given media item repository may be located within server(s) 102 , computing platform(s) 104 , external resources 118 , and/or other locations.
- Presenting a given representation of a given media item may include presenting a thumbnail image of the given media item or a portion of the given media item.
- the given representation of the given media item may include a thumbnail image of a portion of an image showing a person's face.
- the given representation of the given media item may include a portion of a given frame of the video.
- the new concept component 112 may be configured to receive a user selection to add a new concept within the given concept category.
- new concept component 112 may be configured to receive a user definition of the new concept.
- the user definition of the new concept may include a word or phrase describing the new concept.
- the recommendation component 114 may be configured to present within the user interface recommendations of media items that may or may not convey the new concept.
- a given recommendation of a given media item may include a representation of the given media item, as described above in connection with concept category component 110 .
- presenting a given recommendation of a given media item may include presenting a thumbnail image of the given media item or a portion of the given media item.
- the one or more recommendations of media items may correspond to one or more media items stored in one or more media item repositories.
- the recommendations may be determined based on machine learning, search interactions, sharing behavior, interactions with the user interface, and/or other techniques for identifying media items that potentially convey a desired concept.
- a recommendation may be referred to as a recommend and/or a suggestion.
- the positive/negative example component 116 may be configured to receive, as a positive example, a user selection of a recommendation of a media item that does convey the new concept.
- a given recommendation is a positive example of the new concept if it corresponds to a media item that conveys the new concept.
- a media item conveys the new concept if it expresses, portrays, depicts, connotes, suggests, and/or otherwise communicates the new concept.
- the positive/negative example component 116 may be configured to identify, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection.
- a given recommendation is a negative example of the new concept if it corresponds to a media item that does not convey the new concept.
- the recommendation component 114 may be configured to update within the user interface non-selected recommendations based on the positive example and the negative example.
- Non-selected recommendations are recommendations that have not been selected by the user and, therefore, do not correspond to a user selection of a recommendation.
- the updating may occur in real time or near-real time.
- updating the non-selected suggestions may include updating on-screen recommendations to include recommendations that are more relevant to the new concept.
- the on-screen recommendations may include the recommendations that are visible within the user interface.
- updating the non-selected suggestions may include re-ranking off-screen recommendations based on relevancy to the new concept.
- the off-screen recommendations may include the recommendations that are not visible within the user interface.
- updating the non-selected recommendations may include replacing the non-selected recommendations with new recommendations.
- the new recommendations may be selected based on the positive example and the negative example.
- updating the non-selected recommendations may include reordering the non-selected recommendations. The reordering may be performed based on the positive example and the negative example.
- the updating of recommendations may be an iterative process.
- positive/negative example component 116 may be configured to receive, as a second positive example, a user selection of an updated recommendation of a media item that does convey the new concept.
- the positive/negative example component 116 may be configured to identify, as a second negative example, an updated recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection.
- the recommendation component 114 may be configured to update within the user interface non-selected recommendations based on the second positive example and the second negative example.
- the new concept component 112 may be configured to receive a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface. In some implementations, new concept component 112 may automatically determine whether a new concept has been satisfactorily learned based on a breached threshold of positive examples and/or negative examples.
- server(s) 102 , computing platform(s) 104 , and/or external resources 118 may be operatively linked via one or more electronic communication links.
- electronic communication links may be established, at least in part, via a network such as the Internet and/or other networks. It will be appreciated that this is not intended to be limiting, and that the scope of this disclosure includes implementations in which server(s) 102 , computing platform(s) 104 , and/or external resources 118 may be operatively linked via some other communication media.
- a given computing platform 104 may include one or more processors configured to execute machine-readable instructions.
- the machine-readable instructions may be configured to enable an expert or user associated with the given computing platform 104 to interface with system 100 and/or external resources 118 , and/or provide other functionality attributed herein to computing platforms 104 .
- the given computing platform 104 may include one or more of a desktop computer, a laptop computer, a handheld computer, a tablet computing platform, a NetBook, a Smartphone, a gaming console, and/or other computing platforms.
- External resources 118 may include sources of information, hosts and/or providers of media items outside of system 100 , external entities participating with system 100 , and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources 118 may be provided by resources included in system 110 .
- Server(s) 102 may include electronic storage 120 , one or more processors 122 , and/or other components. Server(s) 102 may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of server(s) 102 in FIG. 1 is not intended to be limiting. Server(s) 102 may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to server(s) 102 . For example, server(s) 102 may be implemented by a cloud of computing platforms operating together as server(s) 102 .
- a given computing platform 104 may include electronic storage that is the same as or similar to electronic storage 120 .
- a given computing platform 104 may include one or more processors that are the same as or similar to processor(s) 122 .
- Electronic storage 120 may comprise non-transitory storage media that electronically stores information.
- the electronic storage media of electronic storage 120 may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with server(s) 102 and/or removable storage that is removably connectable to server(s) 102 via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.).
- a port e.g., a USB port, a firewire port, etc.
- a drive e.g., a disk drive, etc.
- Electronic storage 120 may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media.
- Electronic storage 120 may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources).
- Electronic storage 120 may store software algorithms, information determined by processor(s) 122 , information received from server(s) 102 , information received from computing platform(s) 104 , and/or other information that enables server(s) 102 to function as described herein.
- Processor(s) 122 is configured to provide information processing capabilities in server(s) 102 .
- processor(s) 122 may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information.
- processor(s) 122 is shown in FIG. 1 as a single entity, this is for illustrative purposes only.
- processor(s) 122 may include a plurality of processing units. These processing units may be physically located within the same device, or processor(s) 122 may represent processing functionality of a plurality of devices operating in coordination.
- the processor(s) 122 may be configured to execute machine-readable instructions and components thereof including components 108 , 110 , 112 , 114 , 116 , and/or other components.
- Processor(s) 122 may be configured to execute components 108 , 110 , 112 , 114 , 116 , and/or other components by software; hardware; firmware; some combination of software, hardware, and/or firmware; and/or other mechanisms for configuring processing capabilities on processor(s) 122 .
- the term “machine-readable instruction component” may refer to any component or set of components that perform the functionality attributed to the machine-readable instruction component. This may include one or more physical processors during execution of processor readable instructions, the processor readable instructions, circuitry, hardware, storage media, or any other components.
- machine-readable instruction components 108 , 110 , 112 , 114 , and 116 are illustrated in FIG. 1 as being implemented within a single processing unit, in implementations in which processor(s) 122 includes multiple processing units, one or more of components 108 , 110 , 112 , 114 , and/or 116 may be implemented remotely from the other components.
- the description of the functionality provided by the different components 108 , 110 , 112 , 114 , and/or 116 described below is for illustrative purposes, and is not intended to be limiting, as any of components 108 , 110 , 112 , 114 , and/or 116 may provide more or less functionality than is described.
- processor(s) 122 may be configured to execute one or more additional machine-readable instruction components that may perform some or all of the functionality attributed below to one of components 108 , 110 , 112 , 114 , and/or 116 .
- FIGS. 2A, 2B, 2C, 2D, 2E, 2F, and 2G illustrate a user interface 200 , in accordance with one or more implementations.
- user interface 200 presents concept categories including people category 202 .
- FIG. 2B responsive to people category 202 being selected, user interface 200 shows representations of media items conveying identified individuals as well as an add-new-person tab 204 .
- FIG. 2C responsive to add-new-person tab 204 being selected, user interface 200 shows representations of individuals, which are taken from a media item repository.
- representation 206 is selected as a new person for system 100 to learn.
- FIG. 2A user interface 200 presents concept categories including people category 202 .
- FIG. 2B responsive to people category 202 being selected, user interface 200 shows representations of media items conveying identified individuals as well as an add-new-person tab 204 .
- FIG. 2C responsive to add-new-person tab 204 being selected, user interface 200 shows representations of individuals, which are taken from a media item repository.
- the other on-screen representations are updated to be more relevant to the person shown in representation 206 (e.g., based on the media items, represented by the other on-screen representations, having characteristics similar to the media item represented by the selected representation 206 ).
- additional representations 208 are selected as positive examples of the person shown in representation 206 .
- the non-selected representations 210 serve as negative examples of the person shown in representation 206 .
- FIG. 2F responsive to the user attempting to enter a name for the person shown in representation 206 , a contacts lists appears from which the user may select from. The user may manually enter the name for the person shown in representation 206 .
- the user interface 200 shows that the concept of the person shown in representation 206 has been learned by system 100 . Indeed, the representations shown in FIG. 2G all correspond to the person shown in representation 206 .
- FIGS. 3A, 3B, 3C, 3D, 3E, 3F, and 3G illustrate a user interface 300 , in accordance with one or more implementations.
- user interface 300 presents concept categories including things category 302 .
- user interface 302 shows representations of media items conveying identified things as well as an add-new-thing tab 304 .
- FIG. 3C responsive to add-new-thing tab 304 being selected, user interface 300 may allow the user to define a new thing to be learned by system 100 .
- the user has entered “face paint” into field 306 as the new thing to be learned.
- FIG. 3A user interface 300 presents concept categories including things category 302 .
- FIG. 3B responsive to thing category 302 being selected, user interface 302 shows representations of media items conveying identified things as well as an add-new-thing tab 304 .
- FIG. 3C responsive to add-new-thing tab 304 being selected, user interface 300 may allow the user to define a new thing to be learned by system 100 .
- user interface 300 presents several initial recommendations of media items that may or may not convey face paint.
- recommendation 308 is selected as a positive example of a media item conveying face paint.
- FIG. 3F responsive to recommendation 308 being selected, the other on-screen and off-screen recommendations are updated to be more relevant to face paint.
- Recommendation 310 is also selected as conveying face paint.
- FIG. 3G the user interface 300 shows that the concept of face paint has been learned by system 100 . Indeed, the representations shown in FIG. 3G all correspond to the media items conveying face paint.
- none of the on-screen recommendations (in the portion of user interface 300 shown in FIGS. 3E and 3F that is in-view or visible to the user) that were not selected were removed from the current set of on-screen recommendations.
- only the selected recommendation 308 is removed from the current set of on-screen recommendations.
- a new media item is identified (e.g., based on the new media item having characteristics similar to the selected media item represented by the selected recommendation 308 ), and a recommendation of the new media item is provided in the current set of on-screen recommendations (e.g., replacing the selected recommendation in the current set of on-screen recommendations).
- a user selection of one recommendation (or a subset of recommendations) presented in the on-screen user interface portion to indicate the recommendation as a positive example does not necessarily preclude the user from selecting one or more other recommendations in the on-screen user interface portion as positive examples.
- a user selection of one recommendation (or a subset of recommendations) presented in the on-screen user interface portion to indicate the recommendation as a positive example does not necessarily preclude the user from seeing what has been selected, preclude the user from unselecting the selected recommendation, etc.
- one or more of the on-screen recommendations may be reordered or moved around on the on-screen user interface portion such that that one or more of the on-screen recommendations may be in a different order (as compared to immediately prior to the user selection of recommendation 308 ) or one or more of the on-screen recommendations may be in a different position on the on-screen user interface portion (as compared to immediately prior to the user selection of recommendation 308 ).
- one or more off-screen recommendations in a portion of user interface 300 not in-view or visible to the user may be (i) removed from the off-screen user interface portion, (ii) replaced with one or more new recommendations (e.g., based on the new media items represented by the new recommendations having characteristics similar to the selected media item represented by the selected recommendation 308 ), (iii) reordered or moved around on the off-screen user interface portion, (iv) or affected in other ways.
- the user when the user scrolls or otherwise cause the current portion of the user interface that is on-screen to change (such that the current on-screen portion includes the portion of the user interface that was previously off-screen), the user may immediately see the updated recommendations of the previously-off-screen portion without necessarily having to see one or more of the old recommendations (e.g., that may not have been relevant to the faint paint concept).
- a set of recommendations designated for an off-screen portion of user interface 300 that is not visible to the first user may be loaded on the off-screen user interface portion responsive to detecting that user interface portion becoming an on-screen portion (e.g., based on a user scrolling, clicking a link, or otherwise initiating an action that causes the user interface portion to become visible to the user).
- the designated recommendation set may be loaded on the off-screen user interface portion responsive to detecting that user interface portion becoming an on-screen portion (e.g., based on a user scrolling, clicking a link, or otherwise initiating an action that causes the user interface portion to become visible to the user).
- one or more of the not-yet-loaded recommendations of the designated set may be (i) removed from the designated set, (ii) replaced with one or more new recommendations (e.g., based on the new media items represented by the new recommendations having characteristics similar to the selected media item represented by the selected recommendation 308 ), (iii) reordered or moved to a different position at the designated user interface portion, (iv) or affected in other ways.
- the user when the user scrolls or otherwise cause the current portion of the user interface that is on-screen to change (such that the current on-screen portion includes the portion of the user interface that was previously off-screen), the user may see the updated recommendations of the designated set without necessarily having to see one or more of the old recommendations (e.g., that may not have been relevant to the faint paint concept).
- a user may select only a portion of a recommended media item.
- the user may select only the middle portion of representation 308 that includes the painted part of the person's face (e.g., by loading a larger version of representation 308 and “cropping” the middle portion).
- one or more recommended media items may be identified for presentation on the user interface (e.g., to be added to be recommended set of media items on user interface 300 , to replace another recommended item on user interface 300 , etc.).
- the recommended media items may be identified as new additions or replacements for currently-presented media items based on the identified recommended media items having characteristics similar to the selected corresponding middle portion of the media item represented by representation 308 .
- the characteristics of the middle portion may be given a higher weight (e.g., giving higher weight to the diversity of colors of the face paint, the part of the face that is painted, etc.), while the characteristics of other non-selected portions may be given less weight or no weight (e.g., giving less or no weight to the person's hair, the person's chin, etc.), in the determination of whether other media item should be selected as new additions or replacements for currently-presented media items.
- system 100 may be used to recommend any type of items to a user based on a given interaction and/or a history of interaction with other items.
- some implementations may be applicable to e-commerce shopping applications, travel applications, sorting through large datasets for content to find what a user is looking for based on the previously selected items that the user approves of, location-based recommendations based on a user's current or past locations, and/or other applications.
- FIG. 4 illustrates a method 400 for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections, in accordance with one or more implementations.
- the operations of method 400 presented below are intended to be illustrative. In some implementations, method 400 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations of method 400 are illustrated in FIG. 4 and described below is not intended to be limiting.
- method 400 may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information).
- the one or more processing devices may include one or more devices executing some or all of the operations of method 400 in response to instructions stored electronically on an electronic storage medium.
- the one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of method 400 .
- a user interface may be presented via a hardware display of a computing platform. Operation 402 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to user interface component 108 , in accordance with one or more implementations.
- one or more concept categories may be presented within the user interface. Operation 404 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to concept category component 110 , in accordance with one or more implementations.
- Operation 406 a user selection of a given concept category may be received. Operation 406 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to concept category component 110 , in accordance with one or more implementations.
- Operation 408 a user selection to add a new concept within the given concept category may be received. Operation 408 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to new concept component 112 , in accordance with one or more implementations.
- Operation 410 recommendations of media items that may or may not convey the new concept may be presented within the user interface. Operation 410 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to recommendation component 114 , in accordance with one or more implementations.
- Operation 412 a user selection of a recommendation of a media item that does convey the new concept may be received as a positive example. Operation 412 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to positive/negative example component 116 , in accordance with one or more implementations.
- a recommendation of a media item that does not convey the new concept may be identified as a negative example by virtue of it not corresponding to a user selection.
- Operation 414 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to positive/negative example component 116 , in accordance with one or more implementations.
- non-selected recommendations may be updated within the user interface based on the positive example and the negative example.
- Operation 416 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to recommendation component 114 , in accordance with one or more implementations.
- a user selection may be received indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.
- Operation 418 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to new concept component 112 , in accordance with one or more implementations.
- a system comprising: one or more hardware processors configured by machine-readable instructions to: cause a set of media item recommendations to be loaded on a user interface for presentation to a user, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time; receive a user selection of one or more recommendations of the on-screen recommendation set; identify, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection; and cause, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface during the presentation of the media item recommendation set.
- the one or more hardware processors are configured by machine-readable instructions to: identify one or more new recommendations as having one or more characteristics similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and cause the off-screen recommendation set to be updated on the user interface by causing the off-screen recommendation set to be updated with the new recommendations during the presentation of the media item recommendation set.
- the one or more hardware processors are further configured by machine-readable instructions to: identify, as positive examples, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and generate an indication on the user interface that the new concept has been learned based on a threshold number of positive examples being identified during the presentation of the media item recommendation set.
- the recommended media items comprises one or more of images, animations, videos, or audios.
- the one or more hardware processors are configured by machine-readable instructions to receive a user request to add a new concept, the user request to add the new concept comprising a user-provided definition of the new concept, and the user-provided definition comprising one or more words describing the new concept.
- the one or more hardware processors are configured by machine-readable instructions to: cause a set of concept categories to be presented on the user interface; and receive a user selection of a concept category of the concept category set, wherein the user request to add the new concept is a request to add the new concept to the user-selected concept category.
- concept categories of the concept category set comprises one or more of recently created concepts, people, places, things, times, favorites, interests, or categories provided by other users.
- a method being performed by one or more hardware processors configured by machine-readable instructions that, when executed by the one or more hardware processors, perform the method, the method comprising: causing a set of media item recommendations to be loaded on a user interface for presentation to a user, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time; receiving a user selection of one or more recommendations of the on-screen recommendation set; identifying, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection; and causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface during the presentation of the media item recommendation set.
- the method further comprising cause, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set.
- causing the off-screen recommendation set to be updated comprises causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
- the method further comprising identifying one or more new recommendations as having one or more characteristics similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection, wherein causing the off-screen recommendation set to be updated on the user interface comprises causing the off-screen recommendation set to be updated with the new recommendations during the presentation of the media item recommendation set.
- identifying the new recommendations comprises identifying the new recommendations for updating the media item recommendation set based on the new recommendations being more similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection than one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection.
- causing the off-screen recommendation set to be updated on the user interface comprises causing, based on the user recommendation selection, one or more recommendations of the off-screen recommendation set to be replaced with one or more new recommendations during the presentation of the media item recommendation set.
- causing the off-screen recommendation set to be updated on the user interface comprises causing, based on the user recommendation selection, reordering of recommendations of the off-screen recommendation set during the presentation of the media item recommendation set.
- the method of implementation 19 the method further comprising receiving a user request to add a new concept, the user request to add the new concept comprising a user-provided definition of the new concept, and the user-provided definition comprising one or more words describing the new concept.
- the one or more hardware processors are configured by machine-readable instructions to: cause a set of concept categories to be presented on the user interface; and receive a user selection of a concept category of the concept category set, wherein the user request to add the new concept is a request to add the new concept to the user-selected concept category.
- concept categories of the concept category set comprises one or more of recently created concepts, people, places, things, times, favorites, interests, or categories provided by other users.
- a system comprising: one or more hardware processors configured by machine-readable instructions to perform any combination of features of implementations 19-36 to the extent possible.
- a method being performed by one or more hardware processors configured by machine-readable instructions that, when executed by the one or more hardware processors, perform the method, the method comprising any combination of features of implementations 19-36 to the extent possible.
- a tangible, machine-readable, non-transitory media storing instructions that, when executed, cause a data processing apparatus to effectuate any combination of features of implementations 19-36 to the extent possible.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Strategic Management (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Primary Health Care (AREA)
- Tourism & Hospitality (AREA)
- User Interface Of Digital Computer (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Computational Mathematics (AREA)
- Fuzzy Systems (AREA)
- Molecular Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Algebra (AREA)
- Artificial Intelligence (AREA)
- Automation & Control Theory (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
Abstract
In certain implementations, a user request to add a new concept may be received. A set of media item recommendations may be caused to be loaded on a user interface for presentation to a user responsive to the user request to add the new concept. The media item recommendation set may include a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface. The on-screen user interface portion is visible to the user at a first time. The off-screen user interface portion is not being visible to the user at the first time. A user selection of one or more recommendations of the on-screen recommendation set is received. The off-screen recommendation set may be caused to be updated on the user interface during the presentation of the media item recommendation set based on the user recommendation selection.
Description
- This application is a continuation U.S. patent application Ser. No. 15/369,735, filed Dec. 5, 2016, which claims the benefit of U.S. Provisional Patent Application Ser. No. 62/262,858, filed Dec. 3, 2015, which is hereby incorporated by reference herein in its entirety.
- This disclosure relates to systems and methods for providing a user interface that facilitates learning user preferences via real-time recommendations of media items.
- Although a number of recommendation computer systems exist, typical recommendation computer systems do not provide a user with updated recommendations such that (i) the updated recommendations provided during a current session and (ii) are based on the user's selection of presented recommendations during the same session. Moreover, although a number of machine-learning systems exist, typical machine-learning systems do not provided a user with updated recommendations of items potentially relevant to a concept (e.g., a new concept to be learned, a concept to be updated, etc.) such that (i) the updated recommendations provided during a current session and (ii) are based on the user's selection of presented recommendations during the same session. As such, for example, the updated recommendations provided by typical recommendation computer systems may be “out-of-date” during that current session with respect to the user's selections during that session (e.g., such updated recommendations do not take into account the user's selections during that session), resulting in update delays that may negatively affect the user experience. These and/or other drawbacks exist.
- One aspect of the disclosure relates to a system configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections. In some implementations, preferences of a user may be learned through some interaction (e.g., user selection, lack of user selection) with displayed media items (or representations thereof) in order to predict new media items to show. The new media items may or may not currently appear on the screen. If the new media items appear on the screen, they can re-sort the order of the displayed media items. If the new media items appear off the current screen, the user may not see the re-sorting of the media items, but when the user scrolls, paginates, or otherwise manipulates the user interface to the next view of media items, the on-screen media items will appear more relevant to the initial selected items. Some implementations may not rely on other users. This may be achieved by heavily relying on machine learning to quickly learn over items that have feedback associated with them and then predict over the remaining items that the user has not interacted with. Some implementations may utilize neural networks for such learning, while some may not be dependent on neural networks.
- In some implementations, the system may be configured to quickly learn the user's preferences in order to teach the system about the user's interests, perspectives, personal life, and/or other information relevant to the user. By way of non-limiting example, learning the user's preferences may teach the system about the user's friends and family, or it may teach the system about new concepts the system does not already understand. This may be achieved by clicking on positive examples of images that contain the concept as well as skipping over (e.g., not clicking) the ones that do not contain the concept acts as negative examples to teach the system what the user has in mind. As an illustration, if the user is trying to train the system to know the name of the user's specific pet dog, the user might do a search for “dog” to retrieve media items that contain the user's specific pet dog. Then the user may click on their specific dog, while skipping over other dogs that are not theirs. The system may refine on-screen media items and/or off-screen media items to show next in order to refine the displayed media items towards the user's specific pet dog.
- The system may comprise one or more hardware processors configured by machine-readable instructions to present the user interface via a hardware display of a computing platform. The one or more hardware processors may be configured by machine-readable instructions to present within the user interface one or more concept categories. The one or more hardware processors may be configured by machine-readable instructions to receive a user selection of a given concept category. The one or more hardware processors may be configured by machine-readable instructions to receive a user selection to add a new concept within the given concept category. The one or more hardware processors may be configured by machine-readable instructions to present within the user interface recommendations of media items that may or may not convey the new concept. The one or more hardware processors may be configured by machine-readable instructions to receive, as a positive example, a user selection of a recommendation of a media item that does convey the new concept. The one or more hardware processors may be configured by machine-readable instructions to identify, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection. The one or more hardware processors may be configured by machine-readable instructions to update within the user interface non-selected recommendations based on the positive example and the negative example. The one or more hardware processors may be configured by machine-readable instructions to receive a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.
- Another aspect of the disclosure relates to a method for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections. The method may be performed by one or more hardware processors configured by machine-readable instructions. The method may comprise presenting the user interface via a hardware display of a computing platform. The method may comprise presenting within the user interface one or more concept categories. The method may comprise receiving a user selection of a given concept category. The method may comprise receiving a user selection to add a new concept within the given concept category. The method may comprise presenting within the user interface recommendations of media items that may or may not convey the new concept. The method may comprise receiving, as a positive example, a user selection of a recommendation of a media item that does convey the new concept. The method may comprise identifying, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection. The method may comprise updating within the user interface non-selected recommendations based on the positive example and the negative example. The method may comprise receiving a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.
- These and other features, and characteristics of the present technology, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise. In addition, as used in the specification and the claims, the term “or” means “and/or” unless the context clearly dictates otherwise.
-
FIG. 1 illustrates a system configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items, in accordance with one or more implementations. -
FIGS. 2A, 2B, 2C, 2D, 2E, 2F, and 2G illustrate a user interface, in accordance with one or more implementations. -
FIGS. 3A, 3B, 3C, 3D, 3E, 3F, and 3G illustrate a user interface, in accordance with one or more implementations. -
FIG. 4 illustrates a method for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections, in accordance with one or more implementations. -
FIG. 1 illustrates asystem 100 configured for providing a user interface that facilitates learning user preferences via real-time recommendations of media items, in accordance with one or more implementations. In some implementations,system 100 may include one ormore servers 102. The server(s) 102 may be configured to communicate with one ormore computing platforms 104 according to a client/server architecture. Users may accesssystem 100 via computing platform(s) 104. The server(s) 102 may be configured to execute machine-readable instructions 106. The machine-readable instructions 106 may include one or more of a user interface component 108, aconcept category component 110, anew concept component 112, arecommendation component 114, a positive/negative example component 116, and/or other components. - The user interface component 108 may be configured to present a user interface via a hardware display of a given
computing platform 104. The user interface may include a graphical user interface. The hardware display of the computing platform may include a touch screen. The touch screen may be configured to receive user selections responsive to a user touching regions of the touch screen that correspond to information being displayed within the regions. - The
concept category component 110 may be configured to present within the user interface one or more concept categories. The one or more concept categories may be represented as category tiles within the graphical user interface. The concept categories may include one or more of recently created concepts, people, places, things, times, favorites, interests, categories provided by other users, duplicate media items, and/or other concept categories. Generally speaking, a concept may include a general notion or idea that corresponds to some class of entities and that has the characteristic or essential features of the class. By way of non-limiting example, a concept may include one or more of a person's identity, a name of a specific thing, a type of thing, an idea described by a noun, an idea described by a verb, an idea described by an adverb, an idea of what a user is interested in, and/or other concepts. - The
concept category component 110 may be configured to receive a user selection of a given concept category. Theconcept category component 110 may be configured to present within the user interface one or more representations of media items corresponding to the given concept category. A given media item may include one or more of an image, a video, text, audio, animations, graphics, data points, and/or other media items. The one or more representations of media items may correspond to one or more media items stored in one or more media item repositories. A given media item repository may be located within server(s) 102, computing platform(s) 104,external resources 118, and/or other locations. Presenting a given representation of a given media item may include presenting a thumbnail image of the given media item or a portion of the given media item. For example, when the selected concept category is “people,” the given representation of the given media item may include a thumbnail image of a portion of an image showing a person's face. As another example, when the given media item is a video, the given representation of the given media item may include a portion of a given frame of the video. - The
new concept component 112 may be configured to receive a user selection to add a new concept within the given concept category. In some implementations,new concept component 112 may be configured to receive a user definition of the new concept. The user definition of the new concept may include a word or phrase describing the new concept. - The
recommendation component 114 may be configured to present within the user interface recommendations of media items that may or may not convey the new concept. A given recommendation of a given media item may include a representation of the given media item, as described above in connection withconcept category component 110. For example, presenting a given recommendation of a given media item may include presenting a thumbnail image of the given media item or a portion of the given media item. The one or more recommendations of media items may correspond to one or more media items stored in one or more media item repositories. The recommendations may be determined based on machine learning, search interactions, sharing behavior, interactions with the user interface, and/or other techniques for identifying media items that potentially convey a desired concept. A recommendation may be referred to as a recommend and/or a suggestion. - The positive/
negative example component 116 may be configured to receive, as a positive example, a user selection of a recommendation of a media item that does convey the new concept. Generally speaking, a given recommendation is a positive example of the new concept if it corresponds to a media item that conveys the new concept. A media item conveys the new concept if it expresses, portrays, depicts, connotes, suggests, and/or otherwise communicates the new concept. The positive/negative example component 116 may be configured to identify, as a negative example, a recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection. Generally speaking, a given recommendation is a negative example of the new concept if it corresponds to a media item that does not convey the new concept. - The
recommendation component 114 may be configured to update within the user interface non-selected recommendations based on the positive example and the negative example. Non-selected recommendations are recommendations that have not been selected by the user and, therefore, do not correspond to a user selection of a recommendation. The updating may occur in real time or near-real time. In some implementations, updating the non-selected suggestions may include updating on-screen recommendations to include recommendations that are more relevant to the new concept. The on-screen recommendations may include the recommendations that are visible within the user interface. In some implementations, updating the non-selected suggestions may include re-ranking off-screen recommendations based on relevancy to the new concept. The off-screen recommendations may include the recommendations that are not visible within the user interface. In some implementations, updating the non-selected recommendations may include replacing the non-selected recommendations with new recommendations. The new recommendations may be selected based on the positive example and the negative example. In some implementations, updating the non-selected recommendations may include reordering the non-selected recommendations. The reordering may be performed based on the positive example and the negative example. - The updating of recommendations may be an iterative process. For example, positive/
negative example component 116 may be configured to receive, as a second positive example, a user selection of an updated recommendation of a media item that does convey the new concept. The positive/negative example component 116 may be configured to identify, as a second negative example, an updated recommendation of a media item that does not convey the new concept by virtue of not corresponding to a user selection. Therecommendation component 114 may be configured to update within the user interface non-selected recommendations based on the second positive example and the second negative example. - The
new concept component 112 may be configured to receive a user selection indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface. In some implementations,new concept component 112 may automatically determine whether a new concept has been satisfactorily learned based on a breached threshold of positive examples and/or negative examples. - In some implementations, server(s) 102, computing platform(s) 104, and/or
external resources 118 may be operatively linked via one or more electronic communication links. For example, such electronic communication links may be established, at least in part, via a network such as the Internet and/or other networks. It will be appreciated that this is not intended to be limiting, and that the scope of this disclosure includes implementations in which server(s) 102, computing platform(s) 104, and/orexternal resources 118 may be operatively linked via some other communication media. - A given
computing platform 104 may include one or more processors configured to execute machine-readable instructions. The machine-readable instructions may be configured to enable an expert or user associated with the givencomputing platform 104 to interface withsystem 100 and/orexternal resources 118, and/or provide other functionality attributed herein tocomputing platforms 104. By way of non-limiting example, the givencomputing platform 104 may include one or more of a desktop computer, a laptop computer, a handheld computer, a tablet computing platform, a NetBook, a Smartphone, a gaming console, and/or other computing platforms. -
External resources 118 may include sources of information, hosts and/or providers of media items outside ofsystem 100, external entities participating withsystem 100, and/or other resources. In some implementations, some or all of the functionality attributed herein toexternal resources 118 may be provided by resources included insystem 110. - Server(s) 102 may include
electronic storage 120, one ormore processors 122, and/or other components. Server(s) 102 may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of server(s) 102 inFIG. 1 is not intended to be limiting. Server(s) 102 may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to server(s) 102. For example, server(s) 102 may be implemented by a cloud of computing platforms operating together as server(s) 102. - In some implementations, a given
computing platform 104 may include electronic storage that is the same as or similar toelectronic storage 120. A givencomputing platform 104 may include one or more processors that are the same as or similar to processor(s) 122. -
Electronic storage 120 may comprise non-transitory storage media that electronically stores information. The electronic storage media ofelectronic storage 120 may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with server(s) 102 and/or removable storage that is removably connectable to server(s) 102 via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.).Electronic storage 120 may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media.Electronic storage 120 may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources).Electronic storage 120 may store software algorithms, information determined by processor(s) 122, information received from server(s) 102, information received from computing platform(s) 104, and/or other information that enables server(s) 102 to function as described herein. - Processor(s) 122 is configured to provide information processing capabilities in server(s) 102. As such, processor(s) 122 may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although processor(s) 122 is shown in
FIG. 1 as a single entity, this is for illustrative purposes only. In some implementations, processor(s) 122 may include a plurality of processing units. These processing units may be physically located within the same device, or processor(s) 122 may represent processing functionality of a plurality of devices operating in coordination. The processor(s) 122 may be configured to execute machine-readable instructions and components thereof includingcomponents components - It should be appreciated that although machine-
readable instruction components FIG. 1 as being implemented within a single processing unit, in implementations in which processor(s) 122 includes multiple processing units, one or more ofcomponents different components components components components components -
FIGS. 2A, 2B, 2C, 2D, 2E, 2F, and 2G illustrate auser interface 200, in accordance with one or more implementations. InFIG. 2A ,user interface 200 presents concept categories includingpeople category 202. InFIG. 2B , responsive topeople category 202 being selected,user interface 200 shows representations of media items conveying identified individuals as well as an add-new-person tab 204. InFIG. 2C , responsive to add-new-person tab 204 being selected,user interface 200 shows representations of individuals, which are taken from a media item repository. InFIG. 2D ,representation 206 is selected as a new person forsystem 100 to learn. InFIG. 2E , responsive torepresentation 206 being selected, the other on-screen representations are updated to be more relevant to the person shown in representation 206 (e.g., based on the media items, represented by the other on-screen representations, having characteristics similar to the media item represented by the selected representation 206). Also, inFIG. 2E ,additional representations 208 are selected as positive examples of the person shown inrepresentation 206. In addition, thenon-selected representations 210 serve as negative examples of the person shown inrepresentation 206. InFIG. 2F , responsive to the user attempting to enter a name for the person shown inrepresentation 206, a contacts lists appears from which the user may select from. The user may manually enter the name for the person shown inrepresentation 206. InFIG. 2G , theuser interface 200 shows that the concept of the person shown inrepresentation 206 has been learned bysystem 100. Indeed, the representations shown inFIG. 2G all correspond to the person shown inrepresentation 206. -
FIGS. 3A, 3B, 3C, 3D, 3E, 3F, and 3G illustrate auser interface 300, in accordance with one or more implementations. InFIG. 3A ,user interface 300 presents concept categories includingthings category 302. InFIG. 3B , responsive tothing category 302 being selected,user interface 302 shows representations of media items conveying identified things as well as an add-new-thing tab 304. InFIG. 3C , responsive to add-new-thing tab 304 being selected,user interface 300 may allow the user to define a new thing to be learned bysystem 100. Here, the user has entered “face paint” intofield 306 as the new thing to be learned. InFIG. 3D ,user interface 300 presents several initial recommendations of media items that may or may not convey face paint. InFIG. 3E ,recommendation 308 is selected as a positive example of a media item conveying face paint. InFIG. 3F , responsive torecommendation 308 being selected, the other on-screen and off-screen recommendations are updated to be more relevant to face paint.Recommendation 310 is also selected as conveying face paint. InFIG. 3G , theuser interface 300 shows that the concept of face paint has been learned bysystem 100. Indeed, the representations shown inFIG. 3G all correspond to the media items conveying face paint. - In some implementations, as indicated in
FIGS. 3E and 3F , whenrecommendation 308 is selected, none of the on-screen recommendations (in the portion ofuser interface 300 shown inFIGS. 3E and 3F that is in-view or visible to the user) that were not selected were removed from the current set of on-screen recommendations. In some implementations, as indicated inFIGS. 3E and 3F , only the selectedrecommendation 308 is removed from the current set of on-screen recommendations. A new media item is identified (e.g., based on the new media item having characteristics similar to the selected media item represented by the selected recommendation 308), and a recommendation of the new media item is provided in the current set of on-screen recommendations (e.g., replacing the selected recommendation in the current set of on-screen recommendations). In this way, for example, a user selection of one recommendation (or a subset of recommendations) presented in the on-screen user interface portion to indicate the recommendation as a positive example does not necessarily preclude the user from selecting one or more other recommendations in the on-screen user interface portion as positive examples. - In some implementations, in another use case with respect to
FIG. 3E , whenrecommendation 308 is selected, none of the on-screen recommendations (in the portion ofuser interface 300 shown inFIGS. 3E and 3F that is in-view or visible to the user)—including the selected recommendation—is removed from the on-screen user interface portion. As such, for example, a user selection of one recommendation (or a subset of recommendations) presented in the on-screen user interface portion to indicate the recommendation as a positive example does not necessarily preclude the user from seeing what has been selected, preclude the user from unselecting the selected recommendation, etc. - In some implementations, with respect to
FIG. 3E , one or more of the on-screen recommendations (in the portion ofuser interface 300 shown inFIG. 3E that is in-view or visible to the user) may be reordered or moved around on the on-screen user interface portion such that that one or more of the on-screen recommendations may be in a different order (as compared to immediately prior to the user selection of recommendation 308) or one or more of the on-screen recommendations may be in a different position on the on-screen user interface portion (as compared to immediately prior to the user selection of recommendation 308). - In some implementations, with respect to
FIG. 3E , responsive torecommendation 308 being selected, one or more off-screen recommendations (in a portion ofuser interface 300 not in-view or visible to the user) may be (i) removed from the off-screen user interface portion, (ii) replaced with one or more new recommendations (e.g., based on the new media items represented by the new recommendations having characteristics similar to the selected media item represented by the selected recommendation 308), (iii) reordered or moved around on the off-screen user interface portion, (iv) or affected in other ways. Thus, for example, when the user scrolls or otherwise cause the current portion of the user interface that is on-screen to change (such that the current on-screen portion includes the portion of the user interface that was previously off-screen), the user may immediately see the updated recommendations of the previously-off-screen portion without necessarily having to see one or more of the old recommendations (e.g., that may not have been relevant to the faint paint concept). - In some implementations, with respect to
FIG. 3E , a set of recommendations designated for an off-screen portion ofuser interface 300 that is not visible to the first user. In some implementations, although the designated recommendation set may not yet be loaded in the off-screen user interface portion, the designated recommendation set may be loaded on the off-screen user interface portion responsive to detecting that user interface portion becoming an on-screen portion (e.g., based on a user scrolling, clicking a link, or otherwise initiating an action that causes the user interface portion to become visible to the user). In one use case, with respect toFIG. 3E , responsive torecommendation 308 being selected, one or more of the not-yet-loaded recommendations of the designated set may be (i) removed from the designated set, (ii) replaced with one or more new recommendations (e.g., based on the new media items represented by the new recommendations having characteristics similar to the selected media item represented by the selected recommendation 308), (iii) reordered or moved to a different position at the designated user interface portion, (iv) or affected in other ways. As such, for example, when the user scrolls or otherwise cause the current portion of the user interface that is on-screen to change (such that the current on-screen portion includes the portion of the user interface that was previously off-screen), the user may see the updated recommendations of the designated set without necessarily having to see one or more of the old recommendations (e.g., that may not have been relevant to the faint paint concept). - In some implementations, with respect to
FIG. 3E , a user may select only a portion of a recommended media item. As an example, the user may select only the middle portion ofrepresentation 308 that includes the painted part of the person's face (e.g., by loading a larger version ofrepresentation 308 and “cropping” the middle portion). Responsive to the user selection of the middle portion ofrepresentation 308, one or more recommended media items may be identified for presentation on the user interface (e.g., to be added to be recommended set of media items onuser interface 300, to replace another recommended item onuser interface 300, etc.). In one use case, for instance, the recommended media items may be identified as new additions or replacements for currently-presented media items based on the identified recommended media items having characteristics similar to the selected corresponding middle portion of the media item represented byrepresentation 308. In another use case, the characteristics of the middle portion may be given a higher weight (e.g., giving higher weight to the diversity of colors of the face paint, the part of the face that is painted, etc.), while the characteristics of other non-selected portions may be given less weight or no weight (e.g., giving less or no weight to the person's hair, the person's chin, etc.), in the determination of whether other media item should be selected as new additions or replacements for currently-presented media items. - While implementations are described herein in the context of media items, this is not intended to be limiting. Indeed, in some implementations,
system 100 may be used to recommend any type of items to a user based on a given interaction and/or a history of interaction with other items. By way of non-limiting example, some implementations may be applicable to e-commerce shopping applications, travel applications, sorting through large datasets for content to find what a user is looking for based on the previously selected items that the user approves of, location-based recommendations based on a user's current or past locations, and/or other applications. -
FIG. 4 illustrates amethod 400 for providing a user interface that facilitates learning user preferences via real-time recommendations of media items based on positive examples identified by user selections and negative examples identified by lack of user selections, in accordance with one or more implementations. The operations ofmethod 400 presented below are intended to be illustrative. In some implementations,method 400 may be accomplished with one or more additional operations not described, and/or without one or more of the operations discussed. Additionally, the order in which the operations ofmethod 400 are illustrated inFIG. 4 and described below is not intended to be limiting. - In some implementations,
method 400 may be implemented in one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information). The one or more processing devices may include one or more devices executing some or all of the operations ofmethod 400 in response to instructions stored electronically on an electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations ofmethod 400. - At an
operation 402, a user interface may be presented via a hardware display of a computing platform.Operation 402 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to user interface component 108, in accordance with one or more implementations. - At an
operation 404, one or more concept categories may be presented within the user interface.Operation 404 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar toconcept category component 110, in accordance with one or more implementations. - At an
operation 406, a user selection of a given concept category may be received.Operation 406 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar toconcept category component 110, in accordance with one or more implementations. - At an
operation 408, a user selection to add a new concept within the given concept category may be received.Operation 408 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar tonew concept component 112, in accordance with one or more implementations. - At an
operation 410, recommendations of media items that may or may not convey the new concept may be presented within the user interface.Operation 410 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar torecommendation component 114, in accordance with one or more implementations. - At an
operation 412, a user selection of a recommendation of a media item that does convey the new concept may be received as a positive example.Operation 412 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to positive/negative example component 116, in accordance with one or more implementations. - At an
operation 414, a recommendation of a media item that does not convey the new concept may be identified as a negative example by virtue of it not corresponding to a user selection.Operation 414 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar to positive/negative example component 116, in accordance with one or more implementations. - At an
operation 416, non-selected recommendations may be updated within the user interface based on the positive example and the negative example.Operation 416 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar torecommendation component 114, in accordance with one or more implementations. - At an
operation 418, a user selection may be received indicating user satisfaction that the new concept has been learned based on a plurality of positive examples being presented via the user interface.Operation 418 may be performed by one or more processors configured by a machine-readable instruction component that is the same as or similar tonew concept component 112, in accordance with one or more implementations. - Although the present technology has been described in detail for the purpose of illustration based on what is currently considered to be the most practical and preferred implementations, it is to be understood that such detail is solely for that purpose and that the technology is not limited to the disclosed implementations, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present technology contemplates that, to the extent possible, one or more features of any implementation can be combined with one or more features of any other implementation.
- Implementations will be better understood with reference to the following enumerated implementations:
- 1. A system comprising: one or more hardware processors configured by machine-readable instructions to: cause a set of media item recommendations to be loaded on a user interface for presentation to a user, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time; receive a user selection of one or more recommendations of the on-screen recommendation set; identify, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection; and cause, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface during the presentation of the media item recommendation set.
- 2. The system of implementation 1, wherein no removal, from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time, of a recommendation of the on-screen recommendation set that is not included in the user recommendation selection occurs from the user recommendation selection.
- 3. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to cause, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set.
- 4. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to cause the off-screen recommendation set to be updated by causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
- 5. The system of
implementation 4, wherein the user manipulation corresponds to a user request to bring on-screen on the user interface at least some of the off-screen user interface portion not visible to the user at the first time. - 6. The system of
implementation 4, wherein the user manipulation corresponds to user scrolling. - 7. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to: identify one or more new recommendations as having one or more characteristics similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and cause the off-screen recommendation set to be updated on the user interface by causing the off-screen recommendation set to be updated with the new recommendations during the presentation of the media item recommendation set.
- 8. The system of
implementation 7, wherein the one or more hardware processors are configured by machine-readable instructions to identify the new recommendations for updating the media item recommendation set based on the new recommendations being more similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection than one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection. - 9. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to cause the off-screen recommendation set to be updated on the user interface by causing, based on the user recommendation selection, one or more recommendations of the off-screen recommendation set to be replaced with one or more new recommendations during the presentation of the media item recommendation set.
- 10. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to cause the off-screen recommendation set to be updated on the user interface by causing, based on the user recommendation selection, reordering of recommendations of the off-screen recommendation set during the presentation of the media item recommendation set.
- 11. The system of implementation 1, wherein the one or more hardware processors are further configured by machine-readable instructions to: identify, as positive examples, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and generate an indication on the user interface that the new concept has been learned based on a threshold number of positive examples being identified during the presentation of the media item recommendation set.
- 12. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to cause the media item recommendation set to be loaded on the user interface by causing graphical representations of recommended media items to be loaded on the user interface for presentation to the user.
- 13. The system of implementation 12, wherein the graphical representations of the recommended media items comprises thumbnail images of the recommended media items.
- 14. The system of implementation 12, wherein the recommended media items comprises one or more of images, animations, videos, or audios.
- 15. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to receive a user request to add a new concept, the user request to add the new concept comprising a user-provided definition of the new concept, and the user-provided definition comprising one or more words describing the new concept.
- 16. The system of implementation 1, wherein the one or more hardware processors are configured by machine-readable instructions to: cause a set of concept categories to be presented on the user interface; and receive a user selection of a concept category of the concept category set, wherein the user request to add the new concept is a request to add the new concept to the user-selected concept category.
- 17. The system of implementation 16, wherein concept categories of the concept category set are represented as category tiles on the user interface.
- 18. The system of implementation 16, wherein concept categories of the concept category set comprises one or more of recently created concepts, people, places, things, times, favorites, interests, or categories provided by other users.
- 19. A method being performed by one or more hardware processors configured by machine-readable instructions that, when executed by the one or more hardware processors, perform the method, the method comprising: causing a set of media item recommendations to be loaded on a user interface for presentation to a user, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time; receiving a user selection of one or more recommendations of the on-screen recommendation set; identifying, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection; and causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface during the presentation of the media item recommendation set.
- 20. The method of
implementation 19, wherein no removal, from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time, of a recommendation of the on-screen recommendation set that is not included in the user recommendation selection occurs from the user recommendation selection. - 21. The system of
implementation 19, the method further comprising cause, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set. - 22. The method of
implementation 19, wherein causing the off-screen recommendation set to be updated comprises causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user. - 23. The method of implementation 22, wherein the user manipulation corresponds to a user request to bring on-screen on the user interface at least some of the off-screen user interface portion not visible to the user at the first time.
- 24. The method of implementation 22, wherein the user manipulation corresponds to user scrolling.
- 25. The method of
implementation 19, the method further comprising identifying one or more new recommendations as having one or more characteristics similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection, wherein causing the off-screen recommendation set to be updated on the user interface comprises causing the off-screen recommendation set to be updated with the new recommendations during the presentation of the media item recommendation set. - 26. The method of implementation 25, wherein identifying the new recommendations comprises identifying the new recommendations for updating the media item recommendation set based on the new recommendations being more similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection than one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection.
- 27. The method of
implementation 19, wherein causing the off-screen recommendation set to be updated on the user interface comprises causing, based on the user recommendation selection, one or more recommendations of the off-screen recommendation set to be replaced with one or more new recommendations during the presentation of the media item recommendation set. - 28. The method of
implementation 19, wherein causing the off-screen recommendation set to be updated on the user interface comprises causing, based on the user recommendation selection, reordering of recommendations of the off-screen recommendation set during the presentation of the media item recommendation set. - 29. The method of
implementation 19, the method further comprising: identifying, as positive examples, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and generating an indication on the user interface that the new concept has been learned based on a threshold number of positive examples being identified during the presentation of the media item recommendation set. - 30. The method of
implementation 19, wherein causing the media item recommendation set to be loaded on the user interface comprising causing graphical representations of recommended media items to be loaded on the user interface for presentation to the user. - 31. The method of implementation 30, wherein the graphical representations of the recommended media items comprises thumbnail images of the recommended media items.
- 32. The method of implementation 30, wherein the recommended media items comprises one or more of images, animations, videos, or audios.
- 33. The method of
implementation 19, the method further comprising receiving a user request to add a new concept, the user request to add the new concept comprising a user-provided definition of the new concept, and the user-provided definition comprising one or more words describing the new concept. - 34. The method of implementation 33, wherein the one or more hardware processors are configured by machine-readable instructions to: cause a set of concept categories to be presented on the user interface; and receive a user selection of a concept category of the concept category set, wherein the user request to add the new concept is a request to add the new concept to the user-selected concept category.
- 35. The method of implementation 34, wherein concept categories of the concept category set are represented as category tiles on the user interface.
- 36. The method of implementation 34, wherein concept categories of the concept category set comprises one or more of recently created concepts, people, places, things, times, favorites, interests, or categories provided by other users.
- 37. A system comprising: one or more hardware processors configured by machine-readable instructions to perform any combination of features of implementations 19-36 to the extent possible.
- 38. A method A method being performed by one or more hardware processors configured by machine-readable instructions that, when executed by the one or more hardware processors, perform the method, the method comprising any combination of features of implementations 19-36 to the extent possible.
- 39. A tangible, machine-readable, non-transitory media storing instructions that, when executed, cause a data processing apparatus to effectuate any combination of features of implementations 19-36 to the extent possible.
Claims (23)
1. A system for updating, on a user interface, recommendations based on user selection of media item recommendations provided via the user interface, the system comprising:
one or more processors programmed with instructions that, when executed by the one or more processors, cause operations comprising:
receiving a user request to add a new concept;
causing a set of media item recommendations to be loaded on a user interface for presentation to a user responsive to the user request to add the new concept, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time;
receiving a user selection of one or more recommendations of the on-screen recommendation set;
identifying, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection as recommendations that do not convey the new concept, the identified recommendations not included in the user recommendation selection being recommendations that are not selected by the user; and
causing, based on the identified recommendations not included in the user recommendation selection, the off-screen recommendation set to be updated on the off-screen user interface portion.
2. The system of claim 1 , wherein no removal, from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time, of a recommendation of the on-screen recommendation set that is not included in the user recommendation selection occurs from the user recommendation selection.
3. The system of claim 1 , wherein the operations further comprise:
causing, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set,
wherein the updating of the on-screen recommendation set comprises removing one or more recommendations from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time,
wherein the removal is configured to occur before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
4. One or more computer-readable media comprising instructions that, when executed by one or more processors, cause operations comprising:
receiving a user request to add a concept;
causing a set of media item recommendations to be loaded on a user interface for presentation to a user responsive to the user request to add the concept, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time;
receiving a user selection of one or more recommendations of the on-screen recommendation set;
identifying, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection as recommendations that do not convey the concept, the identified recommendations not included in the user recommendation selection being recommendations that are not selected by the user; and
causing, based on the identified recommendations not included in the user recommendation selection, the off-screen recommendation set to be updated on the off-screen user interface portion.
5. The media of claim 4 , wherein no removal, from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time, of a recommendation of the on-screen recommendation set that is not included in the user recommendation selection occurs from the user recommendation selection.
6. The media of claim 4 , wherein the operations further comprise:
cause, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set,
wherein the updating of the on-screen recommendation set comprises removing one or more recommendations from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time,
wherein the removal is configured to occur before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
7. The media of claim 4 , wherein the operations further comprise:
cause, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set,
wherein the updating of the on-screen recommendation set comprises reordering one or more recommendations of the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time.
8. The media of claim 4 , wherein the operations further comprise:
cause the off-screen recommendation set to be updated by causing, based on the user recommendation selection, the off-screen recommendation set to be updated on the user interface,
wherein the updating of the off-screen recommendation set is configured to occur before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
9. The media of claim 8 , wherein the user manipulation corresponds to a user request to bring on-screen on the user interface at least some of the off-screen user interface portion not visible to the user at the first time, the user request being initiated based on user scrolling.
10. The media of claim 4 , wherein the operations further comprise:
identify one or more new recommendations as having one or more characteristics similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and
cause the off-screen recommendation set to be updated on the user interface by causing the off-screen recommendation set to be updated with the new recommendations during the presentation of the media item recommendation set.
11. The media of claim 10 , wherein the operations further comprise:
identify the new recommendations for updating the media item recommendation set based on the new recommendations being more similar to one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection than one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection.
12. The media of claim 4 , wherein the operations further comprise:
cause the off-screen recommendation set to be updated on the user interface by causing, based on the user recommendation selection, one or more recommendations of the off-screen recommendation set to be replaced with one or more new recommendations during the presentation of the media item recommendation set.
13. The media of claim 4 , wherein the operations further comprise:
cause the off-screen recommendation set to be updated on the user interface by causing, based on the user recommendation selection, reordering of recommendations of the off-screen recommendation set during the presentation of the media item recommendation set,
wherein the reordering of recommendations of the off-screen recommendation set is configured to occur before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
14. The media of claim 4 , wherein the operations further comprise:
identify, as positive examples, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are included in the user recommendation selection; and
generate an indication on the user interface that the concept has been learned based on a threshold number of positive examples being identified during the presentation of the media item recommendation set.
15. The media of claim 4 , wherein the operations further comprise:
identify, as negative examples, the identified recommendations not included in the user recommendation selection; and
generate an indication on the user interface that the concept has been learned based on a threshold number of negative examples being identified during the presentation of the media item recommendation set.
16. The media of claim 4 , wherein the user request to add the concept comprises a user-provided definition of the concept, the user-provided definition comprising one or more words describing the concept.
17. The media of claim 4 , wherein the operations further comprise:
cause the media item recommendation set to be loaded on the user interface by causing graphical representations of recommended media items to be loaded on the user interface for presentation to the user,
wherein the graphical representations of the recommended media items comprise thumbnail images of the recommended media items.
18. The media of claim 4 , wherein the operations further comprise:
cause the media item recommendation set to be loaded on the user interface by causing graphical representations of recommended media items to be loaded on the user interface for presentation to the user,
wherein the recommended media items comprise one or more of images, animations, videos, or audios.
19. The media of claim 4 , wherein the operations further comprise:
cause a set of concept categories to be presented on the user interface; and
receive a user selection of a concept category of the concept category set,
wherein the user request to add the concept is a request to add the concept to the user-selected concept category.
20. The media of claim 18 , wherein concept categories of the concept category set are represented as category tiles on the user interface, and wherein concept categories of the concept category set comprises one or more of recently created concepts, people, places, things, times, favorites, interests, or categories provided by other users.
21. A method comprising:
receiving a user request related to a concept;
causing a set of media item recommendations to be loaded on a user interface for presentation to a user responsive to the user request related to the concept, the media item recommendation set comprising a set of recommendations loaded on an on-screen portion of the user interface and a set of recommendations loaded on an off-screen portion of the user interface, the on-screen user interface portion being visible to the user at a first time, and the off-screen user interface portion not being visible to the user at the first time;
receiving a user selection of one or more recommendations of the on-screen recommendation set;
identifying, based on the user recommendation selection, one or more recommendations of the on-screen recommendation set that are not included in the user recommendation selection as recommendations that do not convey the concept, the identified recommendations not included in the user recommendation selection being recommendations that are not selected by the user; and
causing, based on the identified recommendations not included in the user recommendation selection, the off-screen recommendation set to be updated on the off-screen user interface portion.
22. The method of claim 21 , wherein no removal, from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time, of a recommendation of the on-screen recommendation set that is not included in the user recommendation selection occurs from the user recommendation selection.
23. The method of claim 21 , further comprising:
causing, based on the user recommendation selection, the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time to be updated on the user interface during the presentation of the media item recommendation set,
wherein the updating of the on-screen recommendation set comprises removing one or more recommendations from the on-screen recommendation set loaded on the on-screen user interface portion visible to the user at the first time,
wherein the removal is configured to occur before receiving a user manipulation of the user interface that causes at least some of the off-screen user interface portion not visible to the user at the first time to become visible to the user.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/120,905 US20210096710A1 (en) | 2015-12-03 | 2020-12-14 | Systems and methods for updating recommendations on a user interface |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562262858P | 2015-12-03 | 2015-12-03 | |
US15/369,735 US10866705B2 (en) | 2015-12-03 | 2016-12-05 | Systems and methods for updating recommendations on a user interface in real-time based on user selection of recommendations provided via the user interface |
US17/120,905 US20210096710A1 (en) | 2015-12-03 | 2020-12-14 | Systems and methods for updating recommendations on a user interface |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/369,735 Continuation US10866705B2 (en) | 2015-12-03 | 2016-12-05 | Systems and methods for updating recommendations on a user interface in real-time based on user selection of recommendations provided via the user interface |
Publications (1)
Publication Number | Publication Date |
---|---|
US20210096710A1 true US20210096710A1 (en) | 2021-04-01 |
Family
ID=58799864
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/369,735 Active 2038-05-06 US10866705B2 (en) | 2015-12-03 | 2016-12-05 | Systems and methods for updating recommendations on a user interface in real-time based on user selection of recommendations provided via the user interface |
US17/120,905 Pending US20210096710A1 (en) | 2015-12-03 | 2020-12-14 | Systems and methods for updating recommendations on a user interface |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/369,735 Active 2038-05-06 US10866705B2 (en) | 2015-12-03 | 2016-12-05 | Systems and methods for updating recommendations on a user interface in real-time based on user selection of recommendations provided via the user interface |
Country Status (1)
Country | Link |
---|---|
US (2) | US10866705B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220343190A1 (en) * | 2021-04-22 | 2022-10-27 | Capital One Services, Llc | Systems for automatic detection, rating and recommendation of entity records and methods of use thereof |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180011615A1 (en) * | 2016-07-08 | 2018-01-11 | Netflix, Inc. | Regenerating an interactive page based on current user interaction |
US11354305B2 (en) | 2018-06-13 | 2022-06-07 | Oracle International Corporation | User interface commands for regular expression generation |
US11941018B2 (en) | 2018-06-13 | 2024-03-26 | Oracle International Corporation | Regular expression generation for negative example using context |
US11580166B2 (en) | 2018-06-13 | 2023-02-14 | Oracle International Corporation | Regular expression generation using span highlighting alignment |
US11269934B2 (en) | 2018-06-13 | 2022-03-08 | Oracle International Corporation | Regular expression generation using combinatoric longest common subsequence algorithms |
CN109582210B (en) * | 2018-12-19 | 2021-01-26 | 虚拟现实(深圳)智能科技有限公司 | Input method and system |
US11243991B2 (en) * | 2020-06-05 | 2022-02-08 | International Business Machines Corporation | Contextual help recommendations for conversational interfaces based on interaction patterns |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004187066A (en) * | 2002-12-04 | 2004-07-02 | Canon Inc | Image processor |
US20060155754A1 (en) * | 2004-12-08 | 2006-07-13 | Steven Lubin | Playlist driven automated content transmission and delivery system |
US8930178B2 (en) * | 2007-01-04 | 2015-01-06 | Children's Hospital Medical Center | Processing text with domain-specific spreading activation methods |
US8642872B2 (en) * | 2008-03-03 | 2014-02-04 | Microsoft Corporation | Music steering with automatically detected musical attributes |
US8601003B2 (en) * | 2008-09-08 | 2013-12-03 | Apple Inc. | System and method for playlist generation based on similarity data |
US8694449B2 (en) * | 2009-05-29 | 2014-04-08 | Board Of Trustees Of Michigan State University | Neuromorphic spatiotemporal where-what machines |
US20110225496A1 (en) * | 2010-03-12 | 2011-09-15 | Peter Jeffe | Suggested playlist |
US9785883B2 (en) * | 2012-04-27 | 2017-10-10 | Excalibur Ip, Llc | Avatars for use with personalized generalized content recommendations |
US8996530B2 (en) * | 2012-04-27 | 2015-03-31 | Yahoo! Inc. | User modeling for personalized generalized content recommendations |
US10318572B2 (en) * | 2014-02-10 | 2019-06-11 | Microsoft Technology Licensing, Llc | Structured labeling to facilitate concept evolution in machine learning |
US9613058B2 (en) * | 2014-12-17 | 2017-04-04 | Adobe Systems Incorporated | Neural network image curation control |
US9336483B1 (en) * | 2015-04-03 | 2016-05-10 | Pearson Education, Inc. | Dynamically updated neural network structures for content distribution networks |
US10331675B2 (en) * | 2015-08-06 | 2019-06-25 | Clarifai, Inc. | Systems and methods for learning new trained concepts used to retrieve content relevant to the concepts learned |
US10831762B2 (en) * | 2015-11-06 | 2020-11-10 | International Business Machines Corporation | Extracting and denoising concept mentions using distributed representations of concepts |
-
2016
- 2016-12-05 US US15/369,735 patent/US10866705B2/en active Active
-
2020
- 2020-12-14 US US17/120,905 patent/US20210096710A1/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220343190A1 (en) * | 2021-04-22 | 2022-10-27 | Capital One Services, Llc | Systems for automatic detection, rating and recommendation of entity records and methods of use thereof |
Also Published As
Publication number | Publication date |
---|---|
US20170161631A1 (en) | 2017-06-08 |
US10866705B2 (en) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210096710A1 (en) | Systems and methods for updating recommendations on a user interface | |
EP3341863B1 (en) | Suggesting object identifiers to include in a communication | |
KR101921816B1 (en) | User interactions using digital content | |
US10469275B1 (en) | Clustering of discussion group participants | |
US10775968B2 (en) | Systems and methods for analyzing visual content items | |
US20160103884A1 (en) | Question answer system using phyisical distance data | |
US20120246302A1 (en) | System and methodology for creating and using contextual user profiles | |
US9710563B2 (en) | Search engine analytics and optimization for media content in social networks | |
US10311063B2 (en) | Context-based object retrieval in a social networking system | |
WO2015195663A1 (en) | Search based on combining user relationship datauser relationship data | |
CN109643323B (en) | Selecting content items using reinforcement learning | |
US20160078191A1 (en) | Real-time biometric monitoring and alert generation | |
KR20160004405A (en) | Tag suggestions for images on online social networks | |
US10832142B2 (en) | System, method, and recording medium for expert recommendation while composing messages | |
US20200133641A1 (en) | Machine learning models for customization of a graphical user interface | |
KR20200102500A (en) | Method, apparatus and selection engine for classification matching of videos | |
US10332161B2 (en) | Retrieving reviews based on user profile information | |
US9331973B1 (en) | Aggregating content associated with topics in a social network | |
US8935299B2 (en) | Identifying relevant data for pages in a social networking system | |
US20180276559A1 (en) | Displaying feed content | |
US12112363B2 (en) | Property data aggregation and evaluation tool | |
US9489470B1 (en) | System and method for generating content comparison reports | |
US20160364996A1 (en) | Matching learning content to learners | |
US20210397314A1 (en) | Application library and page hiding | |
US20160117693A1 (en) | Digital maturity assessment for transportation providers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: CLARIFAI, INC., NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROGERS, JOHN;ITO, KEITH;JONES, MARSHALL;AND OTHERS;SIGNING DATES FROM 20160210 TO 20160318;REEL/FRAME:054638/0937 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: APPLICATION DISPATCHED FROM PREEXAM, NOT YET DOCKETED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |