Playlist generation method and apparatus, device, medium, product
By constructing a directed graph structure using knowledge graphs and utilizing the clustering and similarity analysis of song profile tags, playlists are automatically generated. This solves the problem in existing technologies where playlist generation struggles to balance quality and quantity, achieving efficient and personalized playlist generation and improving playlist quality and user experience.
Patent Information
- Application Number
- CN202111521136.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-13
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2041-12-13
AI Technical Summary
Existing playlist generation technologies struggle to balance quality and quantity, and themed playlists lack personalized content and are slow to update, failing to meet the needs of different users.
By constructing a directed graph structure using knowledge graphs, and through clustering and similarity analysis of song profile tags, playlists are automatically generated, semantic relationships between playlists and songs are established, and the intelligent generation of themed playlists is realized.
It enables efficient and personalized playlist generation, improves playlist quality and response efficiency, enhances user experience, and demonstrates the scale advantages of data mining.
Smart Images

Figure CN114201638B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of music information retrieval, and in particular to a playlist generation method and a corresponding device, computer equipment, computer readable storage medium, and computer program product. BACKGROUND
[0002] Currently, the production of playlists in online music services is mainly made by professional editors or users, where the playlists produced by editors have high quality but limited output, and the playlists produced by users are numerous but have uneven quality. It can be seen that the current playlist production mechanism cannot meet the needs of both quality and quantity, and the output efficiency is low.
[0003] And the theme playlist is a special playlist, where the songs must meet the unique meaning of the current theme to evoke user resonance. The meaning of the theme playlist, such as meeting a certain scene, a certain state, a certain style, a certain emotion, a certain rhythm, etc., has higher requirements for the quality of the content, so it is usually produced and maintained by professional editors. Unfortunately, the theme playlist is a standardized playlist, and the songs contained therein are also uniformly configured. For different users, the songs contained in the theme playlist are basically the same, and do not have the personalized content display function of thousands of people with different faces. At the same time, because the theme playlist is maintained manually, the data is updated slowly, and the songs of the current theme do not consider the user side data, and the result may not completely satisfy the user.
[0004] In summary, the playlist generation technology in the prior art is difficult to meet the needs of both quality and quantity of the playlist, and there is still room for exploration in expressing user personalized preferences. Therefore, the present applicant has made corresponding exploration. SUMMARY
[0005] The primary purpose of the present application is to solve at least one of the above problems and provide a playlist generation method and a corresponding device, computer equipment, computer readable storage medium, and computer program product.
[0006] To meet the various purposes of the present application, the present application adopts the following technical solutions:
[0007] A playlist generation method provided to adapt to one of the purposes of the present application includes the following steps:
[0008] Obtain a music library knowledge graph, which is structured as a directed graph according to semantic relevance, and stores the image tags of different songs in the music library in a plurality of entity nodes in the directed graph structure;
[0009] The portrait labels of the entity nodes in the knowledge graph are clustered, and a plurality of playlists corresponding to different combinations of portrait labels are generated according to part of the portrait labels in the clustering results;
[0010] Portrait information of songs associated with the part of the portrait labels is obtained from the knowledge graph, and portrait information of the playlists is determined according to the obtained portrait information of the songs; the portrait information includes a plurality of the portrait labels that are semantically associated with the corresponding playlists and songs;
[0011] According to the similarity between the portrait information of the playlists and the portrait information of the songs, the membership relationship between the playlists and the songs is labeled.
[0012] In an extended embodiment, before the step of obtaining the knowledge graph of the music library, the following steps are included:
[0013] A knowledge graph corresponding to the music library is created;
[0014] The portrait labels of each song in the music library are determined according to the associated information of the song, each song and each portrait label are stored as entity nodes in the knowledge graph, and the content information of each song is stored as an attribute item in the entity node; wherein the associated information includes keywords in the song description text, keywords in the song attribute data, label words in the song annotation information, and label words in the annotation information of the historical playlists to which the song belongs;
[0015] The connection relationship between the entity nodes and the attribute items in the knowledge graph is determined according to the semantic information contained in the associated information of each song.
[0016] In a deepened embodiment, the portrait labels of the entity nodes in the knowledge graph are clustered, and a plurality of playlists corresponding to different combinations of portrait labels are generated according to part of the portrait labels in the clustering results, including the following steps:
[0017] The number of times each portrait label in the knowledge graph is referenced by a song is counted as the usage frequency;
[0018] Part of the portrait labels with a usage frequency exceeding a preset threshold are selected as target portrait labels;
[0019] A plurality of playlists corresponding to different combinations of target portrait labels are generated according to any number of combinations of the target portrait labels;
[0020] Each combination of target portrait labels is labeled as part of the portrait information of the corresponding playlist of the combination.
[0021] In the deepened embodiment, image information of a song associated with the partial image label is obtained from the knowledge graph, and image information of the playlist is determined according to the obtained image information of the song, including the following steps:
[0022] An entity node corresponding to the song containing all image labels in the image label combination is queried from the knowledge graph, and all image labels corresponding to each song are obtained to constitute image information of the song;
[0023] The use frequency of each image label in the image information of the queried song is counted, and an image label set with a use frequency exceeding a preset threshold is determined;
[0024] The image label set is constructed as image information of a playlist corresponding to the image label combination.
[0025] In the deepened embodiment, the membership relationship between the playlist and the song is labeled according to the similarity between the image information of the playlist and the image information of the song, including the following steps:
[0026] The image information of the playlist and the image information of the song are respectively converted into corresponding playlist image vectors and song image vectors;
[0027] The data similarity between each playlist image vector and each song image vector corresponding thereto is calculated to obtain a similarity sequence corresponding to each playlist image vector, in which the similarity values between all song image vectors and the playlist image vector are stored;
[0028] Song image vectors with similarity values exceeding a preset threshold are filtered out from the similarity sequence corresponding to each playlist image vector, and target songs corresponding to the song image vectors are determined;
[0029] A mapping relationship data between the playlist corresponding to each playlist image vector and the target song corresponding to the playlist image vector is established.
[0030] In the extended embodiment, after the step of obtaining the music library knowledge graph, the following steps are included:
[0031] In response to a playlist recommendation request triggered by a user, behavior data of the user is obtained, and user historical access songs associated with the behavior data are determined;
[0032] Common image labels of the user historical access songs are extracted from the knowledge graph to construct image information of the user;
[0033] One or more exclusive playlists of the user are created according to any image label combination in the image information, and each exclusive playlist is associated with a song having the image label combination thereof;
[0034] push the private playlist to the user in response to the playlist recommendation request.
[0035] A playlist generation device is provided for one of the purposes of the present application, comprising a graph calling module, a playlist creating module, a portrait processing module, and a similarity matching module, wherein the graph calling module is configured to obtain a music library knowledge graph, the knowledge graph being structured as a directed graph according to semantic relevance, and in the directed graph, portrait labels of different songs in the music library are stored in a plurality of entity nodes; the playlist creating module is configured to cluster the portrait labels of the entity nodes in the knowledge graph, and generate a plurality of playlists corresponding to different combinations of portrait labels according to part of the portrait labels in the clustering result; the portrait processing module is configured to obtain portrait information of songs associated with the part of the portrait labels from the knowledge graph, and determine the portrait information of the playlists according to the obtained portrait information of the songs; the portrait information includes a plurality of portrait labels that are semantically associated with the corresponding playlists and songs; and the similarity matching module is configured to label the membership relationship between the playlists and the songs according to the similarity between the portrait information of the playlists and the portrait information of the songs.
[0036] In an extended embodiment, the playlist generation device of the present application comprises:
[0037] A graph creating module is configured to create a knowledge graph corresponding to the music library.
[0038] A graph representation module is configured to determine a portrait label of each song in the music library according to associated information of the song, store each song and each portrait label as an entity node in the knowledge graph, and store content information of each song as an attribute item in the entity node; wherein the associated information includes keywords in a song description text, keywords in song attribute data, label words in song annotation information, and label words in annotation information of a historical playlist to which the song belongs.
[0039] A graph association module is configured to determine a connection relationship between entity nodes and between attribute items in the knowledge graph according to semantic information contained in the associated information of each song.
[0040] In a deepened embodiment, the playlist creating module comprises a word frequency counting submodule, a label filtering submodule, a playlist derivation submodule, and a portrait enrichment submodule, wherein the word frequency counting submodule is configured to count the number of times each portrait label in the knowledge graph is referenced by a song as a usage frequency; the label filtering submodule is configured to filter out part of the portrait labels whose usage frequency exceeds a preset threshold as target portrait labels; the playlist derivation submodule is configured to generate a plurality of playlists corresponding to any number of combinations of the target portrait labels; and the portrait enrichment submodule is configured to label each combination of the target portrait labels as part of the portrait information of the corresponding playlist of the combination.
[0041] In a deepened embodiment, the image processing module comprises: a label query sub-module configured to query, from the knowledge graph, songs containing all image labels corresponding to the entity nodes, obtain all image labels corresponding to each song, and construct image information of the song; a label optimization sub-module configured to count the frequency of each image label in the image information of the queried song, and determine an image label set whose frequency exceeds a preset threshold; and a label implantation sub-module configured to construct the image label set as image information of a playlist corresponding to the image label combination.
[0042] In a deepened embodiment, the similarity matching module comprises: a vector conversion sub-module configured to convert the image information of the playlist and the image information of the song into corresponding playlist image vectors and song image vectors; a similarity calculation sub-module configured to calculate the data similarity between each playlist image vector and each song image vector corresponding to the playlist image vector, obtain a similarity sequence corresponding to each playlist image vector, and store the similarity values between all song image vectors and the playlist image vector in the sequence; a song screening sub-module configured to screen out song image vectors whose similarity values exceed a preset threshold from the similarity sequence corresponding to each playlist image vector, and determine target songs corresponding to the song image vectors; and an association mapping sub-module configured to establish a mapping relationship between the playlist corresponding to each playlist image vector and the target songs corresponding to the playlist image vector.
[0043] In an extended embodiment, the playlist generation device comprises: a request response module configured to obtain behavior data of a user and determine user historical access songs associated with the behavior data in response to a playlist recommendation request triggered by the user; a user image module configured to extract common image labels of the user historical access songs from the knowledge graph, and construct image information of the user; a playlist production module configured to create one or more exclusive playlists of the user according to any image label combination in the image information, and associate each exclusive playlist with songs having the image label combination of the exclusive playlist; and a playlist pushing module configured to push the exclusive playlists to the user to respond to the playlist recommendation request.
[0044] A computer device is provided to adapt to one of the purposes of the present application, comprising a central processing unit and a memory, the central processing unit is configured to call and run a computer program stored in the memory to execute the steps of the playlist generation method described in the present application.
[0045] A computer readable storage medium is provided to adapt to another purpose of the present application, which stores a computer program implemented according to the playlist generation method in the form of computer readable instructions, when the computer program is called and run by a computer, the steps included in the method are executed.
[0046] A computer program product is provided according to another object of the present application, comprising computer programs / instructions which, when executed by a processor, implement the steps of the method described in any one of the embodiments of the present application.
[0047] The advantages of the present application over the prior art are as follows: the present application realizes the representation of the semantic association relationship between songs in the music library by means of the directed graph structure of the knowledge graph, and on this basis, the playlist is created based on part of the portrait tags according to the clustering results, the songs are obtained according to the portrait tags, the portrait tags of the playlist are perfected according to the portrait tags of the songs, the interactive fusion between the playlist and the songs based on the portrait information is realized, and finally each playlist is obtained, and the mapping relationship between the playlist and the semantically associated songs is established according to the semantic association between the portrait information of the playlist and the portrait information of each song. Since the portrait tags in the portrait information of each playlist are semantically associated, the portrait information of each playlist actually represents a certain aspect of the theme. Therefore, on the one hand, the purpose of intelligently generating a theme playlist by using the knowledge graph of the music library is achieved, and the whole process is automated without human intervention, and the playlist production can be efficiently realized. On the other hand, since the playlist production is based on the semantic association of the portrait tags throughout the process, the semantic relationship between the playlist and the songs is fully considered, so that the playlist can be closely associated with a certain associated theme, and the overall quality of the playlist can be improved. For an online music service platform, the response efficiency can be improved to improve the user experience, and the scale advantage can be reflected through data mining. BRIEF DESCRIPTION OF DRAWINGS
[0048] The above and / or additional aspects and advantages of the present application will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings, in which:
[0049] Figure 1 Flowchart of a typical embodiment of the playlist generation method of the present application;
[0050] Figure 2 Effect diagram of the user client device interface of the present application displaying a playlist;
[0051] Figure 3 Flowchart of the process of creating a knowledge graph in an embodiment of the present application;
[0052] Figure 4 Flowchart of the process of creating a playlist in an embodiment of the present application;
[0053] Figure 5 Flowchart of the process of perfecting the creation of a playlist in an embodiment of the present application;
[0054] Figure 6 FIG. 1 is a flowchart illustrating a process of matching a playlist with a song according to semantic similarity in an embodiment of the present application;
[0055] Figure 7 FIG. 2 is a flowchart illustrating a process of pushing a playlist in response to a user request in an embodiment of the present application;
[0056] Figure 8 FIG. 3 is a block diagram illustrating a principle of a playlist generating apparatus according to an embodiment of the present application;
[0057] Figure 9 FIG. 4 is a block diagram illustrating a structure of a computer device according to an embodiment of the present application. DETAILED DESCRIPTION
[0058] Embodiments of the present application are described in detail below with reference to the attached drawings. The embodiments described below are examples of the present application and are not intended to limit the present application. The same or similar components are denoted by the same or similar reference numerals throughout the drawings.
[0059] It will be understood by those skilled in the art that, as used herein, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise. It will be further understood that the terms "comprises" and / or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it can be directly connected or coupled to the other element or intervening elements can be present. In addition, the use of "connection" or "coupling" herein includes wireless connection or wireless coupling. The term "and / or" includes any and all combinations of one or more of the associated listed items.
[0060] It will be understood by those within the art that, as used herein, all terms including technical and scientific terms have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs unless otherwise specifically defined. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein.
[0061] Those skilled in the art will understand that, as used herein, the terms "client," "terminal," and "terminal device" include both devices that are solely wireless signal receivers and devices that have both receiving and transmitting hardware that can communicate bi-directionally over a bi-directional communication link. Such devices can include cellular or other communication devices with single-line or multiple-line displays, or no display, Personal Communications Service (PCS) devices that can combine a voice and data function, Personal Digital Assistants (PDAs) that can include a radio frequency receiver, pagers, Internet / intranet access, Web browsers, organizers, calendars, and / or a Global Positioning System (GPS) receiver, conventional laptop and / or palmtop computers, or other devices that have a radio frequency receiver. The terms "client," "terminal," and "terminal device" as used herein can be portable, transportable, installed in a vehicle (aeronautical, maritime, and / or land), or adapted for and / or configured for local and / or distributed operation on Earth and / or any other location in space. The terms "client," "terminal," and "terminal device" as used herein can also be a communication terminal, an Internet terminal, a music / video playing terminal, such as a PDA, a Mobile Internet Device (MID), and / or a mobile phone with music / video playing function, a smart television, a set-top box, and the like.
[0062] As used herein, the terms "server," "client," "service node," and the like refer to hardware that is essentially an electronic device with the equivalent capability of a personal computer, which is a hardware device having the necessary components disclosed by the Von Neumann principle, such as a central processing unit (including an arithmetic unit and a controller), a memory, an input device, and an output device. A computer program is stored in the memory, the central processing unit loads the program stored in the external memory into the internal memory and runs it, executes the instructions in the program, and interacts with the input and output devices, thereby completing a specific function.
[0063] It should be noted that the concept of "server" in the present application can also be extended to the case of a server cluster. According to the principle of network deployment understood by those skilled in the art, the servers should be logically divided, and in physical space, these servers can be independent of each other but can be called through an interface, or can be integrated into a physical computer or a computer cluster. Those skilled in the art should understand this variation and should not be restricted by the implementation of the network deployment of the present application.
[0064] One or more technical features of the present application, unless explicitly specified, can be deployed in a server implementation and accessed by a client remotely calling an online service interface provided by the server, or can be directly deployed and run on a client to implement access.
[0065] The neural network model referred to or possibly referred to in the present application, unless explicitly specified, can be deployed on a remote server and remotely called by a client, or can be deployed on a client with sufficient device capability for direct calling. In some embodiments, when it runs on a client, its corresponding intelligence can be obtained through transfer learning to reduce the requirement for client hardware running resources and avoid excessive occupation of client hardware running resources.
[0066] The various data involved in the present application, unless explicitly specified, can be remotely stored on a server or stored on a local terminal device, as long as it is suitable for being called by the technical solutions of the present application.
[0067] Those skilled in the art should know that the various methods of the present application, although based on the same concept and described to present commonality among them, are independently executable unless otherwise specified. Similarly, for each embodiment disclosed in the present application, it is based on the same inventive concept, and therefore, for the same conceptually expressed concepts, and although the conceptually expressed concepts are different, they should be understood as equivalent.
[0068] Unless it is explicitly stated that the embodiments disclosed in the present application are mutually exclusive, the technical features involved in each embodiment can be combined flexibly to construct new embodiments, as long as such combination does not deviate from the spirit of the present application and can meet the needs of the prior art or solve some deficiencies in the prior art. For this variation, those skilled in the art should know.
[0069] The playlist generation method of the present application can be programmed as a computer program product, deployed in a server to run and achieve, whereby the client can access the interface opened by the computer program product running in the form of a web program or an application program, and realize human-computer interaction with the process of the computer program product through a graphical user interface.
[0070] Referring to Figure 1 The playlist generation method of the present application, in its typical embodiment, comprises the following steps:
[0071] Step S1100, acquire the music library knowledge graph, which is structured as a directed graph structure according to semantic relevance, and stores the portrait tags of different songs in the music library in a plurality of entity nodes in the directed graph structure:
[0072] One of the application scenarios of the present application is an online music service platform, which automatically produces various playlists in the background by running the product realized by the present application, using relevant data of the music library of the platform, for users to access in the front-end interface.
[0073] The music library is mainly used to store various music files and their associated information. The content of the music files can be song and music works, pure music, MIDI music works, music videos, etc. In general, in the present application, the music files are used to store songs. The data format of the music files includes but is not limited to MP3, MP4, M4A, WMA, etc. Any known or unknown format that can be stored.
[0074] A knowledge graph is configured corresponding to the music library. In the present embodiment, the knowledge graph is realized as a directed graph structure, and there are a plurality of entity nodes. Each song in the music library can be stored as one of the entity nodes, and various portrait tags used to describe the songs in the music library can also be stored as the entity nodes, so that a knowledge dissemination path in the form of "Song 1—Portrait Tag 1—Song 2—Portrait Tag 2……" in the music library can be realized in the knowledge graph. The establishment process of the knowledge dissemination path can establish the association through the pre-labeled portrait tags of each song, i.e. according to the different songs pointing to the same portrait tag to indicate the connection relationship of each entity node in the corresponding knowledge dissemination path. In some cases, as disclosed in a subsequent embodiment of the present application, the knowledge dissemination path can also be constructed with the help of user historical behavior data of an online music platform, which will be described later.
[0075] The portrait tag is a tag suitable for describing the characteristics of a song, mainly including style type, age type, language type, emotion type, rhythm type, singer name, singer characteristic, lyrics characteristic, evaluation characteristic, song relationship, singer relationship, user behavior characteristic of a song, etc. Any one or any multiple of various specific tags contained in any one or any multiple of the above categories. For example, the age type can be divided into specific tags such as "post-80s" and "post-90s". Such portrait tags can be used to describe the characteristics of each song or playlist and to realize semantic representation of the common characteristics of many songs.
[0076] It can be understood that, by means of the knowledge graph, different songs associated with the same portrait label can be conveniently found, and the full amount of portrait labels required to constitute the same song can also be found. By invoking the knowledge graph, access to song and portrait label related information can be achieved.
[0077] In step S1200, the portrait labels of the entity nodes in the knowledge graph are clustered, and a plurality of playlists corresponding to different combinations of portrait labels are generated according to part of the portrait labels in the clustering results.
[0078] As described above, the knowledge graph indicates that each portrait label is mapped to a plurality of songs, and therefore, the full amount of songs in the music library can be clustered according to the portrait labels, i.e., each portrait label can theoretically correspond to a candidate song list carrying the song. Due to the fact that most songs may carry multiple portrait labels, these songs will theoretically exist in different candidate song lists. When clustering, a person skilled in the art can filter the portrait labels by means of a preset rule to filter out part of the portrait labels and save the amount of calculation. For example, the portrait labels with a total amount of songs less than N (N is a positive integer) in the clustering results can be set as filtered labels, and subsequent playlists are not created for them, and only playlists are created for part of the portrait labels that are not filtered out.
[0079] In order to facilitate subsequent operations, at this time, a plurality of playlists can be created corresponding to part of the portrait labels that are not filtered out. The way of creating playlists is flexible and diverse. For example, in one embodiment, each portrait label in the clustering results that are not filtered out can correspond to the creation of a playlist. In a variant embodiment, two or more combinations of different portrait labels that are not filtered out in the clustering results can be made according to a preset rule, and a corresponding playlist is created according to each combination, thereby compressing the total amount of playlists. Accordingly, the candidate song list corresponding to each playlist is the union of the candidate song list originally corresponding to the portrait label that is not filtered out in the clustering result corresponding to the playlist.
[0080] It is not difficult to understand that, at this time, the playlists determined only according to a single portrait label or a mechanical combination of a small number of portrait labels only achieve a rough classification of the songs in the music library, and cannot provide more systematic semantic representation through rich portrait labels, which is insufficient to achieve the selection of songs entering the playlist. If the playlists are determined as the final playlists, the quality of the obtained playlists will be difficult to be recognized. In this case, further processing is still required.
[0081] Step S1300, obtaining image information of songs associated with the partial image label from the knowledge graph, and determining image information of the playlist according to the obtained image information of the songs; the image information includes a plurality of image labels associated with the corresponding playlist and songs in semantics:
[0082] In order to enrich the image information of each playlist, or to break the information cocoon and expand the image boundary of the playlist, the common characteristics of the playlist can be further limited by investigating the image labels contained in the image information of the full quantity of songs in the candidate song list corresponding to the playlist.
[0083] Specifically, according to the knowledge propagation path of the knowledge graph, the full quantity of image labels of each song in the candidate song list corresponding to a certain playlist can be extracted first to constitute the image information corresponding to each song, and then the image labels with a larger common quantity are extracted to determine the extended image labels of the corresponding playlist, so as to enrich the image information of the playlist, that is, the image information of the playlist contains not only the image label combination obtained in the previous step, but also the extended image labels extended in this step. At this point, the extension of the image label of each playlist is realized, the semantic of the image information of each playlist is enriched, and the image boundary of the playlist is also expanded on the basis of the original image label combination of each playlist.
[0084] Step S1400, according to the similarity between the image information of the playlist and the image information of the song, marking the membership relationship between the playlist and the song.
[0085] After determining the image information of each playlist and each corresponding song, the commonality between them, mainly the similarity between them, can be used to determine the corresponding membership relationship between them.
[0086] In an embodiment, for any playlist, the intersection of each image label contained in its image information and the image label of each song in its candidate song list is calculated, and the corresponding song with intersection is determined as the song contained in the playlist, and the corresponding song without intersection is determined as the song not contained in the playlist.
[0087] In another embodiment, a text feature extraction model pre-trained to a convergent state can be used to encode the image information of the playlist and the image information of the song to form a feature representation of the encoded vectors, and obtain a feature vector corresponding to the respective deep semantic information. Then, the similarity between the two feature vectors is calculated. When the similarity is greater than a preset empirical threshold, it is determined that the corresponding playlist contains the corresponding song, otherwise the playlist does not contain the corresponding song. The text feature extraction model can be implemented by using various pre-trained neural network models based on CNN and RNN in the prior art.
[0088] After determining the membership relationship between the playlist and the song according to the similarity between the image information, a plurality of playlists are obtained, thereby achieving the purpose of automatically generating playlists according to the knowledge graph corresponding to the music library. The playlist generated in this way contains its corresponding image information, and the semantic description of the image information describes a theme, so a plurality of theme playlists are generated, as shown in Figure 2 which can be formatted according to the image information and recommended to platform users for access.
[0089] Through the disclosure of the typical embodiment, it can be seen that the present application realizes the representation of the semantic association relationship between the songs in the music library by means of the directed graph structure of the knowledge graph. On this basis, the image tags of the songs in the knowledge graph are clustered, and the playlists are created based on part of the image tags according to the clustering results. Then, the songs are obtained according to the image tags, and the image tags of the playlists are perfected according to the image tags of the songs. The interactive fusion between the playlists and the songs based on the image information is realized, and finally the playlists are obtained. According to the semantic association between the image information of the playlists and the image information of each song, a mapping relationship between the playlists and the songs with semantic association is established. Since the image tags in the image information of each playlist also have semantic association, the image information of each playlist actually represents a theme in a certain aspect. Therefore, on the one hand, the purpose of intelligently generating theme playlists using the knowledge graph of the music library is achieved, and the whole process is automated without human intervention, which can efficiently realize playlist production. On the other hand, since the playlist production is based on the semantic association of the image tags throughout the process, the semantic relationship between the playlists and the songs is fully considered, so that the playlists can be closely related to a certain associated theme, which can improve the overall quality of the playlists. For online music service platforms, not only can the response efficiency be improved to improve user experience, but also the scale advantage can be reflected through data mining.
[0090] Please refer to Figure 3 In an extended embodiment, before the step S1100 of obtaining the knowledge graph of the music library, the following steps are included:
[0091] Step S0100, creating a knowledge graph corresponding to the music library:
[0092] The online music service platform can initialize the creation of the knowledge graph on demand. The knowledge graph can be organized in a database and can be flexibly implemented by those skilled in the art.
[0093] In step S0200, the portrait label of each song in the music library is determined according to the associated information of the song, each song and each portrait label are stored as entity nodes in the knowledge graph, and the content information of each song is stored as an attribute item in the entity node. The associated information includes keywords in the song description text, keywords in the song attribute data, label words in the song annotation information, and label words in the annotation information of the historical playlist to which the song belongs.
[0094] To determine the portrait label of each song, either manual annotation or automatic extraction can be used. For the automatic extraction method, a song classification model based on a text feature extraction model can be trained to represent the feature of the corresponding encoded information of the song. Based on the feature representation, classification mapping is performed to obtain the corresponding portrait label. The text feature extraction model is based on the encoded information learned by the model, which is extracted from the associated information of the corresponding song. The associated information is rich and mainly includes information closely related to the song, including but not limited to keywords in the song description text, keywords in the song attribute data, label words in the song annotation information, and label words in the annotation information of the historical playlist to which the song belongs. In this embodiment, the song name, lyrics, attribute data, etc. of the song can be segmented to extract keywords or label words, and then the keywords and label words are vectorized, and then the text feature extraction model is used for feature representation and classification to obtain each corresponding portrait label mapped to the preset classification system. In some embodiments, some acoustic model external classifiers can also be used to perform feature representation based on the audio data of the song, and then the audio data and the associated information are jointly represented and classified to obtain the corresponding portrait label of the song, so as to further improve the accuracy of data portrait of the song. Similarly, those skilled in the art can flexibly implement according to the disclosure herein.
[0095] Each song also includes its corresponding content information, which includes the access link of the song, the unique feature information of the song, the introduction information of the song, the attribute data of the song, etc. Such content information can be constructed as an attribute item in the entity node corresponding to the song for storage to facilitate quick access to the content information of the song from the knowledge graph.
[0096] After the above process completes the acquisition of the materials required for the knowledge graph, the information corresponding to the songs and image tags can be stored in the knowledge graph according to the knowledge propagation path. In this embodiment, each song is represented as an entity node in the knowledge graph, and similarly, the image tags are also represented as entity nodes in the knowledge graph.
[0097] Step S0300, determining the connection relationship between the entity nodes and the attribute items in the knowledge graph according to the semantic information contained in the association information of each song:
[0098] The knowledge graph represents the semantic association between each entity node through its directed graph structure, so when representing the songs and image tags, the connection relationship between each entity node also needs to be established. For this purpose, the mapping relationship between the entity nodes corresponding to each song and each image tag in the knowledge graph can be determined according to the image tags contained in each song, thereby establishing the connection relationship between each entity node.
[0099] The embodiment provides an implementation mode of the knowledge graph. As can be seen, the knowledge graph realizes the representation of the semantic association relationship between the image information of the songs. When the songs are data determined according to user behavior data, the characteristics of the association relationship between the content of interest of the user can also be embodied. According to this knowledge graph, the generation of the song list can better realize the semantic association between the song list and the songs, thereby improving the matching degree between the song list and the songs.
[0100] Please refer to Figure 4 In a deepened embodiment, the step S1200, clustering the image tags of the entity nodes in the knowledge graph, generating a plurality of song lists corresponding to different image tag combinations according to part of the image tags in the clustering result, includes the following steps:
[0101] Step S1210, counting the number of times each image tag in the knowledge graph is referenced by a song as the usage frequency:
[0102] Each image tag in the knowledge graph is counted, and the total number of songs referencing each image tag is counted, that is, the number of times each image tag is referenced by a song, that is, each song holding the same image tag is counted as once. Thus, the number of times the same image tag is referenced by different songs is obtained as the usage frequency corresponding to the same image tag. Thus, each image tag corresponds to a usage frequency.
[0103] Step S1220, screening part of the image tags with a usage frequency exceeding a preset threshold as target image tags:
[0104] In order to compress the total amount of playlists, the preferred portrait tags in the knowledge graph for producing playlists can be selected according to a preset rule. For example, according to a preset threshold, when the usage frequency of a portrait tag exceeds the preset threshold, the portrait tag is considered to be suitable for producing a playlist, that is, the portrait tag is filtered out. Accordingly, part of the portrait tags in the knowledge graph can be filtered out, and part of the portrait tags for producing playlists can be retained.
[0105] Step S1230, generating a plurality of combined corresponding playlists according to any number of combinations of the target portrait tags:
[0106] Similarly, in order to further optimize the information amount of the playlists, another preset rule can be set, which indicates, for example, that portrait tags of different types are combined to obtain a plurality of portrait tag combinations, and then a plurality of combined corresponding playlists are created one by one for each portrait tag combination. It is not difficult to understand that at this time, the total number of playlists is the total number of portrait tag combinations, and in the case where different combinations have the same portrait tags, the total number of playlists is obviously compressed, achieving simplification.
[0107] Step S1240, labeling each combined corresponding target portrait tag as part of the portrait information of the combined corresponding playlist:
[0108] Each playlist will associate its corresponding portrait information. Since the playlist has been generated according to the portrait tag combination in the foregoing, the portrait tag corresponding to the combination can be part of the portrait information corresponding to the playlist, and the full amount of portrait information of the playlist can be obtained by further expanding and enriching. At this time, each playlist takes its corresponding portrait tag combination as part of its portrait information.
[0109] The embodiment exemplarily shows a simple clustering method. By counting the usage frequency of the portrait tags, the portrait tags are selected based on the usage frequency and a preset threshold, and then the selected portrait tags are combined to further compress the total amount of playlists, which helps to enrich the theme meaning carried by the playlists and simplify the total amount of songs corresponding to the playlists, so that the theme of the playlists is more explicit and the song content is more accurate.
[0110] Please refer to Figure 5 In a deepened embodiment, the step S1300 of obtaining the portrait information of the songs associated with the part of the portrait tags from the knowledge graph, and determining the portrait information of the playlist according to the obtained portrait information of the songs, comprises the following steps:
[0111] Step S1310, query the songs corresponding to the entity nodes containing all the image labels in the image label combination from the knowledge graph, and obtain all the image labels corresponding to each song to constitute the image information of the song:
[0112] In this step, all the image labels contained in the image label combination held by the playlist are needed to obtain the corresponding songs, so as to further obtain the image information of these songs.
[0113] According to the association relationship between the song and the image label, the image information of a certain playlist can be obtained according to the image label combination used to create the playlist, that is, all the image labels in the image label combination, called target image labels. The songs containing all the target image labels are obtained from the knowledge graph, and then the full image labels of these songs are obtained to constitute the image information of each song.
[0114] In this embodiment, only the songs corresponding to the image label combination are determined, that is, only the songs that simultaneously have each target image label in the image label combination are determined, and only the image information of these songs is obtained. If a song in the knowledge graph only contains a single target image label in the image label combination, the image information of the song does not need to be called.
[0115] Step S1320, counting the use frequency of each image label in the image information of the queried song in the song to determine a set of image labels with a use frequency exceeding a preset threshold:
[0116] Here, the image labels in the image information of the song queried in the previous step are counted, and the use frequency of each image label in the full song is counted. Then, a preset threshold is used to filter the image labels with a use frequency exceeding the preset threshold, so as to determine a plurality of image labels with a use frequency exceeding the preset threshold. By adjusting the preset threshold, the number of image labels can be adjusted. Generally, the number of image labels filtered here will be greater than the number of image labels in the corresponding image label combination, so as to expand the image information of the playlist. Therefore, the plurality of image labels filtered constitute the image label set required by the image information of the playlist. It is not difficult to understand that the image labels in the image label set are the description of the common characteristics of most of the queried songs, and not all the queried songs have the entire image label set. Generally, the image label set will contain each image label in the original image label combination.
[0117] Step S1330, constructing the image label set as the image information of the playlist corresponding to the image label combination:
[0118] After obtaining the image label set, the entire image label set can be stored by replacing the image information of the song list in whole, realizing that the differential image label is stored as an extended image label in the image information of the song list, perfecting the semantic description of the data image of the song list, and enriching the definition of the theme content contained in the song list.
[0119] The embodiment realizes the reverse enrichment of the theme definition of the song list by using the image label of the queried song by interacting and fusing the image label combination of the song list and the image information of the song hit, and can further optimize the mapping relationship between the song list and the song according to this, so that the connotation of the song list theme is more abundant, the denotation is more accurate, and the matching accuracy between the song list and the song is improved.
[0120] Please refer to Figure 6 In a deepened embodiment, the step S1400 of marking the membership relationship between the song list and the song according to the similarity between the image information of the song list and the image information of the song includes the following steps:
[0121] Step S1410, converting the image information of the song list and the image information of the song into corresponding song list image vectors and song image vectors respectively:
[0122] In the embodiment, a text feature extraction model pre-trained to a convergence state is used for representation learning of the image information of the song list and the image information of the song, to obtain corresponding song list image vectors and song image vectors.
[0123] The text feature extraction model is preferably a mature model such as Bert, Electra, and TextCNN, which can be flexibly used by those skilled in the art, as long as it is trained with sufficient data samples in advance. Each data sample can be the image information corresponding to the song list or the song, which is converted into a corresponding encoding vector during training, and then a corresponding song list image vector or song image vector is obtained after feature representation by the text feature extraction model. On the basis of obtaining the song list image vector or the song image vector, a classifier is applied for classification prediction, and then the difference between the corresponding supervision label of the data sample and the classification prediction result is used to obtain the cross-entropy loss of the model. When the loss value is close to the preset threshold, the weights of the model are updated by gradient, and the next data is trained for iterative training until the loss value of the model reaches the preset threshold to confirm that the model converges, and the model can be put into use.
[0124] Step S1420, calculating the data similarity between each song list image vector and each song image vector corresponding thereto, to obtain a similarity sequence corresponding to each song list image vector, in which all the similarity values between the song image vectors and the song list image vector are stored:
[0125] Further, the similarity between each playlist image vector and each song image vector in the playlist is calculated using a data distance calculation formula, such as a Euclidean distance algorithm, a cosine similarity algorithm, a Jaccard algorithm, a Pearson correlation coefficient algorithm, and the like, to obtain a similarity sequence corresponding to each playlist, in which the similarity values of each song in the playlist are stored.
[0126] Step S1430: From the similarity sequence corresponding to each playlist image vector, the song image vectors with similarity values exceeding a preset threshold are screened out to determine the target songs corresponding to the song image vectors.
[0127] To achieve the screening of songs in each playlist, a preset threshold can be set by those skilled in the art, which is an empirical threshold or an experimental threshold. The similarity values of each element in the similarity sequence of each playlist are compared with the preset threshold. When the former is greater than or equal to the latter, it is determined that the song corresponding to the similarity value should be included in the playlist. When the former is less than the latter, it is determined that the song corresponding to the similarity value should be deleted from the playlist. Thus, the songs included in each playlist are optimized, the semantic relationship between the playlist and the songs included in the playlist is more in-depth, a more accurate matching relationship is achieved, and the construction of a corresponding song library around an implicit theme is more helpful.
[0128] Step S1440: The mapping relationship data between each playlist and the target songs corresponding to the playlist image vector of each playlist image vector are established.
[0129] According to the similarity sequence filtered in the previous step, each element corresponds to a song. Accordingly, the songs corresponding to these elements can be added to the song list of the corresponding playlist, thereby perfecting the creation process of the playlist and realizing the final generation of the playlist.
[0130] The embodiment performs similarity matching based on the deep semantic information of the image information of the playlist and the song, establishes the mapping relationship between the two based on semantic association, further improves the matching accuracy of the playlist and the song, and establishes the relationship between the playlist and the song around a theme. A user can obtain many related songs that meet the meaning described in the playlist image information through a playlist. For an online music platform, a playlist can be generated without human intervention, and the quality of the playlist can be improved, which is obviously superior to the traditional way of making a playlist by a professional or defining a playlist by a user at will.
[0131] Please refer to Figure 7In an extended embodiment, after the step S1400 of acquiring the music library knowledge graph, the following steps are included:
[0132] In step S2100, in response to a playlist recommendation request triggered by a user, the behavior data of the user is acquired, and the user historical access songs associated with the behavior data are determined:
[0133] In this embodiment, the user can enter the playlist browsing page as shown in Figure 2 , thereby triggering a playlist recommendation request submitted to the server of the online music service platform. In response to the playlist recommendation request, the corresponding behavior data of the user can be acquired, mainly referring to the historical behavior data of the user. The historical access songs of the user are determined from the historical behavior data.
[0134] Preferably, the information related to the user behavior data can also be stored in the knowledge graph, according to the user behavior data, so as to quickly and efficiently acquire the historical access songs of the user from the knowledge graph.
[0135] In step S2200, the common portrait tags of the user historical access songs are extracted from the knowledge graph, and are constructed as the portrait information of the user:
[0136] After obtaining the user historical access songs from the knowledge graph, the portrait information of the user historical access songs can be acquired, and then the usage frequency of the portrait tags is counted according to these portrait information, so as to determine the usage frequency of each portrait tag being cited. Then, with the help of a preset threshold, a plurality of portrait tags with high usage frequency are screened out as the common portrait tags corresponding to these historical access songs. It should be understood here that even if the common portrait tag with the highest usage frequency is not necessarily possessed by the user's full amount of historical access songs, but here only the common portrait tag with the highest usage frequency is obtained, which is used to represent the song type of interest to the user.
[0137] In step S2300, one or more exclusive playlists of the user are created according to any portrait tag combination in the portrait information, and each exclusive playlist is associated with the songs of its portrait tag combination:
[0138] After screening out a plurality of common portrait tags corresponding to the user, in order to simplify the playlist, the common portrait tags can be combined according to a preset rule, for example, two-by-two random combination, to obtain one or more exclusive playlists corresponding to the user. Then, the exclusive playlists can be added with the songs corresponding to their portrait tag combinations according to the portrait tag combinations of the exclusive playlists. These songs added to the exclusive playlists can be the user historical access songs or other songs of the music library carrying the corresponding portrait tag combinations, which can be determined flexibly by those skilled in the art.
[0139] Step S2400, pushing the user with the special playlist to answer the playlist recommendation request:
[0140] Finally, the user's various special playlists can be sent to the client device where the user is located to answer the playlist recommendation request, and the user can then access the songs close to the user's preferences according to the special playlists.
[0141] The embodiment further produces playlists according to the user's own historical behavior data, produces special playlists for the user that are associated with the preferences embodied by the historical behavior data of the user, the special playlists are more personalized and match the user's interest field, and different users obtain different special playlists, thus eliminating the user's trouble of making playlists and improving the user experience.
[0142] Please refer to Figure 8 The playlist generation device provided by the present application is functionally deployed according to the playlist generation method of the present application, and includes a graph calling module 1100, a playlist creation module 1200, an image processing module 1300, and a similarity matching module 1400. The graph calling module 1100 is configured to obtain a music library knowledge graph, and the knowledge graph is structured as a directed graph structure according to semantic correlation, and stores image tags of different songs in the music library in a plurality of entity nodes in the directed graph structure. The playlist creation module 1200 is configured to cluster the image tags of the entity nodes in the knowledge graph, and generate a plurality of playlists corresponding to different combinations of image tags according to part of the image tags in the clustering result. The image processing module 1300 is configured to obtain image information of songs associated with the part of the image tags from the knowledge graph, and determine image information of the playlists according to the obtained image information of the songs. The image information includes a plurality of image tags associated with the corresponding playlists and songs in the semantic. The similarity matching module 1400 is configured to mark the membership relationship between the playlists and the songs according to the similarity between the image information of the playlists and the image information of the songs.
[0143] In an extended embodiment, the playlist generation device of the present application includes:
[0144] The graph creation module is configured to create a knowledge graph corresponding to the music library.
[0145] The atlas representation module is configured to determine an image label of each song in the music library according to associated information of the song, store each song and each image label as an entity node in a knowledge graph, and store content information of each song as an attribute item in the entity node. The associated information includes keywords in a song description text, keywords in song attribute data, label words in song annotation information, and label words in annotation information of a historical playlist to which the song belongs.
[0146] The atlas association module is configured to determine a connection relationship between entity nodes and between attribute items in the knowledge graph according to semantic information contained in the associated information of each song.
[0147] In a deepened embodiment, the playlist creation module 1200 includes a word frequency statistics submodule configured to count a number of times each image label in the knowledge graph is referenced by a song as a usage frequency, a label screening submodule configured to screen out part of the image labels with a usage frequency exceeding a preset threshold as target image labels, a playlist derivation submodule configured to generate a plurality of playlists corresponding to combinations of any number of the target image labels, and an image enrichment submodule configured to label each target image label corresponding to a combination as part of image information of a playlist corresponding to the combination.
[0148] In a deepened embodiment, the image processing module 1300 includes a label completeness checking submodule configured to query songs corresponding to entity nodes containing all image labels in the image label combination from the knowledge graph, and obtain image information of each song composed of all image labels corresponding to the song, a label optimization submodule configured to count usage frequencies of each image label in image information of the queried songs, and determine an image label set with a usage frequency exceeding a preset threshold, and a label implanting submodule configured to construct the image label set as image information of a playlist corresponding to the image label combination.
[0149] In a deepened embodiment, the similarity matching module 1400 includes a vector conversion submodule configured to convert image information of a playlist and image information of a song into corresponding playlist image vectors and song image vectors, respectively, a similarity calculation submodule configured to calculate a data similarity between each playlist image vector and each song image vector corresponding to the playlist image vector, and obtain a similarity sequence corresponding to each playlist image vector, in which similarity values between all song image vectors and the playlist image vector are stored, a song screening submodule configured to screen out song image vectors with a similarity value exceeding a preset threshold from the similarity sequence corresponding to each playlist image vector, and determine target songs corresponding to the song image vectors, and an association mapping submodule configured to establish a mapping relationship data between a playlist corresponding to each playlist image vector and a target song corresponding to the playlist image vector.
[0150] In an extended embodiment, the playlist generation apparatus of the present application comprises: a request response module configured to respond to a playlist recommendation request triggered by a user, obtain behavior data of the user, and determine user historical access songs associated with the behavior data; a user portrait module configured to extract common portrait tags of the user historical access songs from the knowledge graph, and construct a portrait information of the user; a playlist production module configured to create one or more exclusive playlists of the user according to any portrait tag combination in the portrait information, and associate each exclusive playlist with songs having the portrait tag combination thereof; and a playlist pushing module configured to push the exclusive playlists to the user to answer the playlist recommendation request.
[0151] To solve the above technical problems, the embodiments of the present application further provide a computer device. As shown in the internal structure diagram of the computer device. Figure 9 The computer device comprises a processor, a computer readable storage medium, a memory and a network interface connected through a system bus. The computer readable storage medium of the computer device stores an operating system, a database and computer readable instructions. The database can store a control information sequence. When the computer readable instructions are executed by the processor, the processor can implement a playlist generation method. The processor of the computer device is used to provide computing and control capabilities to support the operation of the entire computer device. The memory of the computer device can store computer readable instructions. When the computer readable instructions are executed by the processor, the processor can execute the playlist generation method of the present application. The network interface of the computer device is used to connect and communicate with the terminal. Those skilled in the art can understand that the structure shown in the Figure 9 application to the computer device, and the specific computer device can include more or fewer components than those shown in the figure, or combine certain components, or have a different component arrangement.
[0152] In the present embodiment, the processor is used to execute the specific functions of each module and its sub-modules in Figure 8 The memory stores the program codes and various data required to execute the above-mentioned modules or sub-modules. The network interface is used for data transmission between user terminals or servers. The memory in the present embodiment stores program codes and data required to execute all modules / sub-modules in the playlist generation apparatus of the present application, and the server can call the program codes and data of the server to execute the functions of all sub-modules.
[0153] The present application further provides a storage medium storing computer readable instructions, which, when executed by one or more processors, causes the one or more processors to perform the steps of the playlist generation method of any embodiment of the present application.
[0154] The application also provides a computer program product comprising computer programs / instructions which, when executed by one or more processors, implement the steps of the method according to any of the embodiments of the application.
[0155] Those skilled in the art can understand that all or part of the processes in the method of the above-mentioned embodiments of the application can be completed by a computer program instructing relevant hardware, and the computer program can be stored in a computer readable storage medium. When the program is executed, it can include the processes of the above-mentioned embodiments of the method. The storage medium can be a computer readable storage medium such as a magnetic disc, an optical disc, a read-only memory (ROM), or a random access memory (RAM).
[0156] In summary, the application can realize automatic production of playlists, embody scale advantages, and improve the quality of theme playlists, so that each theme playlist is mapped to related songs based on semantic relevance, and further provides personalized playlists for users, thereby comprehensively improving the production quality of playlists of online music service platforms.
[0157] Those skilled in the art can understand that the steps, measures, and schemes in the various operations, methods, and processes discussed in the application can be alternated, changed, combined, or deleted. Further, other steps, measures, and schemes in the various operations, methods, and processes discussed in the application can also be alternated, changed, rearranged, decomposed, combined, or deleted. Further, the steps, measures, and schemes in the various operations, methods, and processes in the prior art can also be alternated, changed, rearranged, decomposed, combined, or deleted.
[0158] The above only describes some embodiments of the application. It should be noted that those skilled in the art can make several improvements and refinements without departing from the principles of the application, and these improvements and refinements should also be considered within the protection scope of the application.
Claims
1. A method of generating a playlist, characterized by, The method comprises the following steps: Obtaining a music library knowledge graph, which is constructed as a directed graph structure according to semantic relevance, and stores image tags of different songs in the music library as a plurality of entity nodes in the directed graph structure; Clustering the image tags of the entity nodes in the knowledge graph, and generating a plurality of playlists corresponding to different combinations of image tags according to part of the image tags in the clustering result, comprising: counting the number of times each image tag in the knowledge graph is referenced by a song as a usage frequency; screening out part of the image tags with a usage frequency exceeding a preset threshold as target image tags; generating a plurality of combination corresponding playlists according to any number of combinations of the target image tags; and labeling each combination corresponding target image tag as part of the image information of the combination corresponding playlist; Obtaining image information of songs associated with the part of the image tags from the knowledge graph, and determining the image information of the playlist according to the obtained image information of the songs; the image information comprises a plurality of the image tags that are semantically associated with the corresponding playlist and song, comprising: querying the knowledge graph for songs corresponding to entity nodes containing all image tags in the image tag combination, obtaining all image tags corresponding to each song to form its image information; counting the usage frequency of each image tag in the image information of the queried song in the song to determine an image tag set with a usage frequency exceeding a preset threshold; and constructing the image tag set as the image information of the playlist corresponding to the image tag combination; According to the similarity between the image information of the playlist and the image information of the songs, labeling the membership relationship between the playlist and the songs.
2. The playlist generating method according to claim 1, wherein, Before the step of obtaining the music library knowledge graph, the following steps are included: Creating a knowledge graph corresponding to the music library; Determining the image tags of each song in the music library according to the associated information of each song, storing each song and each image tag as an entity node in the knowledge graph, and storing the content information of each song as an attribute item in its entity node; wherein the associated information includes keywords in the song description text, keywords in the song attribute data, label words in the song annotation information, and label words in the annotation information of the historical playlist to which the song belongs; Determining the connection relationship between the entity nodes and the attribute items in the knowledge graph according to the semantic information contained in the associated information of each song.
3. The playlist generating method of claim 1, wherein, According to the similarity between the image information of the playlist and the image information of the songs, labeling the membership relationship between the playlist and the songs, comprising the following steps: Converting the image information of the playlist and the image information of the songs into corresponding playlist image vectors and song image vectors, respectively; Calculating the data similarity between each playlist image vector and each song image vector corresponding to it to obtain a similarity sequence corresponding to each playlist image vector, which stores the similarity values between all song image vectors and the playlist image vector in the sequence; From the similarity sequence corresponding to each playlist image vector, screening out song image vectors with a similarity value exceeding a preset threshold to determine target songs corresponding to the song image vectors. Establish a mapping relationship between each playlist portrait vector and the target songs corresponding to the playlist portrait vector.
4. The playlist generation method according to any one of claims 1 to 3, characterized by, After the step of obtaining the music library knowledge graph, the following steps are included: In response to a playlist recommendation request triggered by a user, obtaining behavior data of the user, determining user historical access songs associated with the behavior data; Extracting common portrait labels of the user historical access songs from the knowledge graph to construct portrait information for the user; According to any portrait label combination in the portrait information, creating one or more exclusive playlists for the user, each exclusive playlist being associated with songs having the portrait label combination; Pushing the exclusive playlists to the user to respond to the playlist recommendation request.
5. A playlist generating apparatus characterized by comprising: Comprise: A graph calling module for obtaining a music library knowledge graph, the knowledge graph being structured as a directed graph according to semantic association, and the music library different song portrait labels being stored in the directed graph as a plurality of entity nodes; A playlist creating module for clustering the portrait labels of the entity nodes in the knowledge graph, generating a plurality of playlists corresponding to different portrait label combinations according to part of the portrait labels in the clustering result, including: counting the number of times each portrait label in the knowledge graph is referenced by a song as a usage frequency; selecting part of the portrait labels with a usage frequency exceeding a preset threshold as target portrait labels; generating a plurality of playlists corresponding to different combinations of any number of target portrait labels; and labeling each combination of target portrait labels as part of the portrait information of the corresponding playlist; A portrait processing module for obtaining the portrait information of the songs associated with the part of the portrait labels from the knowledge graph, and determining the portrait information of the playlist according to the obtained portrait information of the songs; the portrait information including a plurality of portrait labels associated with the corresponding playlist and song in semantics, including: querying the songs corresponding to the entity nodes containing all the portrait labels in the portrait label combination from the knowledge graph, obtaining the portrait information of each song composed of all the portrait labels corresponding to each song; and determining a set of portrait labels with a usage frequency exceeding a preset threshold by counting the usage frequency of each portrait label in the songs in the obtained portrait information of the songs; and constructing the set of portrait labels as the portrait information of the playlist corresponding to the portrait label combination; A similarity matching module for labeling the membership relationship between the playlist and the song according to the similarity between the portrait information of the playlist and the portrait information of the song.
6. The playlist generating apparatus according to claim 5, wherein The similarity matching module comprises: A vector conversion submodule for converting the portrait information of the playlist and the portrait information of the song into corresponding playlist portrait vectors and song portrait vectors, respectively; A similarity calculation submodule for calculating the data similarity between each playlist portrait vector and each song portrait vector corresponding to the playlist portrait vector, obtaining a similarity sequence corresponding to each playlist portrait vector, the sequence storing the similarity values between all song portrait vectors and the playlist portrait vector. The song screening submodule is configured to screen song portrait vectors with similarity values exceeding a preset threshold from a similarity sequence corresponding to each playlist portrait vector, and determine target songs corresponding to the song portrait vectors; The association mapping submodule is configured to establish mapping relationship data between a playlist corresponding to each playlist portrait vector and a target song corresponding to the playlist portrait vector.
7. The playlist generating apparatus according to claim 5 or 6, wherein The playlist generation apparatus further comprises: The request response module is configured to, in response to a playlist recommendation request triggered by a user, acquire behavior data of the user, and determine a user historical access song associated with the behavior data; The user portrait module is configured to extract common portrait labels of user historical access songs from the knowledge graph, and construct portrait information of the user; The playlist making module is configured to create one or more exclusive playlists of the user according to any portrait label combination in the portrait information, and each exclusive playlist is associated with songs having the portrait label combination thereof; and the playlist pushing module is configured to push the exclusive playlists to the user to respond to the playlist recommendation request.
8. A computer device comprising a central processing unit and a memory, characterized in that The central processor is configured to invoke and run a computer program stored in the memory to perform the steps of the method according to any one of claims 1 to 4.
9. A computer-readable storage medium, characterized in that, The computer program / instructions stored in the form of computer readable instructions have the computer program implemented according to the method of any one of claims 1 to 4, and when the computer program / instructions are invoked and run by a computer, the steps included in the corresponding method are performed.
10. A computer program product comprising computer programs / instructions, characterized in that, The computer program / instructions are executed by the processor to implement the steps of the method of any one of claims 1 to 4.
Citation Information
Patent Citations
Investor classification method, device and equipment and medium
CN109766454A
Knowledge graph enhanced recommendation system based on sparse user behavior data
CN112989215A
Music recommendation method and system based on knowledge graph
CN113032618A