Song recall method and device, server and storage medium

By first performing a song list relevance recall during the song recall process, narrowing the range of songs, and then performing semantic related song recall in the recall song list, the problems of low efficiency and low accuracy in the existing technology are solved, and the improvement is achieved Efficient and accurate song recall.

CN119474448APending Publication Date: 2025-02-18GUANGZHOU KUGOU COMP TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411517013.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-29
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

In the prior art, in the process of song recall, query text requires vector similarity calculations to a large number of songs stored in the server one by one, resulting in low efficiency and low accuracy.

Method used

By first recalling the correlation degree based on the search text and the song list information of the song list, narrowing the song range, and then performing song recall in the recall playlist, the semantic correlation between the song information and the query text is used to improve the recall accuracy.

Benefits of technology

It improves the efficiency and accuracy of song recall, narrows the search range, and enhances the relevance of recall results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119474448A_ABST
    Figure CN119474448A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a song recall method and device, a server and a storage medium, and belongs to the technical field of information retrieval. The method comprises the following steps: receiving a song recall request of a client, wherein the song recall request comprises a query text; performing song list recall based on the query text and song list information of the song list to obtain a recalled song list, the song list information of the recalled song list being related to the query text; songs are recalled in the recall song list based on the query text, a target recalled song is obtained, and song information of the target recalled song is related to query text semantics. By adopting the technical scheme provided by the embodiment of the invention, the song list can be recalled firstly, so that the retrieval range is narrowed, and the song recall efficiency and accuracy are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of information retrieval technology, and in particular to a song recall method, device, server and storage medium. Background Art

[0002] Music search engines can provide users with songs that match the query text based on the query text entered by the user. In related technologies, the server vectorizes and stores the features of the songs; during the song recall process, the query text is vectorized and the vector similarity between the vectorized query text and each song is calculated, thereby recalling songs that meet the vector similarity requirements.

[0003] However, the query text needs to calculate the vector similarity with a large number of songs stored in the server one by one, resulting in low efficiency of song recall and low accuracy of song recall directly based on vector similarity. Summary of the invention

[0004] The embodiment of the present application provides a song recall method, device, server and storage medium, and the technical solution includes the following contents.

[0005] On the one hand, an embodiment of the present application provides a song recall method, the method comprising:

[0006] receiving a song recall request from a client, wherein the song recall request includes a query text;

[0007] Recalling a playlist based on the query text and the playlist information to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text;

[0008] Songs are recalled in the recalled song list based on the query text to obtain target recalled songs, wherein song information of the target recalled songs is semantically related to the query text.

[0009] On the other hand, an embodiment of the present application provides a song recall device, the device comprising:

[0010] A request receiving module, used for receiving a song recall request from a client, wherein the song recall request includes a query text;

[0011] A playlist recall module, used to recall a playlist based on the query text and the playlist information of the playlist, to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text;

[0012] The song recall module is used to recall songs in the recalled song list based on the query text to obtain target recalled songs, wherein the song information of the target recalled songs is semantically related to the query text.

[0013] On the other hand, an embodiment of the present application provides a server, which includes a processor and a memory, wherein the memory stores at least one computer instruction, and the at least one computer instruction is loaded and executed by the processor to implement the song recall method as described in the above aspects.

[0014] On the other hand, an embodiment of the present application provides a computer-readable storage medium, which stores at least one computer instruction, and the at least one computer instruction is loaded and executed by a processor to implement the song recall method as described in the above aspects.

[0015] On the other hand, an embodiment of the present application provides a computer program product, which includes computer instructions, and the computer instructions are stored in a computer-readable storage medium; the processor of the server reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the server implements the song recall method described in the above aspects.

[0016] In the related art, when performing song recall, the query text needs to calculate vector similarity with a large number of songs stored in the server one by one, resulting in low efficiency of song recall and low accuracy of song recall directly based on vector similarity.

[0017] In the embodiment of the present application, the server first recalls the song list whose song list information is related to the query text according to the correlation between the query text and the song list information of the song list, excludes the song list that is not related to the query text, obtains the recalled song list, narrows the range of songs, and improves the efficiency of the server when recalling songs. Since the songs in the recalled song list are more likely to be related to the query text, the server recalls the songs in the recalled song list and obtains the target recalled songs that are semantically related to the query text, thereby improving the recall accuracy. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 is a schematic diagram of an implementation environment of a song recall method provided by an exemplary embodiment of the present application;

[0019] Figure 2 is a flow chart of a song recall method provided by an exemplary embodiment of the present application;

[0020] Figure 3 is a flowchart of a playlist recall process provided by an exemplary embodiment of the present application;

[0021] Figure 4 is a flowchart of a process for determining a target recall song provided by an exemplary embodiment of the present application;

[0022] Figure 5 is a flowchart of a process for determining a target recall song provided by another exemplary embodiment of the present application;

[0023] Figure 6 is a flowchart of a process for determining the degree of semantic relevance provided by an exemplary example of the present application;

[0024] Figure 7 is a flowchart of a process for determining a target recall song provided by yet another exemplary embodiment of the present application;

[0025] Figure 8 is a flowchart of a multi-channel recall process of a song provided by an exemplary embodiment of the present application;

[0026] Fig. 9 is a flowchart of a playlist recall process provided by another exemplary embodiment of the present application;

[0027] Fig.10 is a complete flow chart of a song recall process provided by an exemplary embodiment of the present application;

[0028] Fig.11 is a structural block diagram of a song recall device provided by an exemplary embodiment of the present application;

[0029] Fig.12 It is a schematic diagram of the structure of a server provided by an exemplary embodiment of the present application. DETAILED DESCRIPTION

[0030] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.

