Music intelligence universe server2010-03-04service.
[0091] Finally, to obtain a list of recommended songs, classic EVE evaluates all the songs with the music taste estimated vector and sorts them decreasingly by grade.
[0092] As described above, classical EVE has some limitations that arise from its linear learning capability and because it was designed to be able to generate ideal questions while in the music framework, the number of songs is limited and a compromise has to be selected because not all ideal questions (pairs of songs) exist. The main limitation, however, of classic EVE is that input songs must be normalized. That means that instead of having two descriptors, by normalizing we obtain a single descriptor that is related to the ratio between them and it is not possible to go back. In the real world, this would mean that two songs one with small values of tempo and rhythm and the other with high values of both descriptors would be considered by the system as being very similar. In the same way, the estimated vector cannot isolate between rhythm and tempo as the estimated vector is again a relation between them. It is not possible to differentiate between the following two music tastes: [0093] "I like high tempo and high rhythm" [0094] "I like low tempo and low rhythm"
[0095] This is solved by using a technique called Kernelization derived from the Support Vector Machines. It can be viewed as keeping a linear learning method like Eva but instead of using the original space (in our case, bidimensional for tempo and rhythm), using an extended space usually with more dimensions. This allows EVE to learn non-linear music taste vectors. The drawback of adding more dimensions, of course, is the increase of the uncertainty in the estimated taste.
[0096] It is based on a transformation from two input variables [0, 1]脳[0, 1] to three variables. The output 3D vector is normalized using a cylindrical transformation. From a geographical point of view, the kernel maps a 2D quadrant into the surface of a quadrant of a sphere. This is depicted in FIG. 16.
[0097] The first step of the kernelization adds a margin to the data in order to avoid null border values in order to maintain nulls out of the transformation chain. gx=0.005 0.99sx gy=0.005 0.99sy
[0098] In classic EVE, only the angle between the two variables was significant. In the current algorithm, the non-linearity comes from also using the module of the vector. This makes it possible to learn in which part of the Music Universe the user taste resides. r= {square root over (gx2 gy2)},r>1鈫抮=1 胃=atan2(gy,gx)
[0099] The 2D to 3D transformation is performed mapping input variables into spherical coordinates: k r = 1 k 胃 = 蟺 2 脳 r k 桅 = 胃
[0100] The operational space for classic EVE is Cartesian and kernelized variables are finally obtained by the Spherical-to-Cartesian transformation: kx=k.sub.r cos k蠁 sin k胃k.sub.y=k.sub.r sin k蠁 sin k胃k.sub.z=k.sub.r cos k胃
[0101] In summary, the Kernelized Eva is a classic EVE that operates within a universe that has one more dimension. This makes possible to learn non-linear music tastes in a controlled manner as the convergence of classic EVE is assured because it is a linear algorithm. The estimated vector has, therefore, three dimensions. Accordingly, the recommendation of songs also must be performed in the kernelized universe. 3D classic EVE is a bit more complicated because there is one more dimension and the region update strategy is not so straightforward. Furthermore, in the selection of pairs of songs an extra degree of freedom has to be taken into consideration.
[0102] Imagine that the database consisted of less than a thousand songs. Then the total number of pair of songs is given by the following expression: N(N-1)/2
[0103] With less than 1000 songs, it is possible to compute all the possible pairs (0.5 Mpairs) and select and store those more adequate for learning. The MIU Server, however,
supports music databases of several millions of songs. FIG. 17 shows the number of pairs to evaluate as a function of the total number of songs.
[0104] Looking to the rapidly growing function, it is clear that it is not possible to sweep all pairs to determine the preferable pair of songs for learning. This is the key of the music learning process, defining what a good question means. Intuitively, two songs very similar (with a small Euclidean distance in the Music Universe) cannot form a learning pair because it should be difficult for the user to select the preferred one. This is one of the three criteria: Euclidean distance has to be maximized in song pair selection for the learning process. The second criterion is quite obvious but it has a significant impact in the design. Sometimes, a song has some properties (resides near the border of the music universe for example) that makes it very useful for music taste learning. However, it is very poor for a music interface point of view to repeat songs in consecutive questions so the algorithm needs to have memory. Finally, the last and most important idea: the pair that maximizes music taste learning convergence, besides the song distance, depends on the current state of the algorithm; in other words, it depends on the answers given by the user to previous questions. To summarize these facts, the conditions for song pair selection are: [0105] Maximum Euclidean distance between the songs to help the user sel...