Bunpro's bad SRS algorithm is discouraging

Slightly diverging, but I am all for mixed recognition + recall vocab (and even grammar) as well. They’re completely different types of learning and both are very important.

6 Likes

I like the SRS system. The early levels are there to see if you remember, and the later levels are there to see if you know. Especially with the safety system of being able to redo a point if you did actually know you just blanked and tried something else or typed it wrong.

But if you don’t know something then the excuse of “well I haven’t seen it in a year” doesn’t matter much. You just don’t know it. And if you are actively studying and exposing yourself and you still haven’t seen it in all that time, then who cares. Personally I don’t really care that much about 100% completing any of the items on bunpro.

Mind you I just use this and study as a hobby, if someone has grander aspirations or requirements their needs might not be comparable to mine.

Also I’ve always kind of thought that just one srs system for all the points isn’t a great idea. I kinda thought it should have multiple systems with multiple weights. But I won’t try to think of a better wheel when their are plenty of engineers out there who are gladly doing that for me already.

3 Likes

I want to add something to this. I just want to note that I had this feedback a loooong time ago, and was told that it wasn’t possible.

The idea of ghosts is good. I want to be able to practice things that I get incorrect. However, they are bad in practice. Instead of being drilled on the grammar, I’m drilled on the sentence I got wrong. This, in my mind, is not good. I find myself memorizing sentences instead of grammar. This has gotten even worse now for me - I took a break for a few months (only from Bunpro, not other study materials) and now I can barely remember anything. SRS as it stands is not working for me.

7 Likes

This is called “overfitting” and it means your brain adapted too well to the problem. Those memories will eventually be attached once you add more context. I completely see where you’re coming from in terms of Bunpro, but contrarily I think the problem is heavily mitigated by reading native books (or manga, etc) or chatting online.

2 Likes

I’d like to contribute a few notes to recent arguments:

  • For users like me using only recall (reading questions), Bunpro is really similar to other things I do on Anki, where I have to recognize the meaning of an expression, especially since so many grammar points are vocab points in disguise. In this context, I’m quite convinced that FSRS will be a huge improvement to the current algorithm
  • For users that use Bunpro the traditional way (typing the answer), FSRS is for me still applicable in the sense that FSRS is only a means to derive intervals given users’ learning patterns: the nature of the learning doesn’t matter too much as long as the usual decay observed in any retention-related activity is still observed. Given the nature of what we learn on Bunpro (nothing is conceptual, it’s basic conjugation and vocabulary), I don’t see anything too far away from the usual stuff that is learned on Anki. It happened to me a few times to get to a new point on Bunpro that corresponds to a word I mined during immersion: the frontier is extremely blurry.
  • Compared to right now where the intervals are the same whether you do recall, audio or generation, FSRS will very likely provide much more suitable intervals given the review type a user selects. E.g., when I switched to reading to save a lot of time during Bunpro reviews, my error rate dropped but the intervals remained the same, even though the questions are now easier because during recall I don’t have to tackle synonym hell or to get every detail right during generation, I just have to recall
  • People mentioning that at some point, for high intervals, you should just get exposition and learn through native material, are in my opinion missing the point of a SRS: if you did see the material a lot through exposition the reviews will be very easy, quick, and will take maybe a few seconds of your time 3 or 4 times before the review interval is 2 years+. SRS is there for the rest. I definitely get some very simple reviews wrong on Anki, even for words that are really common (like top 1.5k), even though I read every day and have 6k+ vocab cards by now. SRS helps me for them.
8 Likes

I’m happy to see this!

I imported my WaniKani vocab to Bunpro as Extra Practice* and I often have to use “Show Answer” during reviews because I can’t work out the intended response. Even so, I’m honestly stoked that I can recall multiple similar-but-not-what-was-being-asked-for words if even I don’t quite understand the correct context for them yet.

And when it comes to grammar, I’m again just excited that I remembered <submitted grammar point> is a thing, even if it isn’t the exact grammar point being asked for. Either way, I’m learning!

For vocab, I find remembering sentences, phrases or clauses is a good thing, as that means I’m essentially remembering the various use cases for the word. So… Bunpro is improving my ability to recall the word and often teaching me something new about it every time I jump an SRS level.

*I seriously question the wisdom of importing for Extra Practice when I was already at WK level 21 (~2k words, oh god), but there’s no going back now. :weary: On the other hand, I’ve reset so many words because I memorized but didn’t learn them through WK, to add to @Asher’s earlier point from several days ago. Maybe I can actually learn them now!

3 Likes