[0031] Music search engines can provide users with songs that match the query text based on the query text entered by the user. In related technologies, the server vectorizes and stores the features of the songs; during the song recall process, the query text is vectorized and the vector similarity between the vectorized query text and each song is calculated, thereby recalling songs that meet the vector similarity requirements.

[0032] However, the query text needs to calculate the vector similarity with a large number of songs stored in the server one by one, resulting in low efficiency of song recall and low accuracy of song recall directly based on vector similarity.

[0033] An embodiment of the present application provides a song recall method, which improves the efficiency and accuracy of song recall by recalling a playlist, narrowing the scope, and then recalling songs in the recalled playlist.

[0034] See also Figure 1 , Figure 11 is a schematic diagram of an implementation environment of a song recall method provided by an exemplary embodiment of the present application. The implementation environment includes a terminal 110 and a server 120.

[0035] The terminal 110 is installed with a music client, and the server 120 is a background server of the music client, which is used to provide song recall service.

[0036] The terminal 110 first displays the user interface of the music client, receives the query text input by the user, and then sends a song recall request containing the query text to the server 120 .

[0037] After receiving the song recall request sent by the terminal 110, the server 120 performs song recall and then feeds back the recall result to the terminal 110, which displays the recalled song in the user interface of the music client. The recall result includes the target recalled song determined by the server 120.

[0038] In the following embodiments, the song recall method is described by taking the server 120 as an example.

[0039] See also Figure 2 , Figure 2 1 is a flowchart of a song recall method provided by an exemplary embodiment of the present application. The method comprises the following steps.

[0040] Step 201, receiving a song recall request from a client, where the song recall request includes a query text.

[0041] In some embodiments, the query text is text content input by the user on the client, which can represent the user's recall demand. For example, the user inputs "Mid-Autumn Festival songs".

[0042] Optionally, the query text may be natural language text, such as text entered by a user in a search box of a client by spelling, handwriting, etc., or the query text may be text obtained by a user through voice input and conversion.

[0043] Step 202, recall the playlist based on the query text and the playlist information to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text.

[0044] In some embodiments, a playlist is a list of songs, which can be a collection of songs created by a user in a music application. The songs in the playlist have common features, such as the same song theme, style, or applicable scene. The common features can be reflected in the playlist information such as the playlist name and the playlist tag.

[0045] Optionally, the playlist information may include a series of attribute information used to describe the playlist, such as the playlist name, playlist logo, playlist image, playlist introduction, playlist comment, playlist tag, etc. The playlist tag may include a tag that describes the type, theme, style, applicable scene, emotion expressed, language used, source, corresponding era, etc. of the playlist. The embodiments of the present application do not limit the specific content of the playlist information.

[0046] Optionally, the query text may be described in a variety of languages ​​such as Chinese, English, Japanese, etc. Optionally, the query text may directly describe the song information of the song, such as the song name, singer name, album name, etc., or may generally describe the song requirements, such as the style, theme, applicable scene, etc. of the required song.

[0047] Step 203, recall songs in the recalled song list based on the query text to obtain target recalled songs, and the song information of the target recalled songs is semantically related to the query text.

[0048] In some embodiments, semantic relevance refers to the song information and the query text having similar characteristics in the deep textual meaning, which is different from the literal text matching. For example, the word "sad love song" and the word "emotion" can match literally, but the meanings of the words are different.

[0049] Optionally, the song information may include the song title, song identifier, song tag, song comment, etc. The embodiment of the present application does not limit the specific content of the song information.

[0050] In the embodiment of the present application, the server first recalls the song list whose song list information is related to the query text according to the correlation between the query text and the song list information of the song list, excludes the song list that is not related to the query text, obtains the recalled song list, narrows the range of songs, and improves the efficiency of the server when recalling songs. Since the songs in the recalled song list are more likely to be related to the query text, the server recalls the songs in the recalled song list and obtains the target recalled songs that are semantically related to the query text, thereby improving the recall accuracy.

[0051] In some embodiments, the playlist recall may adopt at least one of two recall methods, including keyword matching and semantic recall. The specific steps are as follows.

[0052] Method 1, keyword matching: keyword matching is performed based on the query text and the playlist information to obtain a recalled playlist. The playlist information of the recalled playlist contains the target keyword, and the target keyword is determined based on the query text.

[0053] In a possible implementation, the server extracts a keyword from the query text, matches the keyword with the playlist information, and recalls the playlist that contains the keyword in the playlist information.

[0054] The above implementation method makes it difficult to recall playlists whose playlist information contains synonyms, and it is also difficult to recall playlists that are related to the query text but whose playlist information does not contain the keyword, resulting in a low playlist recall rate.

[0055] In an illustrative example, the query text entered by the user is "Mid-Autumn Festival songs", which aims to recall songs that fit the Mid-Autumn Festival scene. Among them, synonyms of the word Mid-Autumn Festival include Mid-Autumn Festival, Mid-Autumn Festival, Qiu Xi, August Festival, and Mid-August. The above implementation method can recall the song list containing the word Mid-Autumn Festival in the song list information, but cannot recall the song list containing the keywords Mid-Autumn Festival, Mid-Autumn Festival, Qiu Xi, August Festival, and Mid-August. In addition, the Mid-Autumn Festival is also related to the full moon, rice dumplings, homesickness and other contents, involving culture, customs, emotional connotations and some symbolic factors, and the keywords contained in the query text can only represent limited content. It is difficult to further expand the scope of the song list recall through simple matching of keywords, resulting in the recalled song list being not rich enough and difficult to meet user needs.

[0056] Optionally, the server may expand the scope of keywords related to the query text and improve the richness of the recalled playlist based on the correspondence between keywords and entities, and the connection between entities.

[0057] See also Figure 3 , Figure 3 This is a flowchart of a song list recall process provided by an exemplary embodiment of the present application. The process includes the following steps.

[0058] Step 301 : determining a first keyword in a query text, where the first keyword is a word in the query text that represents a recall requirement.

