open-spaced-repetition / fsrs4anki

A modern Anki custom scheduling based on Free Spaced Repetition Scheduler algorithm
https://github.com/open-spaced-repetition/fsrs4anki/wiki
MIT License
2.76k stars 137 forks source link

A special case where "Ignore reviews before" won't work.md #671

Closed Expertium closed 3 months ago

user1823 commented 4 months ago

Would it be too much to ask people to hit "forget" on all their cards to generate more learning steps if changing their review habits?

Ideally, the users should NOT do this because the estimates of initial stability won't be accurate in that case (resetting the card in Anki doesn't delete the memories in the brain).

The ideal solution is that they continue to learn similar new cards. But, I know that this is not possible in every case. I don't know what's the best solution.

Originally posted by @user1823 in https://github.com/ankitects/anki/issues/2922#issuecomment-1906105489

user1823 commented 4 months ago

Basically, in such cases, the user has to choose between two options:

  1. Not using the ignore reviews before option and optimizing parameters using skewed review history
  2. Using Reset and generating parameters with inaccurate initial stabilities. (Remember that the initial stabilities are among the most important parameters.)

I don't think that we should advise choosing one of these two. The option that is better for one user may not be better for another user.

Expertium commented 4 months ago

Yes, but we do have to advise something that isn't "Keep seeing an error that says 0 reviews found"

user1823 commented 4 months ago

I really don't know what to advise. Suggestions are welcome.

Expertium commented 4 months ago

I see 3 possibilities. The ones you mentioned + keep using the default parameters. Using the default parameters is probably worse than either of the two options, since the parameters won't be personalized at all. So we could advise users to choose option 1, we could advise users to choose option 2, or we could tell them about both options and let them choose, but that introduces an extra cognitive load, which isn't great. Honestly, I'm not sure myself. @L-M-Sherlock what do you think? (option 0: rework this feature so that it actually ignores reviews, not cards)

user1823 commented 4 months ago

By the way, there is a fourth option too. But, it is only for advanced users.

This option involves modifying the review history, as I advised a user here: https://github.com/open-spaced-repetition/fsrs4anki/issues/614#issuecomment-1962254401

user1823 commented 4 months ago

(option 0: rework this feature so that it actually ignores reviews, not cards)

This is not possible because the optimizer can't work on incomplete revlogs.

Expertium commented 4 months ago

But memory_state_from_sm2 is a thing

user1823 commented 4 months ago

But memory_state_from_sm2 is a thing

See https://github.com/open-spaced-repetition/fsrs-rs/issues/114

Expertium commented 4 months ago

I think the crux of the problem is that we can't quantify which of the 4 options - default parameters, Reset, optimize on bad review history, optimize while using memory_state_from_sm2 - provides the best (well, least bad) result. If we could rank these options somehow, we could say "Well, they're all bad, but this one is less bad, so let's go with the lesser evil".

Expertium commented 4 months ago

@L-M-Sherlock thoughts?

L-M-Sherlock commented 4 months ago

It's impossible to ignores reviews, not cards because reviews are also used to construct the training features.

Expertium commented 4 months ago

So what do we recommend to people who reviewed all cards before the selected date and do not plan to add new cards?

L-M-Sherlock commented 4 months ago

If they misused hard button, I remember that @user1823 provides a solution to modify the database. Maybe I can port it into the helper add-on.

Expertium commented 4 months ago

That's complicated, I wouldn't recommend that to everyone. We need something for an average user.

L-M-Sherlock commented 4 months ago

If I port it into the helper add-on, it will be very simple. Just click a button. And I think this case is rare. Maybe we cannot treat them as an average user.

Expertium commented 4 months ago

Ok