Method and device for recommending music and computing equipment

By obtaining the text format score of the music and using the text vectorization model to match the melody similarity, the problem that existing music recommendation systems are difficult to capture users' personalized preferences is solved, and efficient and accurate music recommendations are achieved.

CN119968625APending Publication Date: 2025-05-09BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202480003695.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-26
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

Existing music recommendation systems are difficult to accurately capture users' personalized music preferences, and traditional methods rely too much on the subjective perception of playlist creators and cannot effectively utilize the similarity of music melodies.

Method used

By obtaining the music scores in the text format of the music set, using the text vectorization model to convert the music melody into a vector representation, performing similarity matching, so as to recommend music with similar melody.

Benefits of technology

It realizes efficient capture of user music preferences, can accurately recommend music with similar melodies, and improves the accuracy and personalization of music recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119968625A_ABST
    Figure CN119968625A_ABST
Patent Text Reader

Abstract

The invention provides a method and device for recommending music, computing equipment, a computer readable storage medium and a computer program product. The method comprises the following steps: obtaining a music score in a text format of music in a music set, wherein the music score in the text format comprises text representation of melody of corresponding music; converting the text representation of the music score in the text format into a vector representation to generate a recommendation vector library of the music set; and based on the target music and the recommendation vector library, recommending music similar to the melody of the target music. In this way, according to the technical scheme disclosed by the invention, the melody information of the music is mined by using the music score of the text format of the music, so that music with similar melody can be efficiently recommended to the user.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and more particularly, to a method, apparatus, computing device, computer-readable storage medium, and computer program product for recommending music. Background Art

[0002] With the popularization of the Internet, a large amount of new music is released every day. With the rapid growth of the amount of music, users' tastes are becoming more personalized. Faced with such a huge amount of music content, how to accurately capture users' preferences and recommend other music with similar styles to their favorite music has become a major challenge that the current music recommendation system needs to solve. Summary of the invention

[0003] In view of this, the present disclosure provides a method, apparatus, computing device, computer-readable storage medium and computer program product for recommending music, which can obtain music scores in text format from a music collection, and then obtain vector representations related to the music melody based on a text vectorization model to perform similarity matching, thereby efficiently recommending music with similar melodies to users.

[0004] According to a first aspect of the present disclosure, a method for recommending music is provided, comprising: obtaining music scores in text format of music in a music collection, the music scores in text format including text representations of the melody of the corresponding music; converting the text representations of the music scores in text format into vector representations to generate a recommendation vector library for the music collection; and recommending music with similar melody to the target music based on the target music and the recommendation vector library.

[0005] According to a second aspect of the present disclosure, there is provided an apparatus for recommending music, comprising: a music score acquisition unit, configured to acquire music scores in text format of music in a music collection, the music scores in text format including text representations of the melody of the corresponding music; a recommendation vector library generation unit, configured to convert the text representations of the music scores in text format into vector representations to generate a recommendation vector library for the music collection; and a music recommendation unit, configured to recommend music similar to the melody of the target music based on the target music and the recommendation vector library.

[0006] According to a third aspect of the present disclosure, a computing device is provided, comprising: at least one processing unit; and at least one memory, wherein the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, wherein the instructions, when executed by the at least one processing unit, enable the computing device to execute the method as described in the first aspect of the present disclosure.

[0007] According to a fourth aspect of the present disclosure, a non-transitory computer storage medium is provided, comprising machine executable instructions, which, when executed by a device, cause the device to perform the method as described in the first aspect of the present disclosure.

[0008] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising machine executable instructions, which, when executed by a device, cause the device to perform the method as described in the first aspect of the present disclosure.

[0009] It should be understood that the invention summary is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The above and other objects, features and advantages of the embodiments of the present disclosure will become more easily understood through the following detailed description with reference to the accompanying drawings. In the accompanying drawings, various embodiments of the present disclosure will be described in an exemplary and non-limiting manner, in which:

[0011] Figure 1 A schematic diagram of an environment in which multiple embodiments of the present disclosure can be implemented is shown;

[0012] Figure 2 A schematic block diagram of a system for recommending music according to an embodiment of the present disclosure is shown;

[0013] Figure 3 A schematic diagram of a process for recommending music according to an embodiment of the present disclosure is shown;