[0059] Optionally, the server first performs word segmentation processing on the query text, analyzes the vocabulary types involved in the query text, removes stop words, and then extracts keywords representing the recall demand from the vocabulary obtained after the word segmentation processing. For example, the query text is "Mid-Autumn Festival songs", in which the word Mid-Autumn Festival is a keyword representing the recall demand, and the word song cannot reflect the recall demand. The embodiment of the present application does not limit the method for determining keywords in the query text.

[0060] Step 302: determine the first keyword and the second keyword related to the first keyword entity as target keywords.

[0061] Optionally, the server may establish an entity relationship library for recording the corresponding relationships between keywords and entities, and the association relationships between entities.

[0062] In a possible implementation, the server first determines a first entity corresponding to the first keyword, then determines a second entity associated with the first entity, obtains a second keyword corresponding to the second entity, and determines it as the target keyword.

[0063] Optionally, the server may first recall the playlist based on the first keyword. If the amount of playlists recalled by the first keyword is less than a quantity threshold, the server may recall the playlist based on the first keyword and the second keyword. If the amount of playlists recalled by the first keyword is greater than or equal to the quantity threshold, the server may no longer recall the playlist based on the second keyword.

[0064] Step 303: determine the playlist containing the target keyword in the playlist information as a recalled playlist.

[0065] Exemplarily, when the target keyword is hometown, the server determines a playlist named "Missing Hometown" as a recalled playlist, or determines a playlist whose playlist introduction contains the word "hometown" as a recalled playlist, or determines a playlist whose playlist tag contains the word "hometown" as a recalled playlist.

[0066] Method 2, semantic recall: semantic recall is performed based on the query text and the playlist information to obtain a recalled playlist, where the playlist information is semantically related to the query text.

[0067] In a possible implementation, the server vectorizes and stores the playlist information of the playlist. During the playlist recall process, the query text is vectorized, and the vector similarity between the vectorized query text and each playlist is calculated, so as to recall the playlists whose vector similarity meets the conditions, for example, the playlists whose vector similarity reaches the similarity threshold are recalled.

[0068] Optionally, when the playlist information contains different types of playlist information such as text information and picture information, the server can first textually represent the picture information, and then combine the text information with the textualized picture information to obtain the playlist information in text form, so as to determine the degree of semantic relevance between the playlist information and the query text.

[0069] In the embodiment of the present application, the server can recall the playlist by keyword matching, or can obtain the recalled playlist by semantic recall. Among them, the playlist that meets the semantics of the query text can be recalled by semantic recall, so that the recalled playlist is consistent with the user's query intention. The problem of incorrect recall results due to semantic similarity can be alleviated by keyword matching, and the accuracy of playlist recall can be improved. By combining semantic recall and keyword matching, it can ensure that the playlist related to the query text is fully recalled, and the accuracy of the recalled playlist can be further improved.

[0070] Among them, in the keyword matching recall method, the server first extracts the first keyword representing the user's recall demand from the query text to avoid other words in the query text interfering with the playlist recall, and then queries the target keyword related to the first keyword entity. With the correlation between entities, the server can fully recall the playlist related to the query text. Finally, the server directly recalls the playlist containing the target keyword to improve the correlation between the recalled playlist and the query text.

[0071] In some embodiments, there may be some duplicate songs in different recalled playlists, which may easily increase the computational overhead of the server for song recall and cause the server to recall duplicate songs. When the server recalls songs, it needs to process the recalled playlist first and obtain a list of candidate songs to improve recall efficiency.

[0072] See also Figure 4 , Figure 4 1 is a flow chart of a process for determining a target recall song provided by an exemplary embodiment of the present application. The process includes the following steps.

[0073] Step 401, perform song aggregation processing on the recalled song list to obtain a candidate song list, and the candidate song list includes candidate recalled songs.

[0074] The candidate recall songs exist in one or at least two recall songs, and the candidate recall songs in the candidate song list are different.

[0075] Optionally, the server may determine song information of candidate recalled songs during song aggregation processing.

[0076] For example, recalled song list 1 includes song A, song B and song C, recalled song list 2 includes song D, song B and song E, and recalled song list 3 includes song A, song E and song F. After the server performs song aggregation processing on recalled song list 1, recalled song list 2 and recalled song list 3, the obtained candidate song list includes song A, song B, song C, song D, song E and song F, as well as song information of each song.

[0077] Step 402, performing song recall based on the query text and the song information of the candidate recalled songs to obtain the target recalled songs.

[0078] In one possible implementation, the server inputs the query text and the song information of the candidate recalled songs into a relevance scoring model to obtain the semantic relevance between the candidate recalled songs and the query text, and then determines the target recalled song from the candidate recalled songs based on the semantic relevance.

[0079] Optionally, since the candidate recalled songs are derived from the recalled playlist, the features of the candidate recalled songs can also be represented by playlist related information, such as Figure 5 As shown, the process of determining the target recall song may also include the following steps:

[0080] Step 402A, based on the recalled song list to which the candidate recalled song belongs, determine the song list related information of the candidate recalled song.

[0081] In some embodiments, the playlist-related information is used to characterize some characteristic information related to the playlist to which the candidate recalled song belongs.

[0082] In a possible implementation, the server merges the playlist information of the recalled playlist to which the candidate recalled song belongs to obtain the playlist related information. For example, the server merges the playlist name, playlist introduction, playlist tag and other information of the recalled playlist to which the candidate recalled song belongs.

[0083] Optionally, the playlist related information may include the playlist name of the playlist to which the candidate recalled song belongs, and the frequency of occurrence of the candidate recalled song in the recalled playlist. The higher the frequency of occurrence, the higher the possibility that the candidate recalled song is related to the query text. In the case that the playlist name of the recalled playlist to which the candidate recalled song belongs is semantically related to the query text, the candidate recalled song may be related to the query text.

