ocbe-uio / BayesMallows

R-package for Bayesian preference learning with the Mallows rank model.
https://ocbe-uio.github.io/BayesMallows/
GNU General Public License v3.0
21 stars 9 forks source link

Consistency check for updated pairwise preferences #404

Closed osorensen closed 7 months ago

osorensen commented 7 months ago

Currently with existing users providing updated preferences, all are treated as inconsistent. Fix this be writing a function which checks for consistency.

crispinomarta commented 7 months ago

It is sufficient to check if the directed graph of pairwise preferences is acyclic (if it is a DAG -directed acyclic graph - then the preferences are consistent). I think that in the igraph package there's a function which does exactly this: is_dag.

Il giorno ven 15 mar 2024 alle ore 15:42 Øystein Sørensen < @.***> ha scritto:

Currently with existing users providing updated preferences, all are treated as inconsistent. Fix this be writing a function which checks for consistency.

— Reply to this email directly, view it on GitHub https://github.com/ocbe-uio/BayesMallows/issues/404, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVELG7C4P74ZMPR5Q4VWX23YYMCE5AVCNFSM6AAAAABEYEECQGVHI2DSMVQWIX3LMV43ASLTON2WKOZSGE4DQNRZGQ4DANQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

osorensen commented 7 months ago

Thanks! But I'm not sure we're talking about the same thing. I'm thinking of the SMC methodology, where an existing user may provide additional pairwise preferences at some time t. The thing I want to check is if the augmented ranking from time t-1 for this user is consistent with the pairwise preferences at time t.

For partial rankings this is quite straightforward, cf. screenshot below from Anja Stein's PhD:

image
osorensen commented 7 months ago

It's not too hard, but has to be implemented. I think this algorithm will do the job (sorry about the notation):

image
crispinomarta commented 7 months ago

Ah ok. I was understanding that we wanted to check if the pairwise preferences at time t were consistent with the pairwise preferences at time t-1.. This would be easy with is_dag

Il giorno ven 15 mar 2024 alle ore 15:57 Øystein Sørensen < @.***> ha scritto:

It's not too hard, but has to be implemented. I think this algorithm will do the job (sorry about the notation): image.png (view on web) https://github.com/ocbe-uio/BayesMallows/assets/21175639/91fb4061-4545-4f83-a2e7-bc0cbe621ee3

— Reply to this email directly, view it on GitHub https://github.com/ocbe-uio/BayesMallows/issues/404#issuecomment-1999845727, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVELG7BUDLRPGH76THAH4R3YYMD6HAVCNFSM6AAAAABEYEECQGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOJZHA2DKNZSG4 . You are receiving this because you commented.Message ID: @.***>