Bunpro's bad SRS algorithm is discouraging

yeah i really love bunpro, but a better srs and more grammar points are the things that matter to me most. I appreciate the additional stuff (really nice vocab decks, etc.) but i bought bunpro to build my grammar skills, so i personally would appreciate improving the srs algorithm because the srs is like half of the product

4 Likes

Hello, everyone. I’m the author of FSRS. I find this post via google search. It’s my honor that FSRS has become famous. I see the developers of Bunpro plan to incorporate an improved model like FSRS and add global difficulty weights for each sentence. It’s exactly what I have done in my paper: www.maimemo.com/paper

If you meet any problem during incorporating FSRS, please feel free to contact me.

45 Likes

Like most Bunpro users, I tend to memorize the sentence and what to type by the third or fourth ghost, but I have the unpopular viewpoint that that’s not innately bad. Some set phrases are strings of morae that need old-fashioned muscle-memorization through repetition. Just last week, I bungled わけにはいかない, which sucked because I would’ve Mastered that point. But having to type that phrase four times helped it stick better.

I’ve had the same thought about transcribing into Anki for myself, though. I use WaniKani, Bunpro, JPDB, and three of my own Anki decks, and Bunpro is the most stressful. I think some of it is by necessity but it couldn’t hurt to improve the site where it can be improved.

Part of the problem is that we simply don’t see all these grammar points equally often in the wild. I practice almost daily and I still only see a handful of them. I would guess that necessitates a different approach than, say, a vocabulary deck.

I don’t know much about FSRS, but I’ve often thought that Bunpro could add a lot of usability by randomly generating names and other words in the sentences, almost like Mad Libs. That’s what I would do if I worked for them.

2 Likes

FSRS and give us an option between a per-sentence or per-grammar point.

Some of the sentences use multiple grammar points and could be harder so i would personnaly opt for a “per-sentence” as it’s a good way to test yourself but that’s a lot of “cards” with every new point so i can also see why people would chose the other way.

Just gonna add to the whole discussion that even at N5/N4 level as someone who’s learning is really slow due to picking it up and setting it down, I’ve recently run into the issue with the SRS system. There are tons of “expert” grammar points I haven’t seen in months. I’m concerned I don’t know any of them anymore and I have to manually do the cram sessions to find out what they are. It’s a bit of a hassle.
I know not being consistent with it isn’t great either, but perhaps im noticing the issue now because I’ve been the most consistent with it since starting.

2 Likes

Totally understandable. The only thing I can think of (which might have already been suggested, so sorry if that’s the case) regarding the part about the long wait times in between is to enable ghosts. The ghost function helps me to review the grammar point frequently for a short period of time to help refresh my memory, but it does also add a lot more reviews in my queue whenever I miss a few grammar points, so I’m not sure if this is something you’d want to do (or have already tried).

You’re not alone. The thing with Anki is that setting it up is essential . It used to be a pain, but it has become way more intuitive lately, especially with the implementation of FSRS.

I also use maximum ghosts and while what you said about “muscle-memorization” is true for some set phrases, I find the global benefit is too low and often too close to “dumb-filling”.
That said, sometimes the difficulty lies in the contextual usage of grammar rather than the grammar point itself, so being exposed to the same problematic situation repeatedly can be very useful, but encountering it four days in a row is excessive and I’d say pointless. It should be spread out over a longer period.


@Jake Probably too early to ask, but how soon could we expect a change ?
This is purely my personal, probably biased and unpopular opinion, but I think it’s at least as urgent for vocab as it is for grammar. I was really keen on using Bunpro’s context sentences and fill-in feature, but honestly, the SRS makes it really inefficient for now, at least for me. Too much time spent, too much words forgotten, or wrongly considered known because -see below-.

On the same side, I constantly find words I can produce but struggle to read, and vice versa. This is an issue I believe should also be addressed, maybe simply by blending reading and fill-in question types.

Overall, for vocab and grammar, I’d say minor tweaks of the system (intervals, ghosts, questions types, etc.) could already improve retention and soothe frustrated souls a little while you’re working on something else.

6 Likes

I was actually diving into the FSRS code base most of today. I’ve been using some real review data to test the outputs and see what the next review timing would be.

I am planning on having something available for beta testing sometime soon but I want to make sure everything is working properly and takes into account constraints we have that differ from Anki’s open ended review system.

41 Likes

I am all for improving the SRS algorithm that we use at Bunpro! As @Jake said, it is something that has been on our radar for some time, and quite often crops up as a topic of discussion within the team.

As mentioned in the initial post here, SRS is most often something that is related to the following -