I was thinking about the cram feature but haven’t used it yet because wouldn’t that mess up the SRS? Because by then the computer would think that you haven’t seen the grammar point in a month while you actually saw it during your cram session earlier that week. So when you get the review right, it’ll give you an even bigger interval. But at that point you don’t actually know it and would be even more likely to get it wrong later

1 Like

well you are technically correct if you consider the SRS to be the core of your study but I think it shouldn’t be so it isn’t an issue at all in my opinion.
It is exactly the same as what would happen with exposure and of course you wouldn’t reduce it for the sake of bunpro’s SRS, the more you get the better.

The SRS is not so accurate that it should be taken religiously.
As far as I am concerned, I even adjust manually the SRS levels stepping down regularly if I feel a difficulty with a specific grammar point. I am fine with it my aim is not bunpro fast success but japanese solid learning. I’d just encourage to do so whenever you feel you may need more testing on a grammar point.

5 Likes

TLDR: I study by deck because it’s got some filters like cram and adjusts the SRS appropritly

So there are 3 ways to reschedual after cram

Bunpros’ don’t reschedual at all.
This is good if you want straight up extra practice.

jpdb: modified schedual, if you do a card early it is reschedualed to longer of schedualed due date and time elapsed between reviews
If you have a card due in a month, and you do it in a week, it will still be due 3 weeks after your early review

if you do a card late it is reschedualed
if you have a card the that was going to come back the next day, but you did it a week later, it’s reschedualed another week later, because appartly you can remember it for a whole week

(a slightly more complicated answer is “It uses 1.2* actual interval instead of the schedualed interval if you don’t do you reviews on time.” )

OLD anki (I’m still using 2.1.48, I heard in bunpro’s forums 2.3 has a different schedualer)
You can toggle between not reschedualling at all like bunpro or

Longest reschedual: push your revews foward by the same about of time as if you did them on time.
This is bad if you like to cram stuff you just did while it’s still fresh, your doubling the length of time between your reviews each time you cram

1 Like
  1. I agree I shouldn’t stress about SRS as much as I do. Ooops
  2. I’ve been studying Japanese for 11 years now the best part of SRS is it comes back eventually.
  3. Sure coming back to 3000 reviews is scary, but better than coming back to lingo deer with 300 lessons done, not sure which ones I still remember
  4. I’ve never wanted *more * reviews. I understand why you do, to get more practice. I don’t find reviews fun.
  1. This is the SRS readjusting. Probably you crammed a point because you thought you would get it wrong now. getting it wrong now or later is they same on net. You mess up the srs if you cram so regularly that you ‘never’ get a review wrong. SRS is built on the assumtion of 70-95% accuracy if you are outside that SRS can get out of sync.
1 Like

Hi there !

Unrelated to the recent discussion, but I’m curious about your experiments with FSRS and the vocab section. Any updates ? Could we expect any changes in the near future? And what about mixed production/recognition reviews? @Jake :thinking:

4 Likes

@Asher @Jake

I appreciate your thoughtful responses to @d11 's urging on moving to FSRS algo, and I understand your responsibility is to the entire community of users, which makes making core changes difficult to do, especially if they are potentially divisive.

Looks like the conversation broke down above when it turned into a bit of back-and-forth when asking for linked research and then whether or not that research was valid for this use case, but if I may, I’d like to bring it back up, and hopefully steer it in a more helpful direction.

To be clear, the only thing in question here is how the timing of the next review is set. The method of input/recall as compared to other decks/platforms, nor the fact that Bunpro uses multiple examples per “point” (card), shouldn’t distract from this. Those points matter, and are what makes Bunpro special, but the time-to-next-review question is the one that is being asked.

So, given the research and proven effectiveness of FSRS in similar contexts (of course there is no published research on different spacing algorithms as applied to specifically Bunpro – that would be rather absurd to expect), I wonder:

  • what is the fear / expected downside of using that algorithm? (Do you think it will hurt some users, and if so why)

And, given that the current algorithm is so basic (it just gets longer every time and you go back a step if you get it wrong, as far as I can tell):

  • what evidence/reasoning would there be to expect that this specific approach is more effective than FSRS?

And lastly, assuming it is not a technical limitation, since the platform is quite customizable already, and that Jake said he would have something available for beta testing after only a short time after OP landed on the forum:

  • Is there any reason not to implement FSRS and make it available behind a settings flag (even if only beta, or not set as default, so that power users can find it)?

Finally, just will interject my opinion into the mix. I think that a modified version of FSRS that does allow for “mastery” after enough correct answers is much better (or a button to manually mark it). I would argue against the OPs statement that “statistically, 10% of the time [you’ll forget]”, as that doesn’t take into account any real-world usage. I’d wager there are zero users on Bunpro who don’t use Japanese at all in daily life, reading, or media, unless they are tire-kickers in the first weeks of trying before giving up. It’s highly doubtful N4-N1 speakers are going to forget 10% of their N5 grammar points that they encounter every time they use Japanese outside of Bunpro.