[0014] Figure 4 A schematic block diagram showing an apparatus for recommending music according to an embodiment of the present disclosure; and

[0015] Figure 5 A block diagram of a device capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0016] The concept of the present disclosure will now be described with reference to the various exemplary embodiments shown in the accompanying drawings. It should be understood that the description of these embodiments is only to enable those skilled in the art to better understand and further implement the present disclosure, and is not intended to limit the scope of the present disclosure in any way. It should be noted that similar or identical reference numerals may be used in the figures where feasible, and similar or identical reference numerals may represent similar or identical elements. Those skilled in the art will understand from the following description that alternative embodiments of the structures and / or methods described herein may be adopted without departing from the principles and concepts of the present disclosure described.

[0017] In the context of the present disclosure, the term "including" and its various variations may be understood as open terms, which means "including but not limited to"; the term "based on" may be understood as "based at least in part on"; the term "one embodiment" may be understood as "at least one embodiment"; the term "another embodiment" may be understood as "at least one other embodiment". Other terms that may appear but are not mentioned here should not be interpreted or limited in a manner contrary to the concept on which the embodiments of the present disclosure are based, unless explicitly stated.

[0018] Music usually has a variety of different file formats or forms of expression, and these different forms of expression have their own characteristics and uses. For example, audio formats (such as MP3, WAV, FLAC, etc.) record the audio data, sampling frequency, number of channels, quantization accuracy and related metadata of the music; the Musical Instrument Digital Interface (MIDI) file format records the performance instructions but does not directly contain audio data.

[0019] In recent years, artificial intelligence technology has developed rapidly, and text vectorization models have been widely used in the field of natural language processing (NLP). Text vectorization models can convert text data into vector representations that include semantic information, making text data easier to process and analyze by computers.

[0020] At present, with the massive growth of music, users also show obvious personalized preferences. The current mainstream method for recommending music is usually based on song list recommendation, which relies too much on the subjective cognition of the creator of the song list, rather than the similarity of the music melody, that is, "the same tune of the music". Audio files or MIDI files are not in text format, so it is impossible to use an efficient text vectorization model to mine the melody information of music. The inventors noticed that the music score can intuitively show the melody, rhythm and other elements of music, especially the ABC music score is a simple computer music score format, which uses English letters and symbols to represent information such as notes, note durations and instruments.

[0021] To solve or alleviate the above problems and / or other potential problems, an embodiment of the present disclosure proposes a method for recommending music. The method obtains music scores in text format from a music collection, and then obtains vector representations related to the music melody based on a text vectorization model to perform similarity matching, thereby efficiently recommending music with similar melodies to users.

[0022] The basic principles and implementations of the present disclosure are described below with reference to the accompanying drawings. It should be understood that the exemplary embodiments given are only to enable those skilled in the art to better understand and implement the embodiments of the present disclosure, and are not intended to limit the scope of the present disclosure in any way.

[0023] Figure 1 1 shows a schematic diagram of an environment 100 in which various embodiments of the present disclosure can be implemented. Figure 1 As shown, the environment 100 includes a user terminal 101 and a network server 104 that can be operated by a user. Optionally, the user terminal 101 can specifically be a smart phone, a tablet computer, a portable computer, a smart TV, a car computer, a wearable device (for example, a smart bracelet, a smart watch), etc. with a display function. The user terminal 101 can install a browser or various applications (including system applications and third-party applications, for example, music applications, etc.). The application of the user terminal 101 can have favorites, etc. to indicate personal preferences and historical information. The user terminal can obtain information through applications, applets, web pages, etc., and display it on the display screen of the user terminal. The user terminal 101 can support text input, voice input, etc.

[0024] The network server 104 can be an independent physical network server, or a network server cluster or distributed system composed of multiple physical network servers. It can also be a cloud network server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, as well as big data and artificial intelligence platforms.

[0025] The user terminal 101 and the network server 104 can be connected to each other through a network. The network between the user terminal 101 and the network server 104 can be a wired network or a wireless network, for example, it can be a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a cellular data communication network, and other electronic networks that can realize information exchange functions.

[0026] like Figure 1 As shown, the user terminal 101 can communicate data, information, and services with the network server 104 via the network. In this example, the user transmits target music 102 associated with music recommendation to the network server 104 through the user terminal 101, and then the network server 104 returns a recommendation list 103 to the user terminal 101.