[0084] In an illustrative example, song A appears in recalled playlists named First Playlist, Second Playlist and Third Playlist. The server determines that the playlist names of the recalled playlists to which the candidate recalled song belongs are: First Playlist Second Playlist Third Playlist, and the frequency of its appearance in the recalled playlists is 3.

[0085] Step 402B, based on the query text, the song information of the candidate recalled songs and the playlist-related information of the candidate recalled songs, the candidate recalled songs are recalled to obtain the target recalled songs.

[0086] In one possible implementation, the server semantically represents the query text, the song information of the candidate recalled songs, and the playlist-related information of the candidate recalled songs, and then inputs the representation result into a relevance evaluation model to obtain the semantic relevance between the candidate recalled songs and the query text, and then determines the target recalled songs from the candidate recalled songs based on the semantic relevance.

[0087] The following uses the song list related information including the song list name of the recalled song list to which the candidate recalled song belongs and the frequency of occurrence of the candidate recalled song in the recalled song list as an example to illustrate the process of recalling the candidate recalled song. The following sub-steps are included.

[0088] Sub-step 1, extracting text features from the query text, the song information of the candidate recalled songs, and the name of the recalled playlist to which the candidate recalled songs belong, to obtain text features.

[0089] Optionally, the server may concatenate the query text, the song information of the candidate recalled songs, and the name of the recalled playlist to which the candidate recalled songs belong, and input the concatenation result into a text representation model to extract text features and obtain text features.

[0090] Sub-step 2, concatenating the text features and the frequency features of the occurrence frequency to obtain concatenated features.

[0091] In some embodiments, since the numerical value of the occurrence frequency is discrete and easily affects the semantic relevance of the relevance assessment model output, the server does not directly combine the occurrence frequency with the query text, the song information of the candidate recalled songs, and the name of the recalled playlist to which the candidate recalled songs belong, but first determines the frequency characteristics of the occurrence frequency.

[0092] For example, the difference in the impact of an occurrence frequency of 20 and an occurrence frequency of 21 on the relevance is small. When the occurrence frequency is directly used to input the relevance evaluation model, the relevance evaluation model is likely to magnify the difference between the value 20 and the value 21 in the process of determining the semantic relevance, resulting in inaccurate semantic relevance determined by the model.

[0093] Sub-step 3, inputting the concatenated features into the relevance evaluation model to obtain the semantic relevance between the candidate recalled songs and the query text.

[0094] Optionally, the semantic relevance may include three types: strong relevance, weak relevance, and no relevance, or may include more levels of relevance.

[0095] Sub-step 4, determining the target recall song from the candidate recall songs based on the degree of semantic relevance.

[0096] Optionally, when the semantic relevance may include strong relevance, weak relevance, and no relevance, the server may determine songs with a strong semantic relevance as target recall songs from the candidate recall songs.

[0097] Optionally, the server may also sort the candidate recall songs according to the degree of semantic relevance, and determine the top n songs as target recall songs, where n is a positive integer.

[0098] In an illustrative example, Figure 6As shown, the server performs text concatenation on the query text 601, the song name 602, the playlist names 1 to m, and the top k song reviews 603 (m, k are positive integers), and then inputs them into the TextCNN (Text Convolutional Neural Networks) model to extract text features and obtain text features 604. Then, the server concatenates the text features 604 and the frequency representation 605 to obtain concatenated features 606, and inputs the concatenated features 606 into the feedforward layer 607 to obtain the semantic relevance 608.

[0099] Optionally, after determining the candidate song list and the semantic relevance between the candidate recall songs and the query text, the server can directly determine the target recall songs based on the semantic relevance, or it can comprehensively evaluate the quality of the candidate recall songs based on the popularity of the songs and then determine the target recall songs.

[0100] like Figure 7 As shown, the process of determining the target recall song also includes the following steps:

[0101] Step 701, based on the song popularity of the candidate recalled songs, determine the popularity score of the candidate recalled songs.

[0102] Optionally, the popularity of a song can be represented by popularity indicators such as the number of collections, shares, plays, downloads, comments, and likes of the song.

[0103] In a possible implementation, the server stores the correspondence between the heat score and the heat index, and determines the corresponding heat score according to the interval of the heat index of the song. For example, when the number of song plays is less than 100, the heat score is determined to be 0, when the number of song plays is greater than 100 but less than 10,000, the heat score is determined to be 0.1, when the number of song plays is greater than 10,000 but less than 100,000, the heat score is determined to be 0.9, and when the number of song plays is greater than 100,000, the heat score is determined to be 1.

[0104] In another possible implementation, the server combines at least two popularity indicators to determine the popularity score. For example, the server may first determine a first popularity score based on the number of plays, then determine a second popularity score based on the number of collections, and then determine the weighted average of the first popularity score and the second popularity score as the popularity score of the candidate song to be recalled.

[0105] Step 702, determining a comprehensive recall score of the candidate recalled songs based on the semantic relevance score and the heat score corresponding to the semantic relevance degree.

[0106] Optionally, the server stores a correspondence between the semantic relevance degree and the semantic relevance score, and determines the semantic relevance score corresponding to the semantic relevance degree by querying the correspondence.

[0107] In a possible implementation, the server determines the sum of the semantic relevance score and the popularity score as the comprehensive recall score of the candidate recalled song.

[0108] In another possible implementation, the server sets a semantic relevance score corresponding to a first scoring weight, and sets a heat score corresponding to a second scoring weight, wherein the first scoring weight is greater than the second scoring weight, and then performs weighted calculation on the semantic relevance score and the heat score to obtain a comprehensive recall score.

