2.09 - 📹 Algoritmo FSRS - Anki Macrocurso
Algoritmo tradicional de Anki (SM-2)
Hasta ahora, todo este curso ha enseñado Anki con un enfoque en el uso del algoritmo tradicional, el llamado algoritmo SM-2. Con SM-2, podemos elegir nuestros pasos de aprendizaje, el intervalo de graduación y más ajustes para dictar cómo queremos que se comporten las tarjetas. Tras repasar nuestras tarjetas durante un tiempo prudencial, las estadísticas de Anki pueden decirnos cuál es nuestro porcentaje de "retención". En otras palabras, puede inferir qué porcentaje de la información estamos aprendiendo.
Introducción al FSRS
FSRS es un algoritmo moderno de repetición espaciada que fue desarrollado por Jarrett Ye. Su objetivo es aprender tus patrones de memoria y programar las revisiones de manera más eficiente que el algoritmo SM-2 de Anki.
El algoritmo FSRS se nombró así por sus siglas en inglés "Free Spaced Repetition Scheduler". Es un algoritmo de aprendizaje automático que está diseñado para ser una actualización del algoritmo original de Anki.
El FSRS para Anki inicialmente comenzó como un addon, proporcionando una programación personalizada basada en un algoritmo diferente al del programador de tarjetas incorporado en Anki. Sin embargo, a partir de la versión 23.10 de Anki, FSRS ha sido integrado de manera nativa en la aplicación con la opción de activarse o no según el usuario decida.
Parámetros de intervalos vs. Retención
Con el algoritmo FSRS, en vez de elegir los parámetros para modificar los intervalos, como solíamos hacer con el algoritmo tradicional, ahora elegiremos nuestro nivel de retención que nos gustaría tener en todas las tarjetas. A través de este aprendizaje mediante parámetros automáticos, el algoritmo elegirá automáticamente los ajustes que son únicos para nosotros y se ajustará dinámicamente para cada revisión para que cada tarjeta esté lo más cerca posible de su retención deseada.
Por lo tanto, FSRS puede disminuir o ampliar nuestras revisiones en un 20-30% para conseguir el nivel de retención deseado para una tarjeta específica, lo que significa que podríamos revisar (lo normal suele ser más común que nos encontremos con una disminución) muchísimas menos veces nuestras tarjetas consiguiendo una retención suficiente, ahorrándonos mucho tiempo.
Según The Anking, se han realizado muchos estudios sobre FSRS y supera a muchos otros algoritmos de repetición espaciada (incluyendo Duolingo, supermemo y SM-2).
Modelo de tres componentes de la memoria (DSR)
El FSRS se basa en el "Modelo de tres componentes de la memoria" ("Three Component Model of Memory"). El modelo afirma que tres variables son suficientes para describir el estado de una memoria unitaria en un cerebro humano. Estas tres variables son
- Recuperabilidad (Retrievability) (R):
- La probabilidad de que la persona pueda recordar con éxito una información concreta (tarjeta) en un momento dado. Depende del tiempo transcurrido desde la última revisión y de la estabilidad de la memoria (S).
- Estabilidad (Stability) (S):
- El tiempo, en días, necesario para que R disminuya del 100% al 90%. Por ejemplo, S = 365 significa que transcurrirá un año entero antes de que la probabilidad de recordar una tarjeta determinada descienda del 100 % al 90%.
- Puede considerarse como la pendiente de la curva del olvido en el sentido de que una tarjeta más estable puede verse con menos frecuencia sin consecuencias para la retención.
- Dificultad (Difficulty) (D):
- La complejidad inherente a una información concreta. Representa lo difícil que es aumentar la estabilidad de la memoria tras un repaso.
En FSRS, estos tres valores se denominan colectivamente "estado de memoria" (memory state). El valor de R cambia diariamente, mientras que D y S sólo cambian después de que se haya revisado una tarjeta, cosa obvia ya que según pasa cada día en el que no repasas una información, dicha información tiene menos probabilidad de ser recuperada. Cada tarjeta tiene sus propios valores DSR, es decir, cada tarjeta tiene su propio estado de memoria.
Para estimar con precisión los valores DSR, FSRS analiza el historial de revisiones del usuario y utiliza el aprendizaje automático para calcular los parámetros que mejor se ajustan al historial de revisiones. Si un usuario aún no tiene suficientes valoraciones, se utilizan en su lugar los parámetros por defecto.
La retención actúa como una función exponencial negativa a medida que pasa el tiempo, es decir, olvidas una información mucho más rápidamente al inicio y más lentamente a medida que pasa el tiempo.
Retención
Los valores de retención comprendidos entre el 70% y el 97% se consideran razonables, aunque desde The AnKing recomiendan los intervalos que van del 80 al 95 %. Una mayor retención conlleva más revisiones al día.
Se usa el índice de retención para encontrar el modificador de intervalo óptimo, cuya fórmula para ajustar su modificador de intervalo es:
Modificador de Intervalo = log(retención% deseada) / log (retención% actual)
Si queremos alcanzar el 85% de retención en una tarjeta y actualmente está en el 90%, debe realizar el siguiente cálculo el siguiente cálculo: Modificador de intervalo = log(0.85) / log(0.90) = 154 %
.
Esto lo que significa es que, como ha aumentado el modificador de intervalo (en el ejemplo en el que estábamos con la configuración por defecto del algoritmo SM-2, donde su valor base es de 100 %), se va aumentar el intervalo de revisión de dicha tarjeta y, por tanto, la revisión de dicha tarjeta se va espaciar mucho más en el tiempo. Si imaginamos que tenemos varias tarjetas con las mismas características, el tiempo ahorrado es suma es grande.
Voy a destacar lo siguiente: el término "recuperabilidad" se refiere a una sola revisión y su valor lo predice el algoritmo. El término "retención" se refiere a un grupo de revisiones sucesivas (a lo largo del tiempo) y su valor se mide a partir del historial de valoraciones.
Comparación de intervalos de SM-2 vs. FSRS
Fundamento de la comparativa
Para simplificar, la comparación sólo nos centraremos en los intervalos dados en diferentes secuencias de calificación. Las revisiones en los pasos de (re)aprendizaje serán ignoradas, sólo se considerará la primera revisión de las nuevas tarjetas.
Los parámetros por defecto de FSRS para la comparación:
var w = [0.4, 0.6, 2.4, 5.8, 4.93, 0.94, 0.86, 0.01, 1.49, 0.14, 0.94, 2.18, 0.05, 0.34, 1.26, 0.29, 2.61];
Caso 1
Fundamento
Pulsando "bien" continuamente, con diferentes primeras valoraciones (valoración = botón pulsado).
1
- Secuencia de valoración:
1,3,3,3,3,3,3,3,3,3
- Intervalos de Anki:
1d,3d,8d,20d,1.7m,4.2m,10.4m,2.1y,5.4y,13.4y
- Intervalos de FSRS:
1d,2d,6d,14d,1.1m,2.3m,4.7m,9.1m,1.4y,2.5y
2
- Secuencia de valoración:
2,3,3,3,3,3,3,3,3,3
- Intervalos de Anki:
1d,3d,8d,20d,1.7m,4.2m,10.4m,2.1y,5.4y,13.4y
- Intervalos de FSRS:
1d,3d,9d,24d,1.9m,4.4m,9.5m,1.6y,3.1y,5.7y
3
- Secuencia de valoración:
3,3,3,3,3,3,3,3,3,3
- Intervalos de Anki:
1d,3d,8d,20d,1.7m,4.2m,10.4m,2.1y,5.4y,13.4y
- Intervalos de FSRS:
2d,7d,21d,1.9m,4.8m,11.2m,2.0y,4.1y,8.1y,15.0y
4
- Secuencia de valoración:
4,3,3,3,3,3,3,3,3,3
- Intervalos de Anki:
4d,10d,25d,2.1m,5.3m,1.1y,2.7y,6.8y,16.9y,42.3y
- Intervalos de FSRS:
6d,20d,2.0m,5.5m,1.1y,2.6y,5.6y,11.5y,22.3y,41.4y
Fase de aprendizaje
- No existe fase de aprendizaje en el FRSR
- Además, FSRS solo tiene en cuenta el primer repaso del día
- Si tienes 100 revisiones pulsadas con Otra vez en una sesión de estudio, no hará caso
- La primera revisión de cada tarjeta nueva sí condiciona las futuras revisiones de esta, cosa que no pasaba con la existencia de la fase de aprendizaje.
- En el algoritmo tradicional Anki la primera revisión no afecta el factor Facilidad, mientras que en FSRS la primera revisión afecta la Dificultad y la Estabilidad
Botones en FSRS
El comportamiento de los botones "otra vez", "difícil", "bueno" y "fácil" es diferente en FSRS.
- Aunque no está muy estudiado, algunos de los expertos sugieren que usar sólo 2 botones (again & good) es superior a usar 4 botones (again, hard, good, easy).
- Pulsar Difícil, Bien y Fácil aumentará la estabilidad de una tarjeta y hará que veas tarjetas MENOS a menudo.
- Solo pulsando Otra vez conseguimos disminuir la estabilidad de una tarjeta
- Se recomienda pulsar Otra vez sólo si se equivoca de tarjeta, no difícil (cosa que anteriormente se podría utilizar casi indistintamente)
Ventajas y desventajas de FSRS y de SM-2
Ventajas y desventajas de FSRS con respecto a SM-2
Ventajas
- Más eficacia gracias a la programación dinámica:
- A diferencia de los métodos tradicionales de programación a intervalos fijos, FSRS adapta su programación de repaso en función del rendimiento individual y de la dificultad inherente de cada información (es decir, de cada tarjeta). Este enfoque personalizado garantiza que los alumnos dediquen más tiempo a repasar los contenidos que requieren refuerzo, maximizando así la eficacia de las sesiones de estudio.
- Menos repasos:
- Esta reducción de la carga de trabajo de repaso puede traducirse en un importante ahorro de tiempo para los alumnos.
- Ajustes individualizado para conseguir la retención deseada en cada tarjeta.
- Podemos elegir la retención deseada
Desventajas
- Complejidad:
- Tenemos que confiar que funciona bien y que las matemáticas salen bien, porque entender esto... solo para cerebritos
- Al cambiar de algoritmo, al inicio, tendremos más tarjetas a repasar
Ventajas y desventajas de SM-2 con respecto a FSRS
Ventajas
- Simple y fácil de entender
- Más predecible
- Más fácil de modificar
Desventajas
- No predice la recuperabilidad
- Es peor determinando el intervalo óptimo para cada tarjeta.
- Puedes caer en el Ease Hell (infierno de los intervalos bajos)
Cómo activar el FRSR
- Opciones el mazo > FSRS > Activar
- Una vez que se active el cambio será irreversible, afectando a toda la colección.
- Aviso: Por favor, asegúrate de que todos tus clientes Anki son Anki(Mobile) 23.10+ o AnkiDroid 2.17+. FSRS no funcionará correctamente si uno de tus clientes es más antiguo.
Configuraciones del FSRS
- En Nuevas tarjetas, una recomendación es solo tener un valor, para cuando se pulse Otra vez.
- En FSRS:
- Maximum interval
- Desired retention (retención deseada)
- FSRS parameters
- El botón de Optimize (optimizar) hará cálculos basados en la configuración del algoritmo que teníamos con dicho mazo
- Si ha realizado más de 1.000 revisiones de por vida, FSRS calculará automáticamente estos parámetros basándose en su historial de aprendizaje.
- Si usted nunca ha hecho ninguna revisión, FSRS utilizará un conjunto de parámetros por defecto y partirá de ahí.
- Evaluate (Evaluar): cálculo de la menor carga futura en los repasos
- El botón de Optimize (optimizar) hará cálculos basados en la configuración del algoritmo que teníamos con dicho mazo
- Pulsar guardar (Save)
Estadísticas
En la ventana de estadísticas tendremos nuevas estadísticas gracias a cambiarnos al algoritmo FSRS.