Method to recommend content based on content usage logs
Patent Information
- Application Number
- KR1020240038083
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-12-21
- Filing Date
- 2024-03-19
- Publication Date
- 2026-09-09
- Estimated Expiration
- 2044-03-19
Smart Images

Figure 112024030955361-PAT00002_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to a method for recommending content to a user based on the user's activity history regarding the use of content within a content platform. Background Technology
[0003] Online music platforms provide music streaming services that allow consumers to listen to the music they want in real time, enabling consumers to listen to a variety of music through the online platform.
[0004] Online music platforms can recommend music to consumers based on their musical preferences, even without the consumer separately setting up a playlist. However, since conventional online music platforms identify consumers' preferences simply based on the currently playing music, consumer satisfaction with the recommended music is not high.
[0005] To increase consumer satisfaction with recommended music, it is necessary to consider both the consumer's current situation and musical preferences, rather than simply recommending music based on the currently played track. Prior art literature
[0007] Republic of Korea Published Patent Application No. 10-2022-0072389 (June 2, 2022) The problem to be solved
[0008] The present invention aims to recommend content to a user based on the user's situation and the user's activity history regarding the use of content within a content platform.
[0009] The objects of the present invention are not limited to those mentioned above, and other unmentioned objects and advantages of the present invention may be understood from the following description and will be more clearly understood by the embodiments of the present invention. Furthermore, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof set forth in the claims. means of solving the problem
[0011] A method for recommending content based on a content usage log according to an embodiment of the present invention for achieving the aforementioned purpose includes the steps of: collecting preference information from a user account; providing basic content to the user account based on the preference information; collecting user log data and context information corresponding to the basic content; and determining recommended content based on the user log data and context information. Effects of the invention
[0013] The present invention has the effect of increasing user satisfaction with recommended content by recommending content to the user based on the user's situation and the user's activity history regarding the use of content within a content platform.
[0014] In addition to the effects described above, the specific effects of the present invention are described together with the specific details for implementing the invention below. Brief explanation of the drawing
[0016] FIG. 1 is a drawing illustrating a content recommendation system based on content usage logs according to an embodiment of the present invention. FIG. 2 is a flowchart illustrating a method for recommending content based on a content usage log according to an embodiment of the present invention. FIG. 3 is a diagram illustrating the reinforcement learning process of the neural network model of the present invention. FIG. 4 is a drawing illustrating an example of specifying lifestyle patterns based on a clustering technique. FIG. 5 is a screen illustrating an exemplary user terminal that outputs the results of analyzing user content preferences. Figure 6 is a flowchart illustrating a method for recommending music to a user account. FIG. 7 is a diagram illustrating an example of identifying a user's musical taste based on a clustering technique. Specific details for implementing the invention
[0017] The aforementioned objectives, features, and advantages are described in detail below with reference to the attached drawings, thereby enabling those skilled in the art to easily implement the technical concept of the present invention. In describing the present invention, detailed descriptions of known technologies related to the present invention are omitted if it is determined that such descriptions would unnecessarily obscure the essence of the invention. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the attached drawings. In the drawings, the same reference numerals are used to indicate the same or similar components.
[0018] In this specification, terms such as "first," "second," etc. are used to describe various components, but these components are not limited by these terms. These terms are used merely to distinguish one component from another, and unless specifically stated otherwise, the first component may be the second component.
[0019] Furthermore, where it is stated in this specification that one component is "connected," "coupled," or "connected" to another component, it should be understood that while the components may be directly connected or connected to each other, another component may be "interposed" between each component, or each component may be "connected," "coupled," or "connected" through another component.
[0020] Additionally, singular expressions used in this specification include plural expressions unless the context clearly indicates otherwise. In this application, terms such as "composed of" or "comprising" should not be interpreted as necessarily including all of the various components or steps described in the specification, and should be interpreted as meaning that some of the components or steps may not be included, or that additional components or steps may be included.
[0021] Additionally, in this specification, "A and / or B" means A, B, or A and B unless specifically stated otherwise, and "C to D" means C or more and D or less, unless specifically stated otherwise.
[0022] The present invention relates to a method for recommending content to a user based on the user's activity history of using content within a content platform. Hereinafter, a method for recommending content based on content usage logs according to one embodiment will be specifically described with reference to FIGS. 1 to 7.
[0023] FIG. 1 is a diagram illustrating a content recommendation system based on content usage logs according to one embodiment of the present invention.
[0024] FIG. 2 is a flowchart illustrating a method for recommending content based on a content usage log according to an embodiment of the present invention.
[0025] Figure 3 is a diagram illustrating the reinforcement learning process of the neural network model of the present invention.
[0026] Figure 4 is a diagram illustrating an example of specifying lifestyle patterns based on a clustering technique.
[0027] Figure 5 is a screen illustrating an exemplary user terminal that outputs the results of analyzing user content preferences.
[0028] Figure 6 is a flowchart illustrating a method for recommending music to a user account.
[0029] Figure 7 is a diagram illustrating an example of identifying a user's musical taste based on a clustering technique.
[0030] Referring to FIG. 1, a content provision platform (10) (hereinafter, platform) may include a server (100) and a user terminal (200). However, the platform (10) illustrated in FIG. 1 is according to one embodiment, and its components are not limited to the embodiment illustrated in FIG. 1, and some components may be added, changed, or deleted as needed.
[0031] The user terminal (200) may be any device capable of wireless communication, and for example, the user terminal (200) may include a smartphone, laptop, tablet, PC, or wearable device.
[0032] Referring to FIG. 2, a method for recommending content based on content usage logs according to an embodiment of the present invention may include the steps of: collecting preference information from a user account (S100); providing basic content to a user account based on preference information (S200); collecting user log data and context information corresponding to the basic content (S300); and determining recommended content based on user log data and context information (S400).
[0033] Each step illustrated in FIG. 2 can be performed by the server (100) illustrated in FIG. 1, and the server (100) may include at least one physical element among ASICs (application specific integrated circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays), controller, processor, microprocessor, and micro-controllers to perform the operation described below.
[0034] However, the method of recommending content based on the content usage log illustrated in FIG. 2 is according to an embodiment, and the steps constituting the invention are not limited to the embodiment illustrated in FIG. 2, and some steps may be added, changed, or deleted as necessary.
[0035] Each step illustrated in Fig. 2 will be explained in detail below.
[0036] The server (100) can collect preference information from the user account (S100).
[0037] The server (100) can collect user preference information from a user terminal (200) to which a user account is logged in. In other words, the server (100) can collect user preference information by outputting a plurality of selection items already stored in the user terminal (200) and receiving a signal generated when the user selects at least one item from the user terminal (200).
[0038] At this time, the selection items displayed on the user terminal (200) to collect preference information may vary depending on the type of content provided by the platform (10), for example, the selection items may be singers, directors, actors, genres, writers, music, movies, and dramas preferred by the user.
[0039] For example, when the platform (10) is a platform (10) that provides music, the server (100) outputs selection items such as singer, genre, music, composer, and lyricist to the user terminal (200), and can collect user preference information based on the items selected by the user.
[0040] The server (100) can provide basic content to the user account based on preference information (S200).
[0041] Basic content may be content that the server (100) provides to the user in priority based solely on preference information collected previously. More specifically, the server (100) may select content that has a similarity to preference information greater than or equal to a threshold value and provide it to the user account.
[0042] If the user's preference information is a male singer in his 30s and a song released in the 2000s, the server (100) can select multiple contents that have a similarity to the preference information greater than or equal to a threshold value and provide them to the user account.
[0043] The server (100) can collect user log data and situation information corresponding to the basic content (S300).
[0044] User log data may be activity data performed by the user within the platform (10) (e.g., a list of played content, a list of repeated content, a search history).
[0045] Context information may be various information received from a user terminal (200) to which a user account is logged in, for example, context information may include at least one of the location, movement speed, weather, and lifestyle pattern of the user terminal (200).
[0046] The server (100) can determine recommended content based on user log data and context information (S400).
[0047] In one example, the server (100) can determine recommended content using a reinforcement learning model.
[0048] Figure 3 illustrates the structure of a personalized neural network model, and the server (100) can determine the content output from the neural network model as recommended content by inputting log data and context information into the personalized neural network model.
[0049] At this time, the personalized neural network model can perform a task of recommending content based on context information, and for this purpose, it can be reinforced learning by the server (100). This personalized neural model can be implemented as various models used in value-based or policy-based reinforcement learning.
[0050] Referring to Figure 3, reinforcement learning can be implemented by defining the environment, agent, state, action, and reward. Here, the environment may refer to the space or background where learning takes place, and the agent may be the entity that takes action by interacting with the environment. The state may refer to the situation of a given agent within the environment, and the action may refer to the decision made by the agent in a given environment. The reward refers to the reward resulting from the agent's action in the current environment, and reinforcement learning may be an algorithm that causes the agent to act in a way that maximizes the reward.
[0051] In this structure, the personalized neural network model of the present invention can function as an agent, and the server (100) has a state value (S t ) and reward value (R t) is provided to a personalized neural network model, and the personalized neural network model provides its own behavior (A t Compensation value (R) according to ) t The algorithm can be configured to maximize ). Since the implementation method of reinforcement learning is already known in the relevant technical field, further detailed explanation will be omitted.
[0052] Referring again to FIG. 3, in order for a personalized neural network model to perform a content recommendation task, the server (100) receives log data and situational information in the reinforcement learning stage as a state value (S t It can be set to ). The personalized neural network model can output recommended content as an action value (At) based on log data and context information, and the server (100) can set a reward value (Rt) according to the user's interaction data regarding the recommended content output from the personalized neural network model.
[0053] At this time, the interaction data can be determined according to various user commands that can express the user's preference for the content. These user commands can be input through the interface of an application running on the user terminal (200).
[0054] For example, when a positive interface (e.g., clicking the Like tab, repeat playback tab) is input by a user regarding recommended content, the server (100) can assign a positive reward value (Rt) to the content.
[0055] For example, if a negative interface (e.g., skip, stop tab click) is entered by a user regarding recommended content, the server (100) can assign a negative reward value (Rt) to the content.
[0056] This reinforcement learning can be performed per user account, and depending on the iteration of the learning, the neural network model provides a reward value (R tRecommended content can be determined so that ) is maximized, that is, so that the number of positive interaction inputs from users regarding the recommended content increases.
[0057] Meanwhile, the server (100) can calculate the user's content preferences based on situational information.
[0058] First, the server (100) collects numerical data in which situational elements such as GPS, speed, illuminance, time, acceleration, weather, gyro, and season are quantified to specify situational information, and can select valid data from the numerical data based on a clustering technique.
[0059] Figure 4 illustrates the result of dividing multiple numerical data into multiple clusters based on a clustering technique and selecting the centroid of each cluster.
[0060] To be more specific, the server (100) can collect numerical data of time, GPS, and illuminance.
[0061] To perform a clustering technique, the server (100) can calculate the similarity between numerical data and create multiple clusters by collecting numerical data whose similarity is within a preset threshold value. At this time, methods capable of calculating physical distances between numerical data, such as Euclidean distance, cosine distance, Jaccard distance, and Manhattan distance, may be applied as methods for calculating similarity.
[0062] Next, the server (100) can select a representative value representing a cluster within a plurality of generated clusters. At this time, the server (100) can select a representative value for each cluster based on a partitioning method, k-means, k-modoid, etc.
[0063] As a result, the server (100) can determine the lifestyle pattern (whether it is at work or at home) of a user account based on a plurality of cluster-specific representative values, and can also identify situational information such as exercise and commuting based on a clustering technique using various numerical data.
[0064] In this invention, numerical data of three elements were utilized to perform the clustering technique, but the method is not limited thereto, and multiple or more numerical data can be freely utilized in the clustering technique.
[0065] Next, the server can calculate the user's content preferences based on the previously specified situational information.
[0066] Referring to FIG. 5, when the current user’s lifestyle pattern of situation information is ‘going to work,’ the user mainly uses content with a ballad and R&B / Soul genre and a calm atmosphere, and the server (100) outputs these results to the user terminal (200) so that the user can visually check their content preferences.
[0067] Meanwhile, users can enjoy using the platform (10) by sharing their content preferences with other users within the platform (10).
[0068] In one example, the server (100) can identify one lifestyle pattern by comparing the location of the user terminal (200) with a path defined for a plurality of preset lifestyle patterns.
[0069] Referring to FIG. 6, first, the server (100) can calculate a movement path based on situation information (S500).
[0070] More specifically, the server (100) can calculate the user's location information and / or movement path on an hourly basis based on situational information collected from various sensors (e.g., GPS, accelerometer, light sensor, gravity sensor, rotation sensor, magnetic field sensor) included in the user terminal (200).
[0071] Next, the server (100) can calculate the similarity between a plurality of previously stored lifestyle patterns and movement paths (S600).
[0072] In other words, the server (100) may store multiple lifestyle patterns that are repeated in the user's daily life, such as going to work (a), going home (b), and exercising (c), and the server (100) can calculate the similarity between the lifestyle patterns and the movement path.
[0073] The server (100) can determine whether the similarity is greater than or equal to a threshold value (S700). If the similarity is greater than or equal to a threshold value, the server (100) can identify a lifestyle pattern in which the similarity is greater than or equal to a threshold value. Specifically, the server (100) can identify lifestyle pattern c when the similarity between the user's movement path and lifestyle patterns (a, b, c) is calculated to be 12%, 35%, and 95%, respectively, and the similarity threshold value is 90%.
[0074] The server (100) can recommend a sound source corresponding to the lifestyle pattern to the user account by identifying the lifestyle pattern (S900).
[0075] In this case, recommended music may be selected from playlists created by the user, or music suitable for the corresponding lifestyle pattern may be selected by a pre-trained neural network model and recommended to the user's account.
[0076] In addition, by using a clustering technique as shown in Fig. 7 to identify the user's musical taste, sound sources corresponding to the user's musical taste can be recommended to the user's account.
[0077] To be more specific, first, the server (100) collects numerical data in which the user's lifestyle pattern, mood, and BPM elements are quantified, and can identify the user's musical taste by selecting valid data from the numerical data based on a clustering technique. Next, the server (100) can recommend a corresponding sound source to the user account based on the identified user's musical taste.
[0078] At this time, the clustering elements can be formed in various ways, such as release date, chart ranking, year, and genre, and since the method by which the server (100) performs the clustering technique has been described above, a detailed explanation will be omitted.
[0079] Meanwhile, when the similarity between multiple lifestyle patterns and movement paths is all below a reference value, the server (100) determines it as a special situation and can recommend a sound source corresponding to the situation information (S800).
[0080] For example, when the similarity between the user's movement path and lifestyle pattern (a, b, c) is calculated to be 12%, 35%, and 5%, respectively, and the similarity threshold value is 90%, the server (100) determines that it is a special situation (e.g., travel, business trip) and can recommend a sound source corresponding to various situational information such as weather and user emotions.
[0081] At this time, the server (100) can recommend music to a user account by using a pre-supervised neural network model that receives lifestyle pattern and / or situation information from a user terminal (200) and outputs a genre corresponding thereto. Specifically, the server (100) can input situation information into a pre-trained neural network model and recommend music to a user account by extracting a music source corresponding to the genre output from the neural network model from a DB.
[0082] At this time, weather information can be collected from a user terminal (200), and user emotion information can be determined based on data collected by a wearable device worn on the user's body.
[0083] As described above, the present invention has the effect of increasing user satisfaction with recommended content by recommending content to the user based on the user's situation and the user's activity history of using content within the content platform (10).
[0084] Although the present invention has been described above with reference to the illustrated drawings, the present invention is not limited by the embodiments and drawings disclosed in this specification, and it is obvious that various modifications can be made by a person skilled in the art within the scope of the technical concept of the present invention. Furthermore, even if the effects of the configuration of the present invention were not explicitly described while explaining the embodiments of the present invention above, it is natural to acknowledge that the effects predictable by said configuration should also be recognized.
Claims
Claim 1 A method for recommending content based on content usage logs, comprising: a step of a server collecting preference information from a user account; a step of the server providing basic content to the user account based on the preference information; a step of the server collecting user log data and context information corresponding to the basic content; a step of the server calculating a similarity between a pre-set lifestyle pattern path and a movement path calculated based on the context information; a step of the server determining recommended content corresponding to the lifestyle pattern when the similarity is greater than a reference value; and a step of the server determining recommended content corresponding to the user log data and context information when the similarity is less than or equal to the reference value. Claim 2 In claim 1, the step of collecting preference information is a method of recommending content based on a content usage log, wherein the step of collecting preference information is a step of collecting any one of a preferred singer, director, actor, genre, author, music, movie, or drama from the user account. Claim 3 A method for recommending content based on content usage logs, wherein the step of providing basic content is a step of selecting content that has a similarity to the preference information greater than or equal to a threshold value and providing it to the user account. Claim 4 In claim 1, the above situation information is a method of recommending content based on a content usage log including at least one of location, movement speed, weather, and lifestyle pattern received from a user terminal where the user account is logged in. Claim 5 A method for recommending content based on content usage logs according to claim 1, wherein the determining step comprises inputting the user log data and the situation information into a personalized neural network model and determining the content output from the neural network model as the recommended content. Claim 6 In claim 5, the personalized neural network model uses the user log data and context information as state values and the recommended content as action values, and recommends content based on content usage logs that are reinforced by a reward value assigned according to the user's interaction data with the recommended content. Claim 7 delete
Citation Information
Patent Citations
System and method of operating platform for providing customized contents
KR1020220169613A
System and method for recommending music
KR102212638B1
Automatic determination of and reaction to mobile user routine behavior based on geographical and repetitive pattern analysis
US10911898B2
Systems and methods for user personalization and recommendations
US20230377023A1