Examples of the present disclosure describe systems and methods for improving the recommendations provided to a user by a recommendation system using viewed content as implicit feedback. In some aspects, attention models are created/updated to infer the user attention of a user that has viewed or is viewing content on a computing device. The attention model may be used to convert inferences of user attention into inferences of user satisfaction with the viewed content. The inferences of user satisfaction may be used to generate inferences of fatigue with the viewed content. The inferences of user satisfaction and inferences of user fatigue may then be used as implicit feedback to improve the content selection, content triggering and/or content presentation by the recommendation system. Other examples are also described.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A system for modeling user satisfaction, the system comprising: at least one processor; and memory coupled to the at least one processor, the memory comprising computer executable instructions that, when executed by the at least one processor, performs a method comprising: receiving a first viewing session data; determining at least a first content item in the first viewing session data, wherein the at least a first content item has a first content type; determining a first aggregated display time for the first content type; determining a first content density for the first content type; generating a first viewing time based on the first aggregated display time for the first content type and the first content density for the first content type; determining a satisfaction value for the first content type; and updating a satisfaction model based on the satisfaction value. 2. The system of claim 1, wherein first session viewing data comprises one or more viewports, the one or more viewports comprising at least a portion of one or more content items. 3. The system of claim 1, wherein determining the first aggregated display time comprises aggregating one or more content items in the viewing session data and attributing a duration to each of the aggregated one or more content items. 4. The system of claim 3, wherein an attributed duration of the one or more content items determines a display time for one or more content items, wherein the display time is based on the visible area of the one or more content items within the one or more viewports. 5. The system of claim 4, wherein the visible area excludes occluded areas within the viewing session data. 6. The system of claim 1, wherein determining a first content density comprises determining at least one of: the number of characters within the first content item and the size in pixels of the first content item. 7. The system of claim 1, wherein the first viewing time is used to update an attention value. 8. The system of claim 1, wherein the satisfaction model is one of: a rule-based model, a machine-learned regressor, and a machine-learned classifier. 9. The system of claim 1, further comprising: receiving a second viewing session data; determining at least a second content item in the second viewing session data, wherein the at least a second content item has the first content type; determining a second aggregated display time for the first content type; determining a second content density for the first content type; generating a second viewing time based on the aggregated display time for the first content type and the second content density for the first content type; comparing the first viewing time to the second viewing time; and determining a fatigue value based at least on the comparison. 10. The system of claim 9, wherein the fatigue value is further based at least on determining whether the at least a first content item is different from the at least a second content item. 11. The system of claim 10, wherein the fatigue model is updated based on the fatigue value. 12. The system of claim 10, further comprising: optimizing a presentation of the first content type based upon at least one of: the satisfaction value and the fatigue value. 13. The system of claim 10, wherein optimizing a presentation of the first content type comprises prioritizing the first content type by at least one of: content type selection, content type triggering, and content type ranking. 14. A system for providing recommendations using viewable content, the system comprising: a processor; a recommendation component; and a memory coupled to the processor, the memory comprising computer executable instructions that, when executed by the processor, performs a method comprising: receiving viewing session data; creating an user attention model from the received viewing session data; using the attention model, creating a satisfaction model for the received viewing session data; selecting a content selection related to the received viewing session data; using the satisfaction model, prioritizing as prioritized content a portion of content from at least one of the viewing session data and the content selection related to the viewing session data; and integrating the prioritized content with the recommendation component. 15. The system of claim 14, further comprising: using the satisfaction model, creating a fatigue model for the received viewing session data. 16. The system of claim 14, wherein selecting a content selection comprises: determining a criteria in the received viewing session data, wherein the criteria is at least one of: a content type, a time, a location, a user, and a user group; and selecting content with the criteria. 17. The system of claim 14, wherein the prioritized content is prioritized based on at least one of: a content of the content selection and a ranking of the content selection. 18. The system of claim 14, wherein the recommendation component provides recommendations based at least upon the prioritized content. 19. The system of claim 14, wherein the recommendation component updates a profile based upon at least one of the attention model, the satisfaction model, and the prioritized content. 20. A method for providing recommendations using viewable content, the method comprising: receiving a first viewing session data; determining at least a first content in the first viewing session data, wherein the first content has a first content type; determining a first aggregated display time for the first content type; generating a first viewing time based on the first aggregated display time for the first content type; determining a satisfaction value for the first content type; receiving a second viewing session data; determining at least a second content in the second viewing session data, wherein the second content has the first content type; determining a second aggregated display time for the first content type; generating a second viewing time based on the second aggregated display time for the first content type; comparing the first viewing time and the second viewing time; determining a fatigue value based at least on the comparison; and providing a recommendation based at least in part on at least one of the satisfaction value and the fatigue value.