[0027] For example, when using a music application, a user may want the system to recommend some new music, and input "Hi, some music" through voice or text. Accordingly, the user terminal 101 transmits the target music 102 to the network server 104. The target music 102 may come from the user's favorites or historical information. After receiving the target music 102, the network server 104 returns a recommendation list 103 to the user terminal 101. The generation of the recommendation list 103 can be implemented according to an embodiment of the present disclosure, which will be described in detail below.

[0028] Figure 2FIG. 2 shows a schematic block diagram of a system 200 for recommending music according to an embodiment of the present disclosure. Figure 2 As shown, the system 200 may include an offline environment and an online environment. A user may interact with the online environment and retrieve data resources stored in the offline environment to obtain a final music recommendation.

[0029] In an offline environment, the music score in text format of each music in the music collection 210, such as ABC music score 211, can be obtained. ABC music score, i.e. ABC notation, is a shorthand form of computer notation, which is based on the text format of ASCII code. ABC music score uses letter symbols with ag, AG and z to represent corresponding notes and rests, and increases the added value of these notes through other elements, such as ascending, descending, ascending octave or descending octave, note length, key and decoration, etc. The music in the music collection 210 can have any known or future developed music format, such as audio format (WAV format, MP3 format, etc.), MIDI format, other music scores (such as simple music score, five-line music score, six-line music score), etc. In some embodiments, music in MIDI format can be converted into ABC music score. Alternatively, the audio format can be converted into MIDI format, and the MIDI format can be converted into ABC music score. Alternatively, the music score different from the ABC music score can be converted into the ABC music score.

[0030] In an offline environment, a corresponding vector representation 212 can also be generated according to the ABC score 211, for example, using a text-to-vector model that can convert text information into a vector that can express the semantics of the text. For example, a pre-trained vectorization model can be used to generate a corresponding vector representation 212 according to the ABC score 211. It is understandable that other models are also applicable, such as Word2Vec, GloVe, BERT, One Hot Model, Bag of Words Model, etc., and the present disclosure does not limit this.

[0031] In an offline environment, the similarity between each vector representation 212 and all other vector representations 212 may also be calculated. Optionally, the cosine similarity between the vector representations 212 may be calculated to find the closest vector representations 212 to each vector representation 212, and the vector representation 212 and the similarity information may be associated and saved in the recommended vector library 222.

[0032] Thus, a recommendation vector library 222 is constructed in an offline environment. On this basis, the user can obtain a recommendation list with similar melodies to the target music in an online environment. Specifically, the target music is provided by interacting with the music application 220. The target music can be one or more pieces of music specifically provided by the user, or can be a music favorite or music on-demand history saved by the user in the music application 220.

[0033] In some embodiments, the recommendation system 221 can search the recommendation vector library 222 according to the target song to determine the final recommendation list and provide it to the music application 220. Figure 3 The process of providing recommended content to users in an online environment is further described.

[0034] Figure 3 1 shows a flow chart of a method 300 for recommending music according to some embodiments of the present disclosure. In some embodiments, the method 300 may be performed by, for example, Figure 1 The method 300 is implemented by the network server 104 shown. It should be understood that the method 300 may also include additional actions not shown and / or may omit the actions shown, and the scope of the present disclosure is not limited in this respect.

[0035] like Figure 3 As shown, in box 310, method 300 may include: obtaining music scores in text format of music in the music collection, the music scores in text format including text representations of the melody of the corresponding music. In some embodiments, the music scores in text format may be ABC music scores. In some embodiments, a variety of different file formats or representations of music may be obtained, such as audio formats (e.g., MP3, WAV, etc.), MIDI formats, etc., staves and ABC music scores, etc. Among them, the ABC music score is in plain text format and can record melody-related information of the music.

[0036] In some embodiments, the music score in text format can be converted from MIDI files. For example, the MIDI file to be converted can be exported to ABC music score form using audio processing software. In some embodiments, the music score in text format can be converted from the original audio file of the music to a MIDI file and then converted. In some embodiments, the music score in text format can also be converted from other music scores, such as five-line and six-line staves.