[0109] Optionally, the server may also determine the comprehensive recall score of the candidate recalled songs based on the semantic relevance score, heat score and other scores corresponding to the semantic relevance. For example, the user preference score. The user preference score may be determined based on the similarity between the songs in the user's favorites and the candidate recalled songs in terms of song style, song type and other song features, or based on the similarity between the songs whose playback volume by the user in the historical time period is greater than the playback volume threshold and the candidate recalled songs in terms of song features.

[0110] Step 703, determining a target recall song from the candidate recall songs based on the comprehensive recall score.

[0111] In a possible implementation, the server sorts the candidate recall songs according to the comprehensive recall scores, and then determines the top h candidate recall songs as target recall songs, where h is a positive integer.

[0112] Optionally, the number of target recall songs can be a fixed value set by the server, or can be dynamically adjusted according to the browsing habits of the user. For example, if the user is accustomed to browsing only a small number of target recall songs after the song recall, the server reduces the number of target recall songs, and if the user is accustomed to browsing a large number of target recall songs after the song recall, the server increases the number of target recall songs.

[0113] In the embodiment of the present application, song aggregation processing is used to screen candidate recall songs to avoid repeated songs in different recall playlists interfering with song recall, thereby improving song recall efficiency.

[0114] In addition to recalling songs based on query text and song information, the server can also add playlist-related information to enhance song features and improve the accuracy of song recall.

[0115] The server uses the playlist name of the recalled playlist to which the candidate recalled song belongs and the frequency of occurrence of the candidate recalled song in the recalled playlist as playlist related information. Since the frequency of occurrence is not suitable for being represented as a text feature through text feature extraction, the server extracts text features from the playlist name of the recalled playlist to which the candidate recalled song belongs, the query text, and the song information of the candidate recalled song, and also represents the frequency of occurrence as a frequency feature, and then performs feature splicing, which is conducive to improving the accuracy of the semantic relevance output by the relevance evaluation model, thereby improving the accuracy of song recall when determining the target recalled song based on the semantic relevance.

[0116] In addition, the server can also recall songs based on the popularity scores corresponding to the popularity of the songs, and improve the quality of the recalled songs by combining the semantic relevance scores and the popularity scores.

[0117] In some embodiments, since the target recalled songs are obtained from the recalled playlist through semantic recall, the server may fail to recall some songs whose song information has matching vocabulary with the query text.

[0118] Optionally, the server adds songs whose keywords match between the song information and the query text to the candidate song list. In order to exclude the influence of synonyms, the server adds songs whose entity words match between the song information and the query text to the candidate song list.

[0119] See also Figure 8 , Figure 8 1 is a flowchart of a multi-channel song recall process provided by an exemplary embodiment of the present application. The process includes the following steps.

[0120] Step 801, receiving a song recall request from a client, where the song recall request includes a query text.

[0121] Step 802, recall the playlist based on the query text and the playlist information to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text.

[0122] Step 803, perform song aggregation processing on the recalled song list to obtain a candidate song list, which includes candidate recalled songs.

[0123] The specific description of step 801 to step 802 may refer to step 201 to step 202 , and the specific description of step 803 may refer to step 401 .

[0124] Step 804: perform entity recognition on the query text to obtain entity words in the query text.

[0125] Among them, entity recognition refers to named entity recognition (Named Entity Recognition, NER). The embodiment of the present application does not limit the specific method of entity recognition. For example, the query text is "Mid-Autumn Festival songs", and the server determines that Mid-Autumn Festival is an entity word.

[0126] It should be noted that step 804 can be executed synchronously with step 801 .

[0127] Step 805 , performing entity recall based on the entity words and the song information of the songs to obtain entity recalled songs, wherein the song information of the entity recalled songs includes the entity words.

[0128] In some embodiments, entity recall refers to recalling songs that contain entity words in song information.

[0129] In a possible implementation, the server performs vocabulary matching on entity words and song information, and determines songs whose song information contains entity words as entity recall songs.

[0130] For example, the query text is "Mid-Autumn Festival songs". The server determines that Mid-Autumn Festival is an entity word, and then determines the songs whose song titles contain the word Mid-Autumn Festival as entity recall songs. Alternatively, the server determines the word Zhongqiu, which is synonymous with Mid-Autumn Festival, as an entity word, and obtains entity recall songs whose song titles contain the word Zhongqiu.

[0131] Step 806, adding the entity recalled song to the candidate song list.

[0132] Optionally, the server may set the entity recall song to have the highest semantic relevance so that the target recall song can be determined based on the semantic relevance. For example, when the semantic relevance includes strong relevance, weak relevance, and no relevance, the semantic relevance of the entity recall song is strong relevance, and the semantic relevance score corresponding to the strong relevance is obtained. Then, based on the semantic relevance score and the heat score, the comprehensive score of the entity recall song in the candidate song list is determined, thereby determining the target recall song.

[0133] Optionally, in the case that an entity recall song already exists in the candidate song list, the server may adjust the semantic relevance of the entity recall song to the highest semantic relevance.

[0134] Step 807, performing song recall based on the query text and the song information of the candidate recalled songs in the candidate song list to obtain the target recalled songs.

[0135] The candidate recalled songs include entity recalled songs. For the specific description of song recall, please refer to the above embodiment.

[0136] In the embodiment of the present application, on the one hand, the server adopts the method of first recalling the playlist, that is, first recalling the playlist, and then recalling the songs in the recalled playlist; on the other hand, by identifying the entity words in the query text, entity recall is implemented, which makes up for the problem that the method of first recalling the playlist may fail to recall the songs whose song information can literally match the query text, and adds the songs whose song information contains entity words to the candidate song list, so that the entity recalled songs can participate in the subsequent scoring, which is conducive to improving the accuracy of song recall. By combining the playlist recall method and the entity recall method, multi-way recall is implemented, and the quality of the recalled songs is further improved.