8 Likes

While everyone was arguing about SRS types and other stuff, I’m just here, trying to figure out why I need to care about the math behind SRS and such. I just wanted to learn Japanese to watch anime without subs… :frowning_face:

(Please don’t take my post seriously)

11 Likes

@LagonKa Thanks for the follow ups. This wasn’t abandoned, we just have a few things in the pipeline that we were working on getting out before we push the changes we have decided on.

Here is a broad overview:

  • We looked at global review data for over 100 million reviews.
    • For grammar, users have on average 88% accuracy in the lower streaks and for 11/12, in streaks 7-10 the accuracy drops to 81-82%.
    • For vocab, it is 92%, dropping to 86-87% in streaks 7-10.
    • Overall we feel that is pretty decent accuracy but will implement changes to the default SRS timings to reduce the interval slightly for streaks 7-10.
      • This should help improve accuracy at those intervals.
  • We will be making adjustments to how Ghost Reviews work.
    • Instead of static intervals, they will have dynamic intervals based on the streak the main review is at when they are created. The higher the streak, the longer the Ghost Review intervals will be, but they will always finish before the mid way point of the main review timing.
      • This will help spread out ghost reviews which should reduce day to day review count.
      • This will help give users some practice for that specific grammar point (the sentences will change) closer to their next review (somewhat mimicking what coming across it naturally would be like).
  • We looked at global accuracy grammar point by grammar point and vocab by vocab to identify grammar and vocab that have low accuracy.
    • We will be slowly going through them and making adjustments to how we present them, the sentences we use for reviews, and the hints we provide. That should help improve overall accuracy for those specific pieces of content.
  • We looked at FSRS.
    • We testing it on existing user reviews to see what the intervals would look like for a user switching to it and also tested it on new reviews.
      • For existing reviews due to our custom timings, the data used to build the prediction for FSRS out of the box quickly goes to very, very long intervals.
      • For new reviews, we would need to make a lot of custom changes (10 minute intervals, dropping back to very short intervals when missing a review etc are things we don’t really like about Anki’s approach).
  • We reaffirmed our philosophy/approach
    • At its core, we think of Bunpro as an immersion tool disguised as a SRS tool/grammar guide.
      • Our primary goal and the thing that has the most outsized impact on users’ overall learning is giving users lots of exposure to Japanese in the form of sentences that are level appropriate/build upon previously learned content and fit within the framework we follow (see below).
        • We focus on using a combination of the four most powerful memory tools according to the most up to date neurological studies of how memory works:
          • Repetition - Basic memory based on repeated exposure (basic SRS stuff)
          • Association - Advanced memory based on links between previously learned knowledge, or artificial associations like mnemonics. We do i+1 and have a lot of natural associations in our vocab sentences.
          • Novelty - How new something is. Novelty in learning revolves around experiencing things for the first time in fresh ways. In Bunpro we provide novelty by having new sentences each review.
          • Emotional Response - Both positive and negative are far better than ‘neutral’ in terms of creating long lasting memories. Our example sentences are a very broad mix of happy, sad, funny, weird, mildly offensive, and completely neutral things. While we do sometimes get complaints about a few sentences, there is overwhelming evidence that being provoked emotionally is a good thing when it comes to remembering.
      • In terms of what we “optimize” for:
        • Outside of three situations (simple front back recognition flashcards, timings that are too long, and users who try to speedrun their reviews by not actually reading the sentences), the “optimization” of the review timings to maximize the time between reviews isn’t something that has much of an impact on the success or failure of our core goal (immersion).
        • While it might seem like optimizing the intervals with something like FSRS to try to maximize the time time between reviews is a no brainer, the SRS/timings isn’t what helps you “learn”, it is being forced to read a lot of Japanese and exposure to grammar and vocab in new and varying contexts that is the “secret” to learning.
        • That is why we have put the effort into making the ~100k sentences that are on the site and why we will keep adding to it and implementing new ways to get more immersion within Bunpro.
    • We may consider implementing FSRS for straight flashcard style reviews (front/back) for power users who want to use it.
      • It isn’t something that we can’t do, it’s just that while it works well for static reviews (like simple flashcards) where the data never changes and the focus is on maximizing the interval, we try to encourage using dynamic reviews that change (cloze or reading) and focus on maximizing exposure.

This turned out to be a lot longer of an overview than I had planned on writing but I hope it gives everyone a better idea of our thinking, our overall philosophy and the steps we are taking/will take in the future to improve.

