befelix / SafeOpt

Safe Bayesian Optimization

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MovieLen 100k with the original SafeOpt algorithm

Lancial opened this issue · comments

Hi there!

I'm trying to replicate the result of SafeOpt on the MovieLen 100k dataset and use it as a baseline for my class project. I tried to follow the procedure described in the paper but I failed to reproduce the result. Can I get some help? Thank you!

Here are the steps that I followed:

Screen Shot 2021-11-16 at 10 25 11 AM

Screen Shot 2021-11-16 at 10 25 19 AM

And here is my code:
Screen Shot 2021-11-16 at 10 36 26 AM

The problem right now is that

  • the algorithm breaks the safety constraint pretty quick (explored movies that have a 1.0 rating)
  • the algorithm tends to be stuck at one or multiple high rating recommendations after some iterations and it is not able to generate novel results.
  • similar to the second point, it explores only a small portion of the reachable set

We experimented with different std and noise variance but did not actually make significant improvement. I wonder do you notice any mistake we made in our code? In addition, would it be possible to share the code you used for the evaluation in the paper?

Thank you very much!

Try SafeOptSwarm class instead of SafeOpt for optimization, you'll get much better results