FSRS vs SM-2: Anki 스케줄러, 어느 쪽을 써야 할까?
SM-2는 어디서 왔나
SM-2는 Piotr Woźniak이 1987년 SuperMemo를 위해 발표한 알고리즘이고, 클래식 Anki의 스케줄러는 그 계보를 잇습니다. 원리는 단순합니다. 카드마다 "ease 계수"(초기값 약 2.5)가 있고, 잘 맞히면 다음 간격은 이전 간격 × ease, "어려움"이나 실패면 ease가 내려갑니다.
작동은 합니다 — 수십 년치 Anki 사용자가 그 증거입니다. 하지만 알려진 약점이 있습니다.
- Ease 지옥. 실패할 때마다 ease가 내려가고 회복은 느립니다. 한 번 헤맨 카드는 영영 짧은 간격에 갇혀, 필요 없는 복습이 매일의 큐를 채웁니다.
- 모두에게 같은 공식. 상수는 1987년에 손으로 맞춘 값이고 모든 사람, 모든 카드에 동일합니다. 당신의 실제 망각 곡선은 전혀 반영되지 않습니다.
- 유지율 다이얼이 없다. SM-2에게 "이 덱을 90% 기억하고 싶다"고 말할 수 없습니다. 간접적인 손잡이(간격 계수 등)를 돌리며 바랄 뿐입니다.
FSRS는 무엇이 다른가
FSRS(Free Spaced Repetition Scheduler, Jarrett Ye와 협력자들의 오픈소스 프로젝트)는 고정 공식을 기억 모델로 대체합니다. 각 카드는 세 가지 값(DSR 모델)으로 추적됩니다.
- Difficulty(난이도) — 이 카드가 당신에게 얼마나 어려운가
- Stability(안정성) — 기억이 현재 얼마나 오래 유지되는가
- Retrievability(회상 가능성) — 지금 이 순간 떠올릴 수 있는 확률
파라미터는 손으로 맞춘 상수가 아니라 당신의 복습 기록에 맞춰 최적화됩니다. 그리고 간접 손잡이 대신 진짜 관심사인 목표 유지율(예: 0.90)을 설정하면, FSRS는 각 카드를 "회상 확률이 그 값 아래로 떨어지기 직전"에 복습시킵니다.
실용적인 결과는 두 가지입니다.
- 낭비되는 복습이 줄어든다. 잘 아는 카드는 SM-2보다 과감하게 미뤄지고, 정말 어려운 카드는 더 일찍 돌아옵니다. 수억 건의 실제 Anki 리뷰로 돌린 공개 srs-benchmark에서 FSRS 계열이 SM-2보다 일관되게 회상을 정확히 예측합니다 — 그 예측 정확도가 곧 절약되는 복습으로 바뀝니다.
- Ease 지옥이 없다. 실패는 안정성과 난이도를 합리적으로 갱신할 뿐, 카드를 영구히 벌주지 않습니다.
솔직한 주의점
- FSRS는 맞출 기록의 질만큼만 좋습니다. 리뷰가 아주 적을 때는 집단 수준의 기본값에서 시작합니다(그래도 대규모 데이터로 맞춘 값이라 충분히 쓸 만합니다).
- 간격을 계속 수동으로 바꾸거나 "어려움"을 "실패" 대신 쓰면 모델이 노이즈를 학습합니다. 정직하게 채점하세요.
- SM-2가 "고장난" 건 아닙니다. 루틴이 안정적이고 부담도 괜찮다면, 전환은 구조가 아니라 최적화입니다.
진행 상황을 잃지 않고 전환하기
데스크톱 Anki(23.10 이상): 덱 옵션 → FSRS 활성화 → 목표 유지율 설정(0.85–0.95가 합리적 범위, 높을수록 복습 증가) → "최적화"로 파라미터를 기록에 맞춥니다. 카드, 기록, 미디어는 그대로이고 앞으로의 스케줄만 바뀝니다.
아이폰에서는: Guru가 기본이 FSRS입니다. 가져온 덱(스케줄이 보존된 .apkg)은 기존 상태에서 이어지고, AI로 새로 만든 덱(PDF에서 바로)도 첫 카드부터 FSRS로 스케줄됩니다. 찾아야 할 토글이 없습니다.
목표 유지율 고르기
- 0.90 — 기본 추천. 부담과 유지의 균형형.
- 0.95 — 몇 주 안에 시험이 있고 실패 비용이 클 때. 매일의 큐가 눈에 띄게 커집니다.
- 0.85 — 언어, 상식처럼 장기 축적형. 카드 한 장보다 총량이 중요할 때.
FSRS의 핵심은 이 트레이드오프가 마침내 명시적이 됐다는 것입니다. 당신이 유지율을 고르면, 알고리즘이 그것을 지키는 최소한의 복습 비용을 지불합니다.