However, on Bunpro, our SRS is not based on reminding, it’s based on reproducing. This shows itself in the problem that we tend to have a lot of the time where users say ‘I memorized the sentence rather than the grammar’. Although this is not what we want ideally, it shows that the SRS is working. The problem is however that the user is recalling or ‘learning’ the wrong information. The student successfully SRS’d the sentence rather than the grammar. This used to happen to me all the time when I was going through the reviews as well!

As @CursedKitsune mentioned, when the next review comes up where it is a new sentence, the only reminder that the student has for the grammar point is the hint either in Japanese or English, plus their own recollection of every grammar point that could also possibly fit in the same space. In those situations, although you may get a question wrong, thinking of it as actually ‘wrong’ is not something that we want to encourage, as there are often 10 different correct ways to answer something. You’re just filling in a box with grammar that fits after all.

Please don’t take this as a defence of Bunpro at all. We really do want to find the best system. It’s just that we need to consider the things that make Bunpro different from Anki (input vs recall), and whether what works for one would actually work for the other.

All in all, I hope we can come up with something that is best of both worlds.

@JarrettYe welcome to the forums, and congrats on building a highly effective tool for Anki users!

28 Likes

I’ve been thinking about this as well, and I think that this is a strength that Bunpro has since there are multiple example sentences per grammar point. You might be able to achieve both goals of repetition + reproducing by having a random sentence for the grammar point show up each time rather than the same sentence. (I’m not sure exactly how you guys have implemented it, but I do find having multiple sentences with the same point is very helpful.) I suppose there is still the challenge of having enough example sentences per grammar point…

Definitely a challenging problem!
Best of luck to you guys with solving it haha.

4 Likes

I’m going to dissent from the majority opinion on this thread and advocate for the Bunpro team not prioritizing algorithm tweaks over other QoL tweaks for this site.

I think what’s missing from the OP’s argument and follow-up points is how language learning is different than other kinds of learning. Anki’s algorithm is meant to suit a broad variety of needs, because medical students need to use it to remember medical terminology, chemists use it to remember various rare reactions, and so on. OP’s point about how Anki has no “Master” category makes sense for some of those other use cases — you don’t want a doctor that forgets the existence of a rare condition!

But Bunpro’s SRS algorithm, unlike Anki’s, needs to be very narrowly focused on just language learning, retention and fluency. That Bunpro’s current algorithm assumes the user is engaging in outside study and immersion is good: language learners should be expected to use their skills in level-appropriate ways, like speaking or writing to people, or reading and listening to native content.

At the N2/N1 level, students should not be reviewing grammar points or vocabulary from the N3 or below tiers. Any N2/N1 level-appropriate immersion is going to already use those words and grammar structures frequently, so there is no need for an SRS algorithm to force recall of them. The huge spaces between missed reviews on the “Seasoned” and “Expert” levels, as well as the existence of the “Master” category, assumes that students will be actively engaging with these words and grammar outside of Bunpro — which is a safe bet, especially on the lower levels.

Language learning is a unique category of learning — unlike, say, organic chemistry, using language in real life functions as its own SRS algorithm, forcing recall in hundreds of different ways in the space of a conversation or an article or an anime. Bunpro, I believe, has never positioned itself as a replacement for Japanese classes or textbooks or outside immersion, nor should it be. And, eventually, learners are meant to quit Bunpro — at a certain level, like OP’s N1 Japanese, there’s just nothing Bunpro or any other SRS can offer you that’s better than simply using the language as needed in your daily life, whether it be through watching Ozu movies or reading Akutagawa short stories or flipping through Japanese car magazines. This “graduation” is not a bug, but a feature!

(I am going to also say that users like me enjoy Bunpro in the ways it specifically departs from Anki, though I use both tools. Moving the algorithm towards Anki’s reduces the diversity of SRS options available to Japanese learners by making Bunpro more like the rest of the pack).

21 Likes

I’m a little torn on this issue. First, i do not deny the accuracy of FSRS. If you want to know how likely you are to remember a single flashcard, I don’t think there is an better open source alternative. That being said, i’m not sure if this is the best solution to learning overall.

Back when I was using anki religiously, I started to notice some cards would bog down my process by leeching so much time. Meanwhile, anki didn’t offer an acceptable leech detection system.

Just like Bunpro as I was approaching 2k cards studying became next to impossible as many of the reviews were high dificulty cards.

2 Likes

I don’t want to drag this too far off topic as this thread is already quite long but would you mind explaining why you don’t like the Anki leech system and what you think would be better? I am not especially attached to it or anything but I never noticed an issue with it so I am curious what you have in mind.

I disliked how any 8 relapses would lead to a leech card.

There is a huge difference between a card that you have been learning for a long time and already spent some time as a mature card and a card you are trying to learn for the past week and mistaking every time. Both cards take 8 lapses to be marked as leech.

1 Like

Ah that’s a good point. Some sort of differentiation between a mature leech and a young leech could be useful. Even a small breakdown just showing the number of times something relapsed either when young or mature could be useful. I tend to just delete leeches right away regardless of age so I hadn’t considered this before.

1 Like

Since then I hate Anki with all my soul and don’t want to go back to it.

Most people (even me - a total Anki lover) have had this issue at some point. Anki is all about setup and tailoring to suit you. If you use it without proper setup it will be punishing to the point of being demoralising, stressful and in some cases useless. Only very recently has this setup become easier to do. Especially with FSRS which is not only easier to set up and tailor to suit your needs but also a more ‘forgiving’ algorithm from the offset. Anki’s default algorithm used to be really tricky and complicated to set up properly and was very punishing by default.

And I switched to jpdb.io
I don’t know how their algorithm work (they don’t explain how)

I checked their page and seems like they explain the basics of it. It is based upon the same principles as Anki’s old default algorithm, but appears to be a much simpler application of it and a lot more forgiving. In other words, it won’t predict as accurately the chance of you forgetting it at any certain time, but will be more forgiving due to this.

5 Likes

I felt this problem both here and an Wanikani. On Wanikani it is horrible telling me You are on level 12 Your time on this level is 1012.0 days… Here it has hit me less as I only used Bunpro for repetition before exams and not for long term retention (no livetime membership yet).

It is a learning app and it should be optimized to help with learning and take all the current science into account. I think there are different tastes about how punishing it should be. And the optimum for efficient learning and for staying motivated might be very different. In Anki I personally try to keep it less punishing by never pressing the “easy” button.

It might make sense to have a setting to set it to more ore less punishing whilst still following the best prediction algorithm. Perhaps something along the lines of asking again when there is a 85% 90% or 95% retention probability?

Another well known problem is that it is very hard to retain if you learn a buch of similar words or facts together as there is a good chance of your brain mixing them up. This is a huge issue on Wanikani and to a lesser degree also happens here. Nearly all apps get this one wrong. There might be a way to implement a similarity algorithm and ensure spacing out of similar things. I suspect this is less relevant for grammar points and more so for vocab.

4 Likes

I don’t think these differences are as fundamental as you suggest. The same principles apply to Bunpro; there’s nothing special about it.

The fact that I used the phrase “reminding” in my message is not core to what SRS is. Spaced repetition is just as applicable for “reproducing”. You want to be periodically reproducing the material, just before you forget how to do so. You can see this in the popularity of cloze deletion flashcards in the Anki ecosystem.

So I don’t think saying something like “Bunpro is input, Anki is recall” is correct. (1) Anki can be input too, and often is; (2) spaced repetition systems and the memory science they come from applies equally well to either style.

I appreciate that “wrong” on Bunpro can be subtle. But I am happy with how you’ve handled this so far: essentially, trying to program in all the possible synonyms, and then nudging the user toward the one you have in mind. (Without marking them wrong if their first N guesses are for different synonyms.) I think that’s a real value-add over if I were to dump all the Bunpro sentences into Anki. You should keep that functionality.

But that’s unrelated to the algorithm for generating study intervals for a given grammar point.

9 Likes

Anki cloze shows you the same sentence as always with the missing info. Bunpro shows you a sentence you’ve never seen so that you’re unable to cheat yourself out of thinking about the most appropriate answer by just memorizing the sentence and the associated grammar. They are quite fundamentally different in this way.

Again, please don’t take this negatively. I am not trying to pick any holes in what you’ve presented, I just have an objective responsibility to think about all possible angles for and against in order to help me do my job well, which is to make the lives/learning process easier for all students wherever I can. :bowing_man:

I’d be more than happy to read any memory science articles you mentioned that relate to algorithms and cloze, especially if you know of something that has research about a style similar to Bunpro in showing novel information with each review!

6 Likes

just out of curiousity, im wondering if the data shows the srs algorithm is/isnt great. I would imagine if bunpros srs was optimal, each of the srs levels (aside maybe the beginner ones) would have about the same average accuracy.

i would be interested to see if it falls off at all about seasoned 2-3, because thats where it feels like im missing a lot of reviews (although it may just be because i have a lot of cards there right now).

1 Like