How can I make cards show more frequently?

158 views
Skip to first unread message

Kunta

unread,
Apr 17, 2016, 1:37:34 AM4/17/16
to mnemosyne-proj-users
Since I use this software to learn japanese vobulary, I need cards to show more frequently. Some of them show again 15, even 30 days after.
For example a given card will show during 3-4 days and them it will no show again until God knows when.
Could anyone please tell me what I can do to see cards more often, even if they`re supposedly memorized? Thank you beforehand!

Peter Bienstman

unread,
Apr 17, 2016, 1:40:58 AM4/17/16
to mnemosyne-...@googlegroups.com
Simply use lower grades. Note that the interval will still increase, that's the whole point of spaced repetition to lighten your workload.

If you want, you can also get some extra exercise in with the cramming scheduler.

Cheers,

Peter

kue...@gmail.com

unread,
May 31, 2016, 1:10:04 PM5/31/16
to mnemosyne-proj-users
Hi, I'm from Germany, but I'll try my best in English:

I've been using Mnemosyne in order to learn Japanese for about 6 years now, and I had the exact same problem. In fact, because of this problem I lost my motivation in learning several times. Don't get me wrong, I really like using Mnemosyne in order to learn, but I'd like to adjust a part of this program with a plugin.

It IS true that you can use lower grades - I'm doing that and the "Easiness" of some of my cards has even reached 1.3
Still, when adding new Japanese vocabulary, the initial learning phase (about 1 month) can be quite rough, because even when I always use a grade of "2", the interval for repitition is too long in most cases. So in my opinion it takes to long to change the "Easiness" of Japanese cards from 2.5 to about 1.5
I'd like to be able to set the "Easiness" to 1.5 when I create a new card.

I tried to research how the Mnemosyne algorithm works, the homepage says it is similar to SM2 and gives this link:
https://www.supermemo.com/english/ol/sm2.htm

It says the interval depends on the E-Factor (EF), and I think that is the "Easiness", right? There is this formula:
for n>2: I(n):=I(n-1)*EF
So if I have a card with "Easiness" = 1.5 and the previous interval was 20 days, then the next interval will be about 30 days, right?
(I just want to make sure that I understand the algorithm before using this plugin)

What I'd like to change with the plugin:
When creating a new card, I want to select the initial "Easiness" (a slight addition to the GUI). I think buttons for "1.5" "2.0" and "2.5" should work.

Unfortunately, I don't know much about programming with Python. Could someone please help me create that kind of plugin? Your help will be very much appreciated!! :)

Peter Bienstman

unread,
Jun 1, 2016, 2:38:10 AM6/1/16
to mnemosyne-...@googlegroups.com
Hi,

If you grade it 2, and you still remember the card in the end, then what's the problem :-)
If you really feel like you'd want to consolidate a particular card further, don't hesitate to give it a 0, then the intervals will reset to 0, keeping the easiness.

Cheers,

Peter
> --
> You received this message because you are subscribed to the Google Groups
> "mnemosyne-proj-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mnemosyne-proj-u...@googlegroups.com.
> To post to this group, send email to mnemosyne-proj-
> us...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/mnemosyne-proj-users/e6ee7843-d2ae-
> 4a64-a935-c11ebc1f062d%40googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Johan

unread,
Jun 2, 2016, 5:35:52 AM6/2/16
to mnemosyne-proj-users
Thank you for your reply!

Japanese Kanji are a bit special to learn, because you have to train your visual recognition. When you see a word, like 調整, then you should be able to know its meaning and reading almost instantly, and without any uncertainty.

The reason for this is a bit hard to explain it, so here is an analogy:
Imagine you are illiterate, and you want to learn the latin alphabet. Imagine you use ONLY mnemosyne for learning (no additional book reading), and repeat every character in intervals of, let's say 1-5-10-20 days. Imagine that after about 2-4 repititions you start to confuse each character with other characters, because some look really similar to others, so you rate them 0 and start over again and again.

Imagine that after about 30 days you remember about 80% of the characters, but it takes you about 10 seconds to remember each character, and you mix up 20% of the characters with other characters. Now you start reading a book - it will take you one minute to read a single word, and because in most words there is at least one character you confuse, you are unsure what each word and each sentence means.

Disencouragements:
1) You keep confusing characters, so you have to restart learning by grading them 0, sometimes over and over again
2) Actual reading will take you a very long time
3) While reading, you are constantly unsure if your visual recognition is right or not

The analogy with the latin characters doesn't fit perfectly, because in Japanese you have about 2000 characters, and each character may be read different depending on the context. A problem for non-japanese learners is that you aren't confronted with text in daily life that much, so you won't train your visual recognition along the way.

I hope that explains why you have to repeat Japanese Kanji MUCH more often than other learning items :)
And I think setting the initial easiness to 1.5 might do the trick.

Peter Bienstman

unread,
Jun 2, 2016, 5:37:49 AM6/2/16
to mnemosyne-...@googlegroups.com


I hope that explains why you have to repeat Japanese Kanji MUCH more often than other learning items :)
And I think setting the initial easiness to 1.5 might do the trick.

 

Or giving these cards grades 0 from time to time, which has the advantage that you don’t have to rely on someone to write a plugin for this J

 

Cheers,

 

Peter

.

Johan

unread,
Jun 2, 2016, 6:33:24 AM6/2/16
to mnemosyne-proj-users
Okay, I'm really sorry I have caused so much inconvenience.

How long do you think it would take to write that plugin?

Peter Bienstman

unread,
Jun 2, 2016, 6:42:19 AM6/2/16
to mnemosyne-...@googlegroups.com

The most time-consuming part is a good GUI integration. I’m afraid it’s not something I can put on my own todo list, as I’m busy with the Python3 conversion atm…

 

Peter

 

From: mnemosyne-...@googlegroups.com [mailto:mnemosyne-...@googlegroups.com] On Behalf Of Johan
Sent: 02 June 2016 12:33
To: mnemosyne-proj-users <mnemosyne-...@googlegroups.com>
Subject: Re: [mnemosyne-proj-users] How can I make cards show more frequently?

 

Okay, I'm really sorry I have caused so much inconvenience.



How long do you think it would take to write that plugin?

--

You received this message because you are subscribed to the Google Groups "mnemosyne-proj-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mnemosyne-proj-u...@googlegroups.com.

Message has been deleted
Message has been deleted
Message has been deleted

Johan

unread,
Jun 2, 2016, 11:35:12 AM6/2/16
to mnemosyne-proj-users
Okay, I finally decided to alter the repetition algorithm:
(in SM2_mnemosyne.py)

        elif card.grade in [2, 3, 4, 5] and new_grade in [0, 1]:
             # In the retention phase and dropping back to the
             # acquisition phase.
             card.ret_reps += 1
             card.lapses += 1
             card.acq_reps_since_lapse = 0
             card.ret_reps_since_lapse = 0
             new_interval = 0
             card.easiness -= 0.4
             if card.easiness < 1.3:
                 card.easiness = 1.3

        elif card.grade in [2, 3, 4, 5] and new_grade in [2, 3, 4, 5]:
            # In the retention phase and staying there.
            card.ret_reps += 1
            card.ret_reps_since_lapse += 1
            # Don't update the easiness when learning ahead.
            if timing in ["LATE", "ON TIME"]:
                if new_grade == 2:
                    card.easiness -= 0.16
                if new_grade == 3:
                    card.easiness -= 0.14
                if new_grade == 5:
                    card.easiness += 0.10
                if card.easiness < 1.3:
                    card.easiness = 1.3
            if card.ret_reps_since_lapse == 1:
                # new_interval = 6 * DAY
                if new_grade == 2:
                    new_interval = 3 * DAY
                if new_grade == 3:
                    new_interval = 4 * DAY
                if new_grade == 4:
                    new_interval = 5 * DAY
                if new_grade == 5:
                    new_interval = 6 * DAY

            else:
                if new_grade == 2 or new_grade == 3:
                    if timing in ["ON TIME", "EARLY"]:
                        # new_interval = actual_interval * card.easiness
                        if new_grade == 2:
                            new_interval = actual_interval * card.easiness * 0.8
                        if new_grade == 3:
                            new_interval = actual_interval * card.easiness

I've managed to replace the file in the library (I exchanged the .pyo with a .py file and it still works), and the changes seem to work as well.
I'll test it in practice in the next days and weeks and I'll let you know how I'm coping with new Kanjis in the future.  :)

Thank you for your help, and keep up the good work! ^.^

Cheers,
Johan

Peter Bienstman

unread,
Jun 2, 2016, 11:45:14 AM6/2/16
to mnemosyne-...@googlegroups.com

Good luck!

 

From: mnemosyne-...@googlegroups.com [mailto:mnemosyne-...@googlegroups.com] On Behalf Of Johan
Sent: 02 June 2016 17:35
To: mnemosyne-proj-users <mnemosyne-...@googlegroups.com>
Subject: Re: [mnemosyne-proj-users] How can I make cards show more frequently?

 

Okay, I finally decided to alter the repetition algorithm:

--

You received this message because you are subscribed to the Google Groups "mnemosyne-proj-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mnemosyne-proj-u...@googlegroups.com.
To post to this group, send email to mnemosyne-...@googlegroups.com.

Johan

unread,
Jun 8, 2016, 5:08:39 AM6/8/16
to mnemosyne-proj-users
Until now it's working great! :D

When learning new difficult kanji it always bothered me that I had to decide between grading 0 (without lowering the easiness) and grading 2 (in order to lower the easiness, with the disadvantage of creating long intervals). By lowering the easiness when you forgot a card you can decrease the easiness fast. And in my opinion it's working quite fluently.

I'm finally regaining my trust in Mnemosyne and my confidence in learning.

Johan

unread,
Jun 17, 2016, 2:41:34 PM6/17/16
to mnemosyne-proj-users
I'm sorry. I finally located the real issue that was causing problems:
When learning vocabulary production (German -> Japanese) I was always trying to remember the Kanji, so that I could write them out. That was a lot of effort for little results.

So I just dropped vocabulary production completely, and instead I'm using the cramming scheduler more often. Problem solved.

I'm really sorry that I made such a fuss about it.
Reply all
Reply to author
Forward
0 new messages