[0137] In some embodiments, when the query text is suitable for semantic recall, the server first recalls the playlist to solve the problem of recalling songs based on the vector similarity between the song information and the query text, which causes the recall efficiency and accuracy to decrease. It can be seen that the server needs to determine in advance whether the query text is suitable for semantic recall.

[0138] See also Fig. 9 , Fig. 9 This is a flowchart of a song list recall process provided by an exemplary embodiment of the present application. The process includes the following steps.

[0139] Step 901 , input the query text into a query type classification model to obtain the query type of the query text, where the query type is used to characterize whether the query text is suitable for semantic recall.

[0140] Optionally, the query type may be represented by two numerical values. For example, when the query type is applicable to semantic recall, 1 is used to represent the query type, and when the query type is not applicable to semantic recall, 0 is used to represent the query type.

[0141] Exemplarily, the server inputs the query text into the BERT (Bidirectional Encoder Representations from Transformers) model and obtains 0 or 1 output by the BERT model, thereby determining whether the query text is suitable for semantic recall. During the training process of the BERT model, the server inputs the sample query text into the BERT model, obtains the query type output by the BERT model, and then updates the model parameters of the BERT model in combination with the sample query type corresponding to the sample query text, so that the BERT model can accurately predict the query type of the query text during application.

[0142] Step 902, when the query type represents that the query text is suitable for semantic recall, the playlist is recalled based on the query text and the playlist information to obtain a recalled playlist.

[0143] The specific implementation method of playlist recall can refer to the above embodiment, which will not be described in detail in this embodiment.

[0144] Optionally, when the query type representation query text is not suitable for semantic recall, the server recalls songs containing the keyword in the playlist information by accurately matching the keyword contained in the query text. For example, when the user enters the name of singer A, the server recalls songs whose singer name is singer A.

[0145] In the embodiment of the present application, by inputting the query text into the query type classification model and determining the query type of the query text, the server can determine the appropriate time to recall the playlist first and narrow the scope of song recall, which is beneficial to improving the accuracy of song recall and avoiding a decrease in song recall rate due to improper use of the method.

[0146] See also Fig.10 , Fig.10 1 is a complete flow chart of a song recall process provided by an exemplary embodiment of the present application. The process includes the following steps.

[0147] Step 1001: Input the query text into the BERT model to obtain the query type of the query text, where the query type is used to characterize whether the query text is suitable for semantic recall.

[0148] Among them, the query type is 0, which indicates that it is not applicable to semantic recall, and the process execution ends. The query type is 1, which indicates that it is applicable to semantic recall, and step 1002 is executed.

[0149] Step 1002, when the query type represents that the query text is suitable for semantic recall, the playlist is recalled based on the query text and the playlist information to obtain a recalled playlist.

[0150] Exemplarily, the server recalls 100 recalled playlists.

[0151] Step 1003, perform song aggregation processing on the recalled song list to obtain a candidate song list, which includes candidate recalled songs.

[0152] The server determines the semantic relevance of each candidate recall song to the query text and its corresponding semantic relevance score.

[0153] Step 1004: perform entity recognition on the query text to obtain entity words in the query text.

[0154] Among them, step 1001 and step 1004 can be executed simultaneously.

[0155] Step 1005, performing entity recall based on the entity words and the song information of the songs to obtain entity recalled songs, wherein the song information of the entity recalled songs includes the entity words.

[0156] Step 1006, adding the entity recall songs to the candidate song list, and sorting the candidate recall songs according to the semantic relevance score and the popularity score to determine the target recall songs.

[0157] Among them, the popularity score can be determined based on the popularity of the song.

[0158] The server determines a candidate song list by merging the songs obtained in step 1003 and step 1005, and determines the top q songs in the candidate song list as target recall songs, where q is a positive integer.

[0159] It should be noted that before obtaining user data related to user habits and during the process of obtaining user data related to user habits, this application can display a prompt interface, pop-up window or output voice prompt information. The prompt interface, pop-up window or voice prompt information is used to prompt the user that its relevant data is currently being collected, so that this application only starts to execute the relevant steps of obtaining user data related to the prompt interface or pop-up window after obtaining the user's confirmation operation on the prompt interface or pop-up window. Otherwise (that is, when the user's confirmation operation on the prompt interface or pop-up window is not obtained), the relevant steps of obtaining user data related to the user are terminated, that is, the user's relevant data is not obtained. In other words, the information involved in this application (including but not limited to user device information, user personal information, etc., user corresponding operation data), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.

[0160] See also Fig.11 , Fig.11 1 is a structural block diagram of a song recall device provided by an exemplary embodiment of the present application. The device includes the following modules.

[0161] The request receiving module 1101 is used to receive a song recall request from a client, wherein the song recall request includes a query text;

[0162] A playlist recall module 1102 is used to recall a playlist based on the query text and the playlist information of the playlist to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text;

[0163] The song recall module 1103 is used to recall songs in the recalled song list based on the query text to obtain target recalled songs, where song information of the target recalled songs is semantically related to the query text.

[0164] Optionally, the song list recall module 1102 is further used to:

[0165] Perform keyword matching based on the query text and the playlist information of the playlist to obtain the recalled playlist, wherein the playlist information of the recalled playlist includes a target keyword, and the target keyword is determined based on the query text;

[0166] Semantic recall is performed based on the query text and the playlist information of the playlist to obtain the recalled playlist, wherein the playlist information of the recalled playlist is semantically related to the query text.

[0167] Optionally, the song list recall module 1102 is further used to:

[0168] Determine a first keyword in the query text, where the first keyword is a word in the query text that represents a recall demand;

[0169] Determine the first keyword and a second keyword related to the first keyword entity as the target keyword;

[0170] The playlist containing the target keyword in the playlist information is determined as the recalled playlist.

[0171] Optionally, the song recall module 1103 is further used to:

[0172] Perform song aggregation processing on the recalled song list to obtain a candidate song list, wherein the candidate song list includes candidate recalled songs;

[0173] Song recall is performed based on the query text and the song information of the candidate recalled songs to obtain the target recalled songs.

[0174] Optionally, the device further includes an information determination module, configured to:

[0175] Based on the recalled song list to which the candidate recalled song belongs, determining the song list related information of the candidate recalled song;

[0176] Optionally, the song recall module 1103 is further used to:

[0177] Based on the query text, the song information of the candidate recalled songs and the playlist-related information of the candidate recalled songs, the candidate recalled songs are recalled to obtain the target recalled songs.

[0178] Optionally, the playlist-related information includes the playlist name of the recalled playlist to which the candidate recalled song belongs, and the frequency of occurrence of the candidate recalled song in the recalled playlist;

[0179] The song recall module 1103 is further used for:

[0180] Performing text feature extraction on the query text, the song information of the candidate recalled songs, and the name of the recalled playlist to which the candidate recalled songs belong, to obtain text features;

[0181] Performing feature splicing on the text feature and the frequency feature of the occurrence frequency to obtain a spliced ​​feature;

[0182] Inputting the splicing features into a relevance evaluation model to obtain the semantic relevance between the candidate recalled songs and the query text;

[0183] The target recall song is determined from the candidate recall songs based on the semantic relevance.

[0184] Optionally, the device further comprises a score determination module, configured to:

[0185] Determining a popularity score of the candidate recalled song based on the song popularity of the candidate recalled song;

[0186] The song recall module 1103 is further used for:

[0187] Determining a comprehensive recall score of the candidate recalled song based on the semantic relevance score corresponding to the semantic relevance degree and the popularity score;

[0188] The target recall song is determined from the candidate recall songs based on the comprehensive recall score.

[0189] Optionally, the device further includes a song adding module, which is used to:

[0190] Performing entity recognition on the query text to obtain entity words in the query text;

[0191] Perform entity recall based on the entity word and the song information of the song to obtain an entity recall song, wherein the song information of the entity recall song includes the entity word;

[0192] The entity recall song is added to the candidate song list.

[0193] Optionally, the device further comprises a type classification module, configured to:

[0194] Inputting the query text into a query type classification model to obtain a query type of the query text, wherein the query type is used to characterize whether the query text is suitable for semantic recall;

[0195] The song list recall module 1102 is also used for:

[0196] In a case where the query type represents that the query text is suitable for semantic recall, a playlist recall is performed based on the query text and the playlist information of the playlist to obtain the recalled playlist.

[0197] In the embodiment of the present application, the server first recalls the song list whose song list information is related to the query text according to the correlation between the query text and the song list information of the song list, excludes the song list that is not related to the query text, obtains the recalled song list, narrows the range of songs, and improves the efficiency of the server when recalling songs. Since the songs in the recalled song list are more likely to be related to the query text, the server recalls the songs in the recalled song list and obtains the target recalled songs that are semantically related to the query text, thereby improving the recall accuracy.

[0198] It should be noted that the device provided in the above embodiment is only illustrated by the division of the above functional modules. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiment belong to the same concept, and the implementation process thereof is detailed in the method embodiment, which will not be repeated here.

[0199] Please refer to Fig.12 , which shows a schematic diagram of the structure of a server provided by an exemplary embodiment of the present application. Specifically, the server 1200 includes a central processing unit (CPU) 1201, a system memory 1204 including a random access memory 1202 and a read-only memory 1203, and a system bus 1205 connecting the system memory 1204 and the central processing unit 1201. The server 1200 may also include a basic input / output system (I / O system) 1206 that helps transmit information between various devices in the computer, and a large-capacity storage device 1207 for storing an operating system 1213, application programs 1214 and other program modules 1215, and the application programs 1214 may include an application program with a song recall function.

[0200] In some embodiments, the basic input / output system 1206 includes a display 1208 for displaying information and an input device 1209 such as a mouse and a keyboard for user inputting information. The display 1208 and the input device 1209 are connected to the central processing unit 1201 through an input / output controller 1210 connected to the system bus 1205. The basic input / output system 1206 may also include an input / output controller 1210 for receiving and processing inputs from a plurality of other devices such as a keyboard, a mouse, or an electronic stylus. Similarly, the input / output controller 1210 also provides output to a display screen, a printer, or other types of output devices.

[0201] The mass storage device 1207 is connected to the central processing unit 1201 through a mass storage controller (not shown) connected to the system bus 1205. The mass storage device 1207 and its associated computer-readable media provide non-volatile storage for the server 1200. That is, the mass storage device 1207 may include a computer-readable medium (not shown) such as a hard disk or drive.

[0202] Without loss of generality, the computer-readable medium may include computer storage media and communication media. Computer storage media include volatile and non-volatile, removable and non-removable media implemented by any method or technology for storing information such as computer-readable instructions, data structures, program modules or other data. Computer storage media include random access memory (RAM), read-only memory (ROM), flash memory or other solid-state storage technology, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, cassette, tape, disk storage or other magnetic storage devices. Of course, those skilled in the art will know that the computer storage medium is not limited to the above. The above-mentioned system memory 1204 and mass storage device 1207 can be collectively referred to as memory.

[0203] The memory stores one or more programs, and the one or more programs are configured to be executed by one or more central processing units 1201. The one or more programs contain computer instructions for implementing the above-mentioned method. The central processing unit 1201 executes the one or more programs to implement the song recall method provided by the above-mentioned various method embodiments.

[0204] According to various embodiments of the present application, the server 1200 may also be connected to a remote computer on the network through a network such as the Internet. That is, the server 1200 may be connected to the network 1211 through a network interface unit 1212 connected to the system bus 1205, or the network interface unit 1212 may be used to connect to other types of networks or remote computer systems (not shown).