[0037] In block 320, method 300 may include: converting the text representation of the music score in text format into a vector representation to generate a recommended vector library for the music collection. In some embodiments, the text representation of each music in the music collection may be converted into a vector representation using a vectorization model. Then, the similarity (e.g., cosine similarity) between the vector representation of each music and the vector representation of other music in the music collection may be calculated, and the vector representation of each music and the similarity with at least one other music may be associated and saved in the recommended vector library.

[0038] In some embodiments, the data to be stored in the recommendation vector library can also be further processed. Optionally, the initial association set containing the similarity and the corresponding vector representation can be determined first based on the size of the similarity. For example, other music can be sorted based on the similarity for each piece of music, and the relationship between each piece of music and the first N most similar other music can be saved in the initial association set, where N is a positive integer. Then, the initial association set can be filtered, sorted and re-sorted, and further data processing operations can be performed. For example, a threshold value can be set to k, and for each piece of music, only similar music with a similarity greater than k is retained, and then sorted from high to low according to the similarity. Finally, the initial association set after the data processing operation can be saved in the recommendation vector library for subsequent efficient calls and queries.

[0039] Table 1 below shows exemplary similarity entries between music stored in the recommendation vector library 222 , each entry including a plurality of songs that are most similar and meet a similarity threshold, and are sorted from high to low.

[0040] Table 1 Music similarity list

[0041]

[0042] In block 330, method 300 may include: based on the target music and the recommendation vector library, recommending music with a melody similar to the target music. Thus, a recommendation list may be displayed on the user terminal. The target music may be one or more pieces of music specifically provided by the user, or may be a music favorite or music on-demand history saved by the user in a music application. In some embodiments, the vector representation of the target music and the associated stored music may be retrieved from the recommendation vector library, and the associated stored music may be determined as the recommended music.

[0043] In some embodiments, when the recommendation vector library does not include the vector representation of the target music, an entry of the target music can be added to the recommendation vector library according to the method for establishing the recommendation vector library, and the association information of the similarity between the target music and at least one other music can be saved under the entry. In some embodiments, the similarity of the newly added target music can also be synchronized to the entries of other music similar to it, so that the newly added music can be recommended as similar music to other music, so as to ensure the efficiency and accuracy of the recommendation vector library.

[0044] References Figures 1 to 3 An exemplary embodiment of the present disclosure is described. Compared with the existing music recommendation scheme, the music recommendation scheme of the present disclosure obtains the music scores in text format from the music collection, and then obtains the vector representation related to the music melody based on the text vectorization model to perform similarity matching, so as to mine the melody information in the music through the music scores, and recommend music with similar melody to users more accurately and efficiently.

[0045] Figure 4 FIG. 4 is a schematic block diagram of an apparatus 400 for recommending music according to an embodiment of the present disclosure. Figure 4 As shown, the device 400 includes: a music score acquisition unit 410, a recommendation vector library generation unit 420 and a music recommendation unit 430.

[0046] In some embodiments, the music score acquisition unit 410 is configured to acquire music scores in text format of music in a music collection, the music scores in text format including text representations of the melody of the corresponding music; the recommendation vector library generation unit 420 is configured to convert the text representations of the music scores in text format into vector representations to generate a recommendation vector library for the music collection; and the music recommendation unit 430 is configured to recommend music similar to the melody of the target music based on the target music and the recommendation vector library.

[0047] It should be noted that the reference Figures 1 to 3 Further actions or steps shown can be performed by Figure 4 For example, the device 400 may include more modules or units to implement the actions or steps described above, or Figure 4 Some of the units or modules shown may be further configured to implement the actions or steps described above, which will not be repeated here.

[0048] Figure 5A schematic block diagram of an example device 500 that can be used to implement an embodiment of the present disclosure is shown. As shown, the device 500 includes a computing unit 501, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 502 or loaded from a storage unit 506 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the device 500 can also be stored. The computing unit 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0049] A number of components in the device 500 are connected to the I / O interface 505, including: an input unit 506, such as a keyboard, a mouse, etc.; an output unit 507, such as various types of displays, speakers, etc.; a storage unit 508, such as a disk, an optical disk, etc.; and a communication unit 509, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 509 allows the device 500 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0050] The computing unit 501 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 501 performs the various methods and processes described above, such as method 300. For example, in some embodiments, the method 300 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 508. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 500 via ROM 502 and / or communication unit 509. When the computer program is loaded into RAM 503 and executed by the computing unit 501, one or more steps of the method 300 described above may be performed. Alternatively, in other embodiments, the computing unit 501 may be configured to perform the method 300 in any other appropriate manner (e.g., by means of firmware).

[0051] In some embodiments, the methods and processes described above may be implemented as a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for executing various aspects of the present disclosure.

[0052] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0053] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0054] The computer program instructions for performing the disclosed operation may be assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, and conventional procedural programming languages. Computer-readable program instructions may be executed completely on a user's computer, partially on a user's computer, executed as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., utilizing an Internet service provider to connect via the Internet). In certain embodiments, by utilizing the state information of a computer-readable program instruction to customize an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit may execute a computer-readable program instruction, thereby realizing various aspects of the present disclosure.

[0055] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0056] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operating steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0057] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the equipment, method and computer program product according to multiple embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of the module, program segment or instruction includes one or more executable instructions for realizing the specified logical function. In some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or action, or can be implemented with a combination of special hardware and computer instructions.

[0058] The embodiments of the present disclosure have been described above, and the above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The selection of terms used herein is intended to best explain the principles of the embodiments, practical applications, or technical improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the embodiments disclosed herein.

Claims

1. A method for recommending music, comprising: Acquire music scores in text format from a music collection, wherein the music scores in text format include text representations of the melodies of the corresponding music; Converting the text representation of the music score in text format into a vector representation to generate a recommended vector library for the music collection; and Based on the target music and the recommendation vector library, music with a melody similar to the target music is recommended.

2. The method according to claim 1, wherein obtaining the music scores in text format of the music in the music collection comprises at least one of the following: Converting a musical instrument digital interface (MIDI) file of the music into a music score in the text format; Converting the original audio file of the music into a MIDI file and then converting it into the music score in the text format; or Another music score different from the music score in the text format is converted into the music score in the text format, wherein the other music score includes at least one of simplified music score, five-line music score and six-line music score.

3. The method according to claim 1, wherein generating a library of recommendation vectors for the music collection comprises: Using a vectorization model, converting the text representation of each piece of music in the music collection into the vector representation; Calculating the similarity between the vector representation of each piece of music and the vector representation of other pieces of music in the music collection; as well as The vector representation of each music and the similarity with at least one other music are associated and saved in the recommendation vector library.

4. The method according to claim 3, wherein storing the vector representation and the similarity in association with each other in the recommendation vector library comprises: Based on the magnitude of the similarity, determining an initial association set including the similarity and the corresponding vector representation; Performing data processing operations on the initial association set, wherein the data processing operations include filtering, fine sorting, and re-sorting; as well as The initial association set after the data processing operation is saved in the recommendation vector library.

5. The method according to any one of claims 2 to 4, wherein recommending music with a melody similar to the target music comprises: Retrieving the vector representation of the target music and the associated stored music in the recommendation vector library; as well as The associated stored music is determined as recommended music.

6. The method according to claim 5, further comprising: In response to the recommendation vector library not including the vector representation of the target music: Acquire a music score of the target music in a text format, wherein the music score in a text format includes a text representation of the melody of the target music; Converting the text representation of the music score of the target music in text format into a vector representation; Calculating the similarity between the vector representation of the target music and the vector representations of other music in the music collection; as well as The vector representation of the target music and the similarity with at least one other music are associated and saved under an entry of the target music.

7. The method according to claim 6, further comprising: The similarity of the target music is synchronized with entries of other music similar to the target music.

8. The method according to claim 1, wherein the music score in text format comprises an ABC music score.

9. A system for recommending music, comprising: A music score acquisition unit is configured to acquire music scores in a text format from a music collection, wherein the music scores in a text format include a text representation of the melody of the corresponding music; a recommendation vector library generating unit configured to convert the text representation of the music score in the text format into a vector representation to generate a recommendation vector library for the music collection; and The music recommendation unit is configured to recommend music with a melody similar to the target music based on the target music and the recommendation vector library.

10. A computing device comprising: at least one processing unit; At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the computing device to perform the method as claimed in any one of claims 1 to 8.

11. A non-transitory computer storage medium comprising machine executable instructions which, when executed by a device, cause the device to perform the method of any one of claims 1 to 8.

12. A computer program product comprising machine executable instructions which, when executed by a device, cause the device to perform the method of any one of claims 1 to 8.