Always happy to hear thoughts from you all so please don’t hesitate to let us know what you think. :bowing_man:

42 Likes

Thanks @Jake for taking the time for an in-depth update here. I appreciate all the other considerations you brought up, but again, I think the FSRS camp is pretty much just concerned specifically with review timing.

The things from your response that specifically relate to this are:

and

The short version, if I may summarize, is that:

  • looking at the review timings produced by the FSRS algorithm with real data, the Bunpro team determined they were too long apart generally, and simultaneously too short in the early stages of new reviews. This is based on the team’s experience and intuition of running Bunpro, and hints at a distrust of FSRS for producing the “right” timings.
  • the goal of Bunpro is not to produce ideal timings for memorization, but instead to provide immersion into written Japanese, with some structure regarding timing.

For me, the interesting take-away here is that FSRS is alleged to produce longer review times, not shorter, which is at odds with the OP’s assertion that the current SRS timings hurt the user who forgets / misses a point in the higher stages of srs.

Regarding the closing point that Bunpro may consider implementing SRS for straight flashcard style reviews:

My 2cents would be that this may fall flat for users who want FSRS since it wouldn’t be implemented into the rich Bunpro-style review system. Users who want that could just use Anki today, no need to wait for a maybe-maybe-not implementation, and users who want FSRS powering the full Bunpro experience, as opposed to front/back flashcards, will not get that in the near term, and likely not in the medium to long term.

Cheers, thanks again for explaining the core team’s vision and plans for improving the Bunpro experience.

9 Likes

Perhaps this is oversimplifying things, but it seems to me that, FSRS totally aside, most of us would prefer if getting a Seasoned (or greater) point wrong would simply bump it back to a low Adept. The current system doesn’t bump it back enough, leading to further disappointment and prolonging learning the concepts.

That feels like an easy enough setting to implement without totally overhauling Bunpro’s existing algorithm.

@Jake , would you be opposed to an optional setting that simple?

6 Likes

I don’t think we necessarily have anything against FSRS. My understanding is it is the best algorithm out there for optimizing that time interval to get it as long as possible.

However I do think it to some degree goes against our goals of giving lots of exposure and building a user up to a point where they start to feel comfortable going out and consuming native material.

At the end of the day Bunpro or any SRS for that matter is good for building up a foundation but you won’t ever reach fluency without interacting with a massive volume of Japanese, whether that is reading, listening or speaking.

Ultimately, I think our approach is a bit different from other services.

Rather than try to maximize the length of time a user uses the site (content gating, trapping users into spending years doing reviews, etc), our goals is to get them to the point they no longer need Bunpro as quickly as possible.

If by using Bunpro, a user progresses to the point they feel they no longer need Bunpro, then we consider that a win in our books.


Regarding your points, since our approach is to generally try to provide flexibility and customization and trust that the user knows what works best for them, I don’t in particular see anything wrong with your suggestion of putting the option for FSRS behind a settings/beta flag (for either all vocab or all vocab and grammar?) as long as we include caveats about how it will impact their review timings, ability to earn xp, etc.

10 Likes

Instead of -1 to the streak, something like cut the streak in half for content over a specific srs level?

9 Likes

Either the ability to choose between more options than (-1) or implementing something similar to Wanikani’s (WaniKani’s SRS Stages | WaniKani Knowledge) that will do a heavier drop if you’ve clearly forgotten the point. That seems to me to address my (and OP’s!) concerns for the most part.

In my experience and I think many others’, it’s easy-ish to get something up pretty high (Seasoned) when the point is still fresh in your mind, but also to forget before you see the next review as the intervals lengthen. Dropping down “slowly” means that the intervals are still so long that you’ll surely still have forgotten it by the next time you see it, and so on and so forth. An option to enforce a steeper “drop” on an item upon getting it wrong some number of times (1-3?) when it’s at a high enough level would help us really learn points that didn’t quite stick for the long term without them languishing for weeks or months!

This also meets your aim above:

Rather than try to maximize the length of time a user uses the site (content gating, trapping users into spending years doing reviews, etc), our goals is to get them to the point they no longer need Bunpro as quickly as possible.

since this will help us learn points for good rather than having items stick around far longer than they should.

I always wince when WaniKani drops me back to Guru on something, but I have no clue how I’d learn it otherwise!

In contrast, when I forget something in Bunpro, I tend to continue in a state of not having learned it for a long time, prolonging my long-term Bunpro use :slight_smile:

Thank you for your consideration!

14 Likes

I vibe with this answer, a lot, actually.

Cheers.

6 Likes