[0205] In addition, those skilled in the art will appreciate that the structure of the server shown in the above figures does not constitute a limitation on the server, and the server may include more or fewer components than shown in the figure, or a combination of certain components, or a different arrangement of components.

[0206] An embodiment of the present application also provides a computer-readable storage medium, which stores at least one computer instruction, and the at least one computer instruction is loaded and executed by a processor to implement the song recall method provided in the above embodiments.

[0207] Optionally, the computer readable storage medium may include: ROM, RAM, solid state drives (SSD) or optical disks, etc. Among them, RAM may include resistance random access memory (ReRAM) and dynamic random access memory (DRAM).

[0208] An embodiment of the present application also provides a computer program product, which includes computer instructions stored in a computer-readable storage medium; a processor of a server reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the server implements the song recall method provided in the above-mentioned embodiments.

[0209] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or may be accomplished by a program to guide the relevant hardware. The program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.

[0210] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.

Claims

1. A song recall method, characterized in that: The method comprises: receiving a song recall request from a client, wherein the song recall request includes a query text; Recalling a playlist based on the query text and the playlist information to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text; Songs are recalled in the recalled song list based on the query text to obtain target recalled songs, wherein song information of the target recalled songs is semantically related to the query text.

2. The method according to claim 1, characterized in that The step of recalling a playlist based on the query text and the playlist information to obtain a recalled playlist includes at least one of the following: Perform keyword matching based on the query text and the playlist information of the playlist to obtain the recalled playlist, wherein the playlist information of the recalled playlist includes a target keyword, and the target keyword is determined based on the query text; Semantic recall is performed based on the query text and the playlist information of the playlist to obtain the recalled playlist, wherein the playlist information of the recalled playlist is semantically related to the query text.

3. The method according to claim 2, characterized in that The performing keyword matching based on the query text and the playlist information of the playlist to obtain the recalled playlist includes: Determine a first keyword in the query text, where the first keyword is a word in the query text that represents a recall demand; Determine the first keyword and a second keyword related to the first keyword entity as the target keyword; The playlist containing the target keyword in the playlist information is determined as the recalled playlist.

4. The method according to any one of claims 1 to 3, characterized in that: The step of recalling songs in the recalled song list based on the query text to obtain target recalled songs includes: Perform song aggregation processing on the recalled song list to obtain a candidate song list, wherein the candidate song list includes candidate recalled songs; Song recall is performed based on the query text and the song information of the candidate recalled songs to obtain the target recalled songs.

5. The method according to claim 4, characterized in that The method further comprises: Based on the recalled song list to which the candidate recalled song belongs, determining the song list related information of the candidate recalled song; The step of performing song recall based on the query text and the song information of the candidate recalled songs to obtain the target recalled songs includes: Based on the query text, the song information of the candidate recalled songs and the playlist-related information of the candidate recalled songs, the candidate recalled songs are recalled to obtain the target recalled songs.

6. The method according to claim 5, characterized in that The playlist-related information includes the playlist name of the recalled playlist to which the candidate recalled song belongs, and the frequency of occurrence of the candidate recalled song in the recalled playlist; The step of performing song recall on the candidate recalled songs based on the query text, the song information of the candidate recalled songs, and the song list related information of the candidate recalled songs to obtain the target recalled songs includes: Performing text feature extraction on the query text, the song information of the candidate recalled songs, and the name of the recalled playlist to which the candidate recalled songs belong, to obtain text features; Performing feature splicing on the text feature and the frequency feature of the occurrence frequency to obtain a spliced ​​feature; Inputting the splicing features into a relevance evaluation model to obtain the semantic relevance between the candidate recalled songs and the query text; The target recall song is determined from the candidate recall songs based on the semantic relevance.

7. The method according to claim 6, characterized in that The method further comprises: Determining a popularity score of the candidate recalled song based on the song popularity of the candidate recalled song; The step of determining the target recall song from the candidate recall songs based on the semantic relevance comprises: Determining a comprehensive recall score of the candidate recalled song based on the semantic relevance score corresponding to the semantic relevance degree and the popularity score; The target recall song is determined from the candidate recall songs based on the comprehensive recall score.

8. The method according to claim 4, characterized in that The method further comprises: Performing entity recognition on the query text to obtain entity words in the query text; Perform entity recall based on the entity word and the song information of the song to obtain an entity recall song, wherein the song information of the entity recall song includes the entity word; The entity recall song is added to the candidate song list.

9. The method according to any one of claims 1 to 3, characterized in that: The method further comprises: Inputting the query text into a query type classification model to obtain a query type of the query text, wherein the query type is used to characterize whether the query text is suitable for semantic recall; The step of recalling a playlist based on the query text and the playlist information to obtain a recalled playlist includes: In a case where the query type represents that the query text is suitable for semantic recall, a playlist recall is performed based on the query text and the playlist information of the playlist to obtain the recalled playlist.

10. A song recall device, characterized in that: The device comprises: A request receiving module, used for receiving a song recall request from a client, wherein the song recall request includes a query text; A playlist recall module, used to recall a playlist based on the query text and the playlist information of the playlist, to obtain a recalled playlist, wherein the playlist information of the recalled playlist is related to the query text; The song recall module is used to recall songs in the recalled song list based on the query text to obtain target recalled songs, wherein the song information of the target recalled songs is semantically related to the query text.

11. A server, characterized in that: The server includes a processor and a memory, wherein the memory stores at least one computer instruction, and the at least one computer instruction is loaded and executed by the processor to implement the song recall method as described in any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one computer instruction, and the at least one computer instruction is loaded and executed by a processor to implement the song recall method as described in any one of claims 1 to 9.

13. A computer program product, characterized in that The computer program product includes computer instructions, which are stored in a computer-readable storage medium; a processor of a server reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the server implements the song recall method as described in any one of claims 1 to 9.