- 과거에 학습한 자료의 복습 간격을 늘리는 학습 기법인 Spaced Repetition System은 적은 시간 투자로도 효과적인 장기 기억 형성을 제공함
- 머신러닝 기반 예측으로 개인별 카드 스케줄링을 최적화하는 FSRS(Free Spaced Repetition Scheduler) 알고리듬으로 기존 방법보다 효율과 사용 만족도가 크게 향상됨
- Anki 최신 버전에서 FSRS가 기본 스케줄러로 적용되어 대부분의 사용자가 이미 활용 중임
- WaniKani, Bunpro 등의 서비스와 비교해 Anki와 FSRS 조합이 학습 효율과 유연성에서 우월함
간격 반복 시스템 개요
- 다양한 분야에서 지식 습득과 장기 기억 유지를 위해 간격 반복 시스템이 활용됨
- 학교 수업이나 취미 학습처럼 제한된 시간 내에서 효과적인 복습을 가능하게 하는 솔루션임
- 플래시카드 형식으로 정보를 반복적으로 제시하며, 복습 간격을 사용자 반응에 따라 조절함
- 하루에 20분씩 투자하면 1년에 3,650개 단어를 쉽게 외울 수 있음
기존의 스케줄링 방법과 한계
- 초기 간격 반복 시스템에는 SuperMemo-2 알고리듬이 주로 쓰임
- 이 방식은 “1일 뒤, 맞히면 6일 뒤, 다시 맞히면 15일 뒤, 나중엔 37.5일 뒤” 식으로 복습 간격이 늘어남
- 오답일 경우엔 다시 1일 뒤로 초기화되어, 같은 카드를 반복적으로 짧은 간격으로 보게 되어 좌절감이 큼
- 이 방식은 경험적, 임의적으로 정해진 규칙에 기반하여, 개별 지식 항목에 따라 최적화되어 있지 않음
- 모든 정보의 기억 곡선이 동일하다고 가정하는 비현실적 전제가 존재함
FSRS: 개선된 머신러닝 기반 스케줄링
- FSRS(Free Spaced Repetition Scheduler) 는 최신 머신러닝 기법을 기반으로, 복습 간격을 개별적으로 최적화함
- “언제 카드의 회상 확률이 90%로 떨어지는지”를 예측 문제로 전환하여, 정확한 복습 시점을 산출함
- FSRS 모델은 난이도(카드별 1~10), 안정성(100%→90%로 회상율이 떨어지는 기간), 회수 가능성(일수 경과 후 회상 확률)의 세 가지 함수를 곡선 피팅으로 구함
- 21개의 파라미터를 이용해 대규모 리뷰 데이터에 맞춰 곡선을 최적화하며, 개인별 리뷰 이력을 반영해 파라미터를 재조정함
- FSRS는 사용자가 원하는 목표 회상율(예: 90%)을 설정할 수 있고, 이에 따른 일일 학습량과 카운트를 시뮬레이션할 수 있음
- 예를 들어, 70% 회상율로 설정할 때 일일 복습량은 줄고, 기억하는 카드 수는 오히려 늘어남
FSRS의 실제 적용
- Anki는 2023-11 출시된 23.10 버전부터 기본 스케줄러로 FSRS를 채택함
- FSRS를 활용하면 일일 복습 부담이 줄고, 틀린 카드를 복습할 때도 스트레스가 심하게 늘어나지 않음
- 권장 설정에 따라 학습 효율과 학습량 균형을 최적화할 수 있음
- 오픈소스 프로젝트로 여러 언어와 소프트웨어에서 구현이 가능함
다른 학습 서비스와의 비교
- WaniKani, Bunpro 등 구독형 서비스의 경우, 정해진 간격만 제공하고, 개인 맞춤화된 조정이 없음
- 예: 4시간, 8시간, 1일, 2일, 7일... 등 임의적 복습 주기 설정
- 카드 오답 시 최소 단계로 초기화하지 않거나, 머신러닝 기반 예측이 없어 효율성이 크게 뒤처짐
- 일정 간격이 지난 카드는 더 이상 다시 보지 않게 되어, 장기 지식 손실이 발생함
- 이로 인해 학습자의 스트레스와 비효율이 누적됨
Anki의 장점
- UI는 다소 불편할 수 있으나 고성능 학습 기능과 지속적 업데이트, 폭넓은 커스터마이징이 강점임
- 실제로 다양한 분야와 단계의 학습자에 적합한 유연성을 제공함
- 기초부터 고급 단계까지 장기적인 지식 구축에 최적임
- 직접적인 사용자 경험을 바탕으로, 효과적인 학습 도구로 자리매김함
더 알아보기
- 간격 반복의 원리, FSRS의 자세한 작동 방식 및 구현 예시는 아래 자료 참고
- open-spaced-repetition/awesome-fsrs: 다양한 프로그래밍 언어와 소프트웨어에서의 FSRS 구현 목록
- open-spaced-repetition/srs-benchmark: FSRS와 여러 알고리듬(예: SuperMemo-2, Duolingo 알고리듬 등) 비교 벤치마크 결과
- 현재 FSRS보다 일관되게 더 좋은 성능을 보이는 것은 OpenAI Reptile 알고리듬 기반의 LSTM 신경망 정도임