FSRS
FSRS 알고리즘 해설: 언제 잊을지 어떻게 예측할까?
FSRS가 망각을 예측하고 복습 시점을 정하는 원리를 알아보세요. 난이도, 안정성, 회상 가능성으로 기억과 학습량의 균형을 잡습니다.
AI 생성 이미지이 페이지에서
- 복습 시점에는 기억 모델이 필요한 이유
- 고정된 일정은 서로 다른 기억을 구별하지 못한다
- 적응형 스케줄링은 답변을 근거로 삼는다
- FSRS는 기억을 어떻게 모델링할까?
- 난이도: 나에게 이 카드가 얼마나 어려운가
- 안정성: 망각에 걸리는 시간 척도
- 회상 가능성: 지금 답을 떠올릴 확률
- 망각 곡선에서 복습 날짜까지
- 하나의 기억과 세 가지 목표로 보는 예시
- 유지율 기준점을 직접 살펴보기
- 복습 후에는 무엇이 달라질까?
- 목표 유지율 정하기
- 90%가 흔한 출발점인 이유
- 목표를 높이면 학습량이라는 대가가 따른다
- FSRS와 SM-2 비교
- 다음 간격을 정하는 서로 다른 방식
- 실제 사용에서의 장점과 한계
- 현실적인 생활에 복습 맞추기
- 바쁜 날과 밀린 카드
- 시험 일정은 계획의 문제를 바꾼다
- 솔직한 평가와 명확한 카드가 근거를 개선한다
- FAQ
어제는 너무도 당연했던 플래시카드가 오늘은 잠깐 망설여집니다. 다음 주에는 아예 떠오르지 않을 수도 있고, 여전히 즉시 답할 수도 있습니다. 좋은 스케줄러라면 모든 정답에 똑같은 간격을 적용하기보다 이런 불확실성을 다뤄야 합니다.
한눈에 보기: FSRS는 기억이 어떻게 변하는지 추정하고, 일정 시간이 지난 뒤 카드의 답을 떠올릴 확률을 예측한 다음, 목표 회상 확률에 맞춰 복습 간격을 정합니다. 목표를 높일수록 대체로 복습 시점은 빨라집니다. 다만 예측은 모델일 뿐, 다음 답변을 보장하는 약속은 아닙니다.
이 글에서는 기억 상태에서 다음 복습 날짜까지 이어지는 판단 과정을 살펴봅니다. 먼저 기본 용어부터 간단히 익히고 싶다면 FSRS 초보자 가이드를 읽어 보세요.
복습 시점에는 기억 모델이 필요한 이유
고정된 일정은 서로 다른 기억을 구별하지 못한다
“하루 뒤, 사흘 뒤, 그다음에는 일주일 뒤에 복습” 같은 일정은 따르기 쉽습니다. 하지만 이미 익숙한 단어와 헷갈리는 정의를 똑같이 취급합니다. 오늘 두 카드에 모두 정답을 말했더라도 일주일 뒤까지 기억이 남아 있을 가능성은 크게 다를 수 있습니다.
고정 일정이 쓸모없다는 뜻은 아닙니다. 고정 일정은 학습에 구조를 주고, 시간 간격을 두고 인출을 시도하게 해 줍니다. 다만 덱이 커지면 기억마다 상태가 달라집니다. 이미 안정된 카드를 반복해서 보는 일은 실제로 떠올리기 어려운 카드와 복습 시간을 놓고 경쟁하게 됩니다.
적응형 스케줄링은 답변을 근거로 삼는다
FSRS는 Free Spaced Repetition Scheduler의 약자입니다. 카드의 복습 기록, 경과 시간, 평가를 사용해 추정된 기억 상태를 업데이트하고, 그 결과를 다음 복습 간격으로 바꿉니다.
여기서 카드의 상태를 업데이트하는 일과 모델의 파라미터를 최적화하는 일은 구분해야 합니다. 현재 파라미터를 사용하면 복습 직후에도 카드 상태를 업데이트할 수 있습니다. 반면 학습자의 누적 기록에 맞춰 파라미터를 조정하는 일은 일부 앱이 지원하는 별도의 과정입니다. FSRS를 사용한다고 해서 앱이 자동으로 개인별 최적화를 수행하는 것은 아닙니다.
오래된 스케줄러가 모두 고정된 사다리였던 것도 아닙니다. SM-2 역시 답변의 질에 따라 간격을 조정합니다. FSRS의 차이는 기억의 안정성과 회상 확률을 명시적으로 추정한다는 데 있습니다. “예전 알고리즘은 전혀 적응하지 못했다”가 아니라, 이 모델링 방식의 차이를 비교하는 것이 정확합니다.
FSRS는 기억을 어떻게 모델링할까?
난이도: 나에게 이 카드가 얼마나 어려운가
난이도는 특정 학습자에게 특정 카드가 얼마나 어려운지 추정한 값입니다. 짧은 정의라도 비슷한 정의 세 개와 닮았다면 어려울 수 있습니다. 반대로 긴 답변이라도 이미 개념을 이해하고 있다면 쉽게 느껴질 수 있습니다.
FSRS에서 난이도는 복습 뒤 안정성이 어떻게 변할지 정하는 데 영향을 줍니다. 단순히 “어려운 카드는 내일 복습”이라고 말하는 타이머가 아닙니다. 어려운 카드 두 장도 한쪽 기억이 훨씬 안정적이라면 복습 간격은 달라질 수 있습니다.
안정성: 망각에 걸리는 시간 척도
이 모델에서 안정성은 정확한 의미를 가집니다. 복습 후 예측 회상 확률이 90%까지 떨어지는 데 걸리는 일수입니다. 따라서 안정성이 10일인 카드는 가정한 망각 곡선 아래에서 10일 뒤에 답을 기억할 확률을 90%로 모델링합니다.
이는 11일째에 기억이 사라진다는 뜻이 아니며, 선택된 복습 간격과도 같은 말이 아닙니다. 같은 안정성을 가진 카드라도 목표 유지율이 높다면 더 이른 간격을 선택할 수 있습니다. 성공적인 인출은 보통 추정 안정성을 높이고, 실패는 다른 방식의 업데이트가 필요하다는 근거를 제공합니다.
회상 가능성: 지금 답을 떠올릴 확률
회상 가능성은 특정 시점에 답을 떠올릴 확률입니다. 복습 후 얼마나 시간이 지났는지와 추정된 안정성에 따라 달라집니다. 난이도와 안정성이 기억의 측면을 설명한다면, 회상 가능성은 당장 복습 일정을 정할 때 필요한 질문에 답합니다.
어휘 카드 두 장을 생각해 보세요. 한 장의 안정성은 2일이고 다른 한 장은 20일입니다. 두 카드 모두 마지막에는 정답을 말했더라도 10일이 지난 뒤 회상 확률이 비슷할 필요는 없습니다. 같은 경과 시간이 첫 번째 기억에는 훨씬 큰 도전이기 때문입니다.
이 정의는 FSRS 알고리즘 문서에 기반합니다. 이 문서는 뇌에 실제로 무엇이 들어 있는지를 직접 측정하는 것이 아니라, 복습 결과를 예측하는 모델을 설명합니다.
망각 곡선에서 복습 날짜까지
하나의 기억과 세 가지 목표로 보는 예시
중간에 복습하지 않고 안정성을 10일로 고정해 보겠습니다. 모델은 높은 회상 확률에서 시작해 점진적인 하락을 예측합니다. 복습 기준점은 이 곡선이 목표 유지율에 도달하는 지점입니다.
아래의 예시 곡선에서는 목표가 80%일 때 간격이 약 24일입니다. 90%에서는 10일이고, 95%에서는 약 4.6일입니다. 기억의 추정치는 그대로인데, 복습 시점에 허용하는 예측 위험만 달라진 것입니다.
이것은 예상보다 긴 복습 간격도 설명해 줍니다. 추정된 기억이 강하거나 목표가 낮거나, 혹은 둘 다일 수 있습니다. 날짜만 보고 앱이 카드를 어렵다고 판단했는지는 알 수 없습니다. 기억 추정치와 스케줄링 설정을 함께 봐야 합니다.
유지율 기준점을 직접 살펴보기
목표를 바꾸면서 같은 곡선 위에서 기준점이 어떻게 이동하는지 확인해 보세요. 가로선은 요청한 회상 확률을 나타내고, 곡선과 만나는 지점이 대략적인 복습 간격입니다.
안정성은 10일로 고정하며 FSRS-4.5 곡선을 사용합니다. 반복 복습이나 개인 예측은 포함하지 않습니다.
이 시연은 한 가지 개념을 분리해 보여 주기 위해 문서화된 FSRS-4.5 망각 곡선과 고정된 10일 안정성을 사용합니다. 반복 복습을 시뮬레이션하거나 개인 파라미터를 학습하거나 특정 앱의 일정을 그대로 재현하지는 않습니다. 최신 FSRS 버전은 다른 곡선 형태를 사용할 수 있고, 실제 앱은 간격을 반올림하거나 작은 일정 변동을 넣거나 학습 단계와 간격 제한을 적용할 수 있습니다.
목표를 높인다고 곡선 자체가 더 강해지는 것은 아닙니다. 복습 시점이 앞당겨질 뿐입니다. 기억 자체를 향상하려면 학습과 인출이 필요하고, 목표는 언제 다시 확인할지를 바꿀 뿐입니다.
복습 후에는 무엇이 달라질까?
다음 복습이 오면 스케줄러는 경과 시간과 평가라는 새로운 관찰값을 받습니다. 난이도와 안정성을 업데이트한 뒤, 갱신된 상태에서 다음 간격을 고릅니다. 따라서 다음에 그려지는 곡선은 이전과 달라질 수 있습니다.
상당한 시간이 지난 뒤의 정답은 즉시 반복해서 맞힌 정답과 다른 근거를 제공합니다. 실패도 중요합니다. 해당 조건에서 회상에 성공하지 못했다는 사실을 모델에 알려 주기 때문입니다. 그래서 하나의 고정 안정성 곡선을 끝없이 연장하는 방식으로 반복 복습 일정을 정직하게 표현할 수는 없습니다.
과정은 다음과 같은 순환으로 생각할 수 있습니다.
- 답을 보기 전에 먼저 떠올려 봅니다.
- 결과를 솔직하게 평가합니다.
- 추정된 기억 상태를 업데이트합니다.
- 목표 유지율에 맞는 다음 간격을 선택합니다.
- 새로운 근거를 바탕으로 반복합니다.
목표 유지율 정하기
90%가 흔한 출발점인 이유
목표 유지율은 카드가 복습할 시점에 도달했을 때 모델이 목표로 삼는 확률입니다. Anki는 기본값으로 90%를 사용하며, 이를 기억 유지와 학습량 사이의 균형으로 설명합니다. 모든 학습자와 과제에 적용되는 과학적 최적값이 아니라 출발점입니다. (Anki 덱 옵션)
90%라는 목표가 지식의 10%를 영구적으로 포기한다는 뜻은 아닙니다. 어느 순간에도 카드마다 지난 시간이 다르고, 실패한 복습은 다시 배울 기회가 됩니다. 또한 다음 열 번 중 정확히 아홉 번 맞힌다는 보장도 아닙니다. 실제 결과는 흔들리며, 잘 맞지 않는 모델은 학습 자료에 대해 보정이 나쁠 수 있습니다.
설정을 판단할 때는 충분한 복습 기록에서 추세를 보세요. 힘들었던 어느 오후, 새로 배운 카드 몇 장, 바뀐 덱 하나만으로 모델이 정확하거나 부정확하다고 단정하기는 어렵습니다.
목표를 높이면 학습량이라는 대가가 따른다
같은 기억 상태라면 목표를 높일수록 간격은 짧아집니다. 예시에서 90%에서 95%로 올리면 간격이 절반 이하로 줄어듭니다. 이는 하나의 이론적 간격을 비교한 것이며, 전체 복습량이 정확히 두 배가 된다는 뜻은 아닙니다.
장기적인 학습량은 새 카드 수, 실패 횟수, 안정성 변화, 학습 단계, 실제로 쓸 수 있는 공부 시간에도 영향을 받습니다. Anki 매뉴얼은 특히 목표가 매우 높을 때 90%를 넘기면 학습량이 빠르게 늘어난다고 경고합니다. 거의 완벽해 보인다는 이유로 99%를 선택하면 지속하기 어려운 일정이 될 수 있습니다.
잊었을 때의 결과를 기준으로 결정하세요. 장기적인 어휘 학습과 가까운 시험은 서로 다른 우선순위를 요구할 수 있습니다. 학습량을 감당하기 어렵다면 유지율 설정과 함께 새 카드 수를 줄이고 카드 설계를 개선해 보세요. 목표를 높인다고 하루에 시간이 더 생기지는 않습니다.
FSRS와 SM-2 비교
다음 간격을 정하는 서로 다른 방식
원래의 SM-2 알고리즘은 답변의 질을 바탕으로 ease factor를 조정하고, 성공적인 반복 뒤 간격을 늘립니다. 실패하면 반복 순서를 다시 시작합니다. 적응형이지만, 요청한 회상 확률을 만족하도록 계산해 간격을 고르는 방식은 아닙니다.
FSRS는 난이도와 안정성을 모델링하고, 경과 시간에 따른 회상 가능성을 계산한 뒤 유지율 목표를 중심으로 간격을 정합니다. 앱이 이 흐름을 지원한다면 복습 기록을 바탕으로 파라미터를 최적화할 수도 있습니다. 두 시스템 모두 복습에서 얻는 피드백에 의존합니다.
앱을 비교할 때는 주의해야 합니다. “SM-2 기반”이라고 설명하는 앱도 상당한 변경을 적용할 수 있습니다. 마찬가지로 FSRS를 사용하는 두 앱도 버전, 파라미터, 학습 단계, 간격 제한, 복습 동작이 다를 수 있습니다. 알고리즘 이름만으로 전체 사용자 경험을 알 수는 없습니다.
실제 사용에서의 장점과 한계
FSRS는 예측 회상과 유지율·복습 시점 사이의 균형을 생각할 수 있는 명확한 방법을 제공합니다. 그래서 왜 복습이 필요한지, 목표가 간격에 어떤 영향을 주는지 설명하기 쉽습니다. 파라미터 피팅을 지원한다면 기록된 복습 패턴에 맞춰 모델을 조정할 수도 있습니다.
한계도 현실적입니다. 기록이 부족하거나 오해를 불러일으키고, 평가가 일관되지 않거나, 카드가 모호하거나, 앱 밖에서 배운 내용이 많으면 예측은 어려워집니다. 모델이 보는 것은 기록된 근거이지, 기억을 강화한 모든 대화·강의·문제 풀이가 아닙니다.
FSRS의 가치를 설명하기 위해 복습량이 몇 퍼센트 줄어든다고 약속할 필요는 없습니다. 더 나은 예측은 복습을 더 유용하게 배분하는 데 도움을 줄 수 있지만, 실제 학습량과 회상 개선 정도는 데이터, 설정, 습관에 달려 있습니다.
현실적인 생활에 복습 맞추기
바쁜 날과 밀린 카드
복습 예정일은 생물학적 유효기간이 아니라 모델에 기반한 권장 시점입니다. 놓쳤다고 해서 카드가 즉시 잊히는 것은 아니지만, 예측 회상 확률은 대체로 더 낮아집니다. 다시 돌아왔을 때 솔직하게 복습해 스케줄러가 긴 공백 뒤에 무슨 일이 있었는지 근거를 얻도록 하세요.
일정에 현실적인 복습 시간을 확보하고, 밀린 카드가 쌓이면 새 카드 유입을 줄이세요. 달력의 시간은 내 시간을 정리하고, 스케줄러는 개별 카드를 정리합니다. 둘은 서로 보완하는 작업이며, FSRS를 쓴다고 해서 달력과 자동으로 연동되는 것은 아닙니다.
SpaceRep는 FSRS로 플래시카드 복습을 예약하고 시험 덱에는 마감일을 고려한 스케줄링을 적용합니다. 이 날짜를 학습 루틴을 돕는 기준으로 활용하되, 이해와 응용에 쓸 시간도 남겨 두세요.
시험 일정은 계획의 문제를 바꾼다
시험에는 두 번째 제약이 생깁니다. 장기 스케줄러라면 더 늦게 복습하라고 하더라도 특정 날짜까지 유용한 회상 능력을 갖춰야 합니다. 앱은 더 높은 유지율 목표나 간격 제한으로 이를 처리할 수 있지만, 동작은 구현에 따라 다릅니다.
완벽한 플래시카드 수치를 좇느라 쓸 수 있는 시간을 전부 사용하지는 마세요. 글로 설명하기, 여러 유형의 문제 풀기, 시간 제한을 둔 연습은 짧은 인출 질문만으로는 시험할 수 없는 능력을 다룹니다. 시험 전 몰아치기와 분산 복습 가이드에서 복습과 실제 평가 요구를 조화시키는 방법을 확인해 보세요.
솔직한 평가와 명확한 카드가 근거를 개선한다
답을 떠올리지 못했다면 실패로 기록하세요. FSRS에서 “Hard”는 어렵지만 성공한 회상을 뜻합니다. “Again” 대신 예의상 선택하는 항목이 되어서는 안 됩니다. 그렇지 않으면 실제로는 성공하지 못했는데도 기록에는 성공으로 남습니다.
카드 자체도 점검하세요. 질문 하나가 분명한가요? 내 답이 맞는지 판단할 수 있나요? 이해를 시험하나요, 아니면 익숙해 보이는 문장을 알아보는 데 그치나요? 효과적인 암기 카드 설계 가이드에서 평가를 흐리는 프롬프트를 고치는 방법을 알아보세요.
좋은 스케줄링은 의미 있는 관찰에서 시작합니다. 잘 설계된 카드, 실제 인출 시도, 솔직한 평가는 모델이 활용할 수 있는 근거를 제공하고, 예측이 완벽하지 않아도 복습을 가치 있게 만듭니다.
FAQ
유지율 90%는 모든 지식의 10%를 잊는다는 뜻인가요?
아닙니다. 예정된 복습 시점의 목표 회상 확률이지, 영구적으로 잃는 지식의 비율이 아닙니다. 더 최근에 복습한 카드는 예측 회상 확률이 더 높을 수 있고, 실패한 카드는 다시 배울 수 있습니다.
FSRS는 복습할 때마다 제 개인 파라미터를 학습하나요?
반드시 그렇지는 않습니다. 각 복습은 현재 파라미터를 사용해 카드의 기억 상태를 업데이트합니다. 기록에서 파라미터를 최적화하는 일은 별도의 기능이며 앱에 따라 지원 여부가 다릅니다.
FSRS가 시험 날 반드시 기억하게 해 주나요?
아닙니다. FSRS는 복습 근거에서 확률을 추정합니다. 마감일을 고려한 스케줄링이 계획을 도울 수는 있지만, 회상은 학습의 질, 평가 과제, 시험 당일의 조건에도 영향을 받습니다.
FAQ
유지율 90%는 모든 지식의 10%를 잊는다는 뜻인가요?
아닙니다. 예정된 복습 시점의 목표 회상 확률이지, 영구적으로 잃는 지식의 비율이 아닙니다. 더 최근에 복습한 카드는 예측 회상 확률이 더 높을 수 있고, 실패한 카드는 다시 배울 수 있습니다.
FSRS는 복습할 때마다 제 개인 파라미터를 학습하나요?
반드시 그렇지는 않습니다. 각 복습은 현재 파라미터를 사용해 카드의 기억 상태를 업데이트합니다. 기록에서 파라미터를 최적화하는 일은 별도의 기능이며 앱에 따라 지원 여부가 다릅니다.
FSRS가 시험 날 반드시 기억하게 해 주나요?
아닙니다. FSRS는 복습 근거에서 확률을 추정합니다. 마감일을 고려한 스케줄링이 계획을 도울 수는 있지만, 회상은 학습의 질, 평가 과제, 시험 당일의 조건에도 영향을 받습니다.