#metabrainz

/

      • Endurance21 joined the channel
      • D4RK-PH0ENiX has quit
      • Chinmay3199 has quit
      • travis-ci joined the channel
      • travis-ci
        Project bookbrainz-data-js build #1407: passed in 1 min 48 sec: https://travis-ci.org/bookbrainz/bookbrainz-dat...
      • travis-ci has left the channel
      • Endurance21 has quit
      • D4RK-PH0ENiX joined the channel
      • Endurance21 joined the channel
      • supersandro20002 has quit
      • eharris joined the channel
      • pristine__
        shivam-kapila: which rating?
      • BestSteve has quit
      • BestSteve joined the channel
      • legoktm has quit
      • legoktm joined the channel
      • c1e0 joined the channel
      • prabal joined the channel
      • rohitdandamudi joined the channel
      • Endurance21 has quit
      • Endurance21 joined the channel
      • shivam-kapila joined the channel
      • shivam-kapila
        pristine__: The love/hate rating
      • Say +5/-5
      • c1e0_ joined the channel
      • c1e0 has quit
      • Chinmay3199 joined the channel
      • Paulette_Vazquez has quit
      • Gazooo has quit
      • prabal has quit
      • Gazooo joined the channel
      • shivam-kapila has quit
      • pristine__
        shivam-kapila: so right now it is like the more you listen to a song, the more you like it (playcounts). It may happen that a user listens to a song 20 times, and hate it when they hear it the 20th time. In that case playcounts doesn't have a role to play. So I am not sure if we need both playcounts and rating, I think rating should be enough.
      • Umm.... But now when I think of it, playcounts can be used to sort the listens loved by a user.
      • So like these 20 songs all have *love* rating, and song x is has the highest playcount, so the user must like this song. Ratings definitely will refine the recommendations.
      • BrainzGit
        [musicbrainz-server] reosarevok merged pull request #1427 (master…MBS-10707): MBS-10707: Actually remove discID if add edit is rejected https://github.com/metabrainz/musicbrainz-serve...
      • BrainzBot
        MBS-10707: Open Add DiscID edit already adds discID, cancelling does not remove it https://tickets.metabrainz.org/browse/MBS-10707
      • ZaphodBeeblebrox has left the channel
      • CatQuest joined the channel
      • CatQuest has quit
      • CatQuest joined the channel
      • shivam-kapila joined the channel
      • reosarevok
        bitmap: https://tickets.metabrainz.org/browse/MBS-10718 - although I'd argue the fix for that one is to actually disallow duplicate part-of-series entries, which I'm not sure why we allow at all rn
      • BrainzBot
        MBS-10718: Duplicate series "part of" relationships which got grouped are harder to detect
      • shivam-kapila
        pristine__: IMO both should be considered together
      • Not all users will be rating their songd
      • songs*
      • Or we can say select all songs with rating >=0 and then sort by listen count
      • So that even if the user hasnt rated thier songs then listen count comes into consideration
      • I think expressing it in tabular form in the proposal can be a good idea
      • pristine__
        > Or we can say select all songs with rating >=0 and then sort by listen count
      • That is select all the songs, isn't it?
      • shivam-kapila
        Nope
      • Hate will be given -5 rating
      • But we need to implement a join
      • Ratings need a separate schema. It cant be stored with listens
      • pristine__
        Oh. So hate = -5 and love = 5 always?
      • shivam-kapila
        I guess 'NOT IN' will work perfect
      • pristine__: Anything +ve and -ve will work.
      • This can work. We will select out all the songs with negative rating or say hate. Then we exclude these records with hate rating from the listens.
      • pristine__
        Umm.... You can also have a schema <recording_mbid, user_name, rating>
      • shivam-kapila
        Exactly the same I am thinking of
      • pristine__
        And join on recording_mbid and user_name where rating >= 0
      • And then group to get the playcounts
      • shivam-kapila
        Yeah same same till now
      • pristine__
        I am not sure what you mean by exclude these recordings
      • shivam-kapila
        But =0 case doesnt exist in schema
      • CatQuest
        hi indians <3
      • I'm eating noodles with indian spices :D
      • (also chana left.overs in it)
      • shivam-kapila
        pristine__: Is it worth storing this? The by default rating is =0 and I intend not to store it. Store only the love/hate ones
      • CatQuest: Hey :D. Food is <3
      • CatQuest
        i thoguht those on reviews where "this is useful" this isn't useful"
      • maybe you can have both. that way "usefull/unuseful doesn't become a de-facto "i agee/idisagree / hate/love
      • pristine__
        So what about the recordings that have not been rated. I think you should first think about all the possible cases and solutions.
      • And then think about the schema?
      • CatQuest: heya
      • CatQuest
        i honestly.. i thought chana (kikerter in .no) were impossible. i tried some an age ago and they where dry and unedible. even if i did get fro ma can and boiled them.. idk maybe i did soemthing wrong. but i got a n (italiasn f all things) "legume soup" mix and folloswed isnturctions. tha had chana in it and it was delicious. so i started ot experiemnt with it. i'm definitly eting more!
      • shivam-kapila
        pristine__: I thought about it. Most of the recordings will be unrated right?
      • pristine__
        Yes
      • CatQuest
        also.. some are going to be hella over rated (I'm looking at you sb19))
      • shivam-kapila
        So storing for the unrated ones is uselessly eating memory
      • pristine__
        I mean it is good to assume that as of now to be on safer sode
      • Side*
      • Yup.
      • Only store the rated ones
      • CatQuest
        I mean. rating of recordings is only oing to increase right? especially if it is implemented in listenbrainz and stuff
      • it was that idea to store both critiques and ratings in critiquebrainz ,and thne fetch those to mb. same coudl be done on lb
      • shivam-kapila
        Then we can do is that we exclude the ones with negative rating form the results and pull out all others. Something like the minus operator we study in DBMS
      • CatQuest
        with the ability to ate things *on* lb, and those ratings being propogated bakc to cb
      • rate*
      • or idk. inline ratings
      • you'd require a MeB account to rate thoguh
      • shivam-kapila
        Select all records from listen schema - Records which have negative rating for the user in rating schema
      • pristine__
        shivam-kapila: right but I think that negative ratings are as important as positive ones
      • Let's say
      • You get a list of recommendations for a user, with negative ratings you can remove all the recordings from the recommendations which the user does not like.
      • shivam-kapila
        CatQuest: Actually these ratings as based on per user taste and not on cumulative basis as of now. N for CB. I was also thinking to integrate CB with LB. Currently I see that we can only rate artists and not recordings in CB. Your idea seems a nice one to rate in CBitself
      • pristine__
        I am not very clear on this but I think it is good to store preferences ok both the sides. It's good to know what users like and what they don't.
      • shivam-kapila
        pristine__: So you mean to generate all recommendations and then separate out what a user might like and which not
      • pristine__
        In this case whole - negative != positive since there will be unrated recordings
      • No. I am giving one use case. I was trying to explain why both negative and positive should be stored.
      • CatQuest
        pristine__: I liek that. one of the most annoying things on last-fm was the thing wher eit suggested artists i didn't care about al lthe time
      • pristine__
        CatQuest: yup
      • shivam-kapila: let's unfold it step by step
      • shivam-kapila
        Seems like a good option CatQuest
      • pristine__
        1. We have listens of all the users in one schema
      • And ratings of all the users in another.
      • What do you intend to do next?
      • shivam-kapila
        A join of these two schemas based on username and mbid of recording
      • CatQuest
        inline ratings from cb and metadata from mb!
      • heh..
      • honestly things like collectinons and maybe even tags could be moved to critique brainz
      • pristine__
        shivam-kapila: right. After the join you will have ratings (negative and positive) corresponding to recordings and users. Most of the fields will be null for rating
      • CatQuest
        as in served by CB but still showing up on mb and lb like they are inline
      • pristine__
        no?
      • shivam-kapila
        pristine__: Yes but its definitely useful
      • pristine__
        Nice
      • Then?
      • CatQuest
        especially if you'd allow rating *on* lb
      • that field will not be null long
      • pristine__
        The schema after join would look like (recording mbid, user name, rating, listened at, artist mbid, release mbid.... so on)
      • CatQuest
        sorry for butting onto your conversation pristine and shivam, I'm going shower now. !m you guys
      • pristine__
        CatQuest: yo yo. And be safe :)
      • shivam-kapila
        The ALS algo will predict the null rating ones to find what kind of score the user can give based on reactions of similar users
      • CatQuest
        pristine__: the shower is a scary place! there is soap😆
      • shivam-kapila
        CatQuest: I am noting down your suggestions because the thing about keeping ratings in CB seems good to me
      • I found better points in your suggestions
      • CatQuest
        shivam-kapila: it was actually a pretty old idea.. i forget who was working on that. possibly even iliekcomputers?
      • oh?
      • shivam-kapila
        Ohh. I need to discuss it further then.
      • CatQuest
        it's been on hold for a while thoguh. i forget
      • asking ruaok would be gold .. (if he remembers 😆)
      • iliekcomputers
        what are we talking about?
      • CatQuest
        oh no, a wild iliekcomputers apears
      • shivam-kapila
        pristine__: Did you get what I was saying
      • pristine__
        I haven't read it. Lemme read :)
      • shivam-kapila
        iliekcomputers: Heya. You make me remember the old saying "Bohot lambi umr hogi aapki"
      • pristine__
        I was dancing between knitting and IRC this time :p
      • iliekcomputers
        i got a notification, so it isn't entirely coincidental
      • shivam-kapila
        pristine__: Seems like you love dancing :p
      • pristine__
        Definitely
      • shivam-kapila
        iliekcomputers: Lol. So the idea was to store the new ratings aka love/hate in CB
      • And integrate CB with LB
      • iliekcomputers
        we already store ratings in CB
      • it was a gsoc project in 2017
      • but
      • pristine__
        > The ALS algo will predict the null rating ones to find what kind of score the user can give based on reactions of similar users
      • iliekcomputers
        i'm not sure if we have support for tracks
      • although, i'm pretty sure we do