Anki. Czyli czy uczenie się na pamięć ma sens?
Fiszki na sterydach. Dowiedz się jak działa Anki i jak (optymalnie) zorganizuje Ci naukę.
Spis treści
Dziejszy wpis poświęcony będzie darmowemu narzędziu wspomagającego uczenie się na pamięć, czyli Anki. Jest to swego rodzaju udoskonalenie pomysłu papierowych fiszek i systemu SuperMemo. Anki to doskonałe narzędzie dla tych, którzy chcą się uczyć szybciej i zapamiętywać na dłużej. Ale czy można znaleźć zastosowanie tego narzędzia do czegoś innego niż tylko uczenie się na pamięć? Czy Anki może przydać się np. w uczeniu matematyki lub do nauczenia się od zera zupełnie nowych dziedzin? Moim (i nie tylko moim) zdaniem tak i postaram się Was do tego przekonać.
Czym jest Anki i dlaczego warto go używać?
Anki to program, który optymalizuje zapamiętywanie. Celem tej optymalizacji jest umożliwienie zapamiętania większej ilości informacji przy mniejszym wysiłku. System jest gotowy dla dowolnego typu danych i wspiera tekst, obrazki, dźwięk, wideo, formuły matematyczne etc.
Przykłady zastosowań zaczynają się od oczywistych typu uczenie się słówek, ale kreatywni użytkownicy używali już tego do np. zapamiętywania dat urodzin bliskich, dowcipów, uczenia się odczytywania nut i akordów, otwarć szachowych, nowych API czy bibliotek języków programowania, a nawet przywoływania miłych wspomnień. Niektórzy idą jeszcze dalej i zapisują sobie w Anki gdzie odłożyli jakieś rzeczy, których rzadko potrzebują albo zapisują sobie życiowe cele, żeby o nich nie zapomnieć.
System powtórek rozłożonych (spaced repetition system)
Koncept działania Anki jest bardzo prosty: najpierw samodzielnie układamy sobie zawartość kart (przód i tył). Możliwe jest kategoryzowanie tych kart i układanie ich w różne talie (np. osobna talia na procedury obsługi klienta w pracy, inna talia dla uczenia się podstaw sztucznej inteligencji etc.). Każdemu pytaniu możemy również przypisać tagi.

Ekran dodawania nowej karty.
Anki wymaga od nas systematycznej, ale krótkiej codziennej pracy: podczas sesji uczenia system prezentuje nam te karty, które wypada powtórzyć, żeby nam ta wiedza nie wypadła z głowy. Każde powtórzenie wymaga od mózgu wydobycia tej wiedzy, a każde takie wydobycie wzmacnia siłę zapamiętywania. Jeżeli nie potrafimy sobie przypomnieć danej informacji, po prostu klikamy odpowiedni przycisk, a Anki weźmie to pod uwagę i przypomni nam tę kartę wcześniej niż inne karty, które pamiętaliśmy lepiej.

To samo pytanie podczas nauki. Po pokazaniu odpowiedzi należy kliknąć Powtórz, jeżeli nie znaliśmy odpowiedzi lub wybrać poziom łatwości, gdy znaliśmy odpowiedź.
Tak naprawdę, jest to dużo bardziej skomplikowane i niektóre algorytmy (np. FSRS) używają nawet algorytmów sztucznej inteligencji do wyznaczania interwałów powtórek i zbierają dane, żeby lepiej dostosowywać się do wzorców zapominania osoby uczącej się. Zanim te dane zostaną zebrane, używane są uśrednione dane od innych użytkowników Anki na całym świecie.
Istnieją również serwisy (np. AnkiWeb, czy subreddit r/Anki), w których użytkownicy wymieniają się swoimi kartami, wtyczkami ułatwiającymi pracę i pomysłami na użycie narzędzia. Myślę, że warto najpierw ściągnąć sobie trochę czyichś kart, żeby spróbować czy Anki jest dobre dla nas. Pozwoli to nam zorientować się w tym jak tworzyć dobre karty. Później jednak lepiej tworzyć karty samemu: proces przygotowywania sobie samemu kart jest również uczący. Tym, którzy wykręcają się brakiem czasu na tworzenie kart, śpieszę z pomocą: są odpowiednie wtyczki, które pozwalają zaznaczyć tekst i tworzyć z nich karty automatycznie, z użyciem sztucznej inteligencji.
A wracając do bardziej nietypowych zastosowań Anki: są osoby, które zapisują sobie w Anki potrawy, które lubią i dzięki umiejętnemu używaniu przycisków zapominania lub pamiętania, system proponuje im dania tak, żeby zachować odpowiednią różnorodność.
Według badań, nawet ucząc się całkowicie nowego materiału, optymalnie jest poświęcić większość czasu na testowanie co się z niego umie, niż na pasywne czytanie i przeglądanie. Co nieco pisałem o tym przy okazji wpisu o książce Jak się uczyć, a szczegółowo można się na ten temat dowiedzieć właśnie z tej książki. Więcej o Active Recall Testing można przeczytać (po polsku) w bogatej dokumentacji Anki.
Instalacja i konfiguracja
Anki dostępne jest za darmo i jest dostępne na w zasadzie wszystkie platformy: komputery z Windows, Mac OS i Linux oraz urządzenia mobilne z Androidem i iOS. Wersje dla komputerów są darmowe, dostępna jest też darmowa wersja na Androida, a oficjalna wersja na iOS jest płatna (w chwili obecnej 35 USD).
Bardzo dobre jest to, że nasze talie i osiągnięcia można synchronizować między urządzeniami. A zatem można trenować zarówno na komputerze jak i na komórce, a wszystko czego system nauczył się na jednym urządzeniu jest dostępne również na innym.
Dobre i złe praktyki nauki z Anki
Tak jak już wcześniej wspomniałem: dobrym pomysłem jest tworzenie kart samodzielnie. Wtedy uczysz się tego, co wydaje Ci się ważne, a stworzenie karty jest już pierwszym krokiem do zapamiętania informacji. Fiszki trzeba umieć stworzyć. W wielu przypadkach dobre fiszki są krótkie i mają krótkie odpowiedzi. Jeżeli karta miałaby zawierać kilka informacji jednocześnie, lepiej jest podzielić tę informację na kilka osobnych kart.
Wspomnę jeszcze o zasadzie, która jest powtarzana zarówno przez twórców SuperMemo jak i Anki: Jeśli czegoś nie rozumiesz, nie ucz się tego. Dobrze, gdy do każdej karty istniał jakiś kontekst: artykuł, który czytaliśmy w internecie, praca naukowa, rozmowa z kimś, fragment rozdziału z podręcznika. Przeczytaliśmy, obejrzeliśmy, wysłuchaliśmy, zrozumieliśmy. I teraz chcemy nie zapomnieć: i do tego właśnie służy Anki.
Sensowny artykuł o tworzeniu kart i sposobie ich użycia znajduje się (po angielsku) na stronie SuperMemo.
O uczeniu się na pamięć
Przedstawiłem tutaj Anki w samych superlatywach. Ktoś, kto czytuje mój blog i wie, że zawiera on sporo treści matematycznych, mógłby zastanowić się na ile skuteczne jest takie naiwne zapamiętywanie do uczenia się czegoś poważniejszego, co wymaga myślenia i głębokiego przetwarzania prostych faktów do bardziej złożonych tez.
Sama wiedza i zapamiętanie nawet dużej liczby technik nie wystarczy do wygrania np. olimpiady przedmiotowej. Ale nawet na tak wysokim poziomie jest to pomocne: wymyślenie zadania od zera jest trudne, a złożenie rozwiązania z kilku kawałków, które już się kiedyś widziało i dobrze zrozumiało nie jest aż takie trudne. Im więcej mamy w pamięci podręcznej, dostępne na zawołanie, tym więcej możemy się zająć kombinowaniem tych klocków w głowie. Informatycznie mówiąc, nasz umysł ma zapewne ograniczoną głębokość rekursji, z którą możemy sobie poradzić (zapewne tym większą im większy talent, inteligencję etc. mamy). Jednym ze sposobów, żeby być lepszym jest próba poprawiania tej głębokości (to chyba trudne i zapewne wymaga sporo pracy), ale innym, raczej prostszym sposobem jest żeby proste pomysły stanowiły dla naszej głowy jeden krok, nad którym nie trzeba już myśleć, a nie kilka kroków, które musimy sobie przypominać. Wrzucę tu prosty przykład, który opisałem już w mojej książce: chcąc obliczyć ile jest $75 \cdot 60$, można wiedzieć, że to jest $70 \cdot 60 + 5 \cdot 60$, ale skuteczność wykonania tego działania w dużej mierze zależy od tego ile wysiłku zajmują nam działania $7 \cdot 6$ oraz $5 \cdot 6$. Jeżeli wiemy od razu, zera na końcach liczby dopisane są automatycznie i bezbędnie, w zasadzie od razu dodajemy dwie równe liczby i mamy wynik. Ale jeżeli musieliśmy choć na moment zatrzymać się w obliczaniu $7 \cdot 6$ lub $5 \cdot 6$, to cofając się z rekursji, musimy przypomnieć sobie ile tych zer jeszcze trzeba dopisać do liczby, do ilu mieliśmy cokolwiek dodać i co my w zasadzie robiliśmy i po co. A jeżeli wiemy, że $75$ to trzy czwarte z liczby $100$, to możemy policzyć jeszcze łatwiej: $6000 \cdot \frac{3}{4}$. Albo jeszcze inaczej, najpierw podwajamy $75$ uzyskując $150$, dopisujemy zero (już pomnożyliśmy przez $20$) i mnożymy przez $3$. Ale to wszystko jest łatwe dopiero wtedy, kiedy liczby $75$ czy $60$ to nie są dla nas przypadkowe liczby, tylko są dostępne dla nas łatwiej (w mózgowym cache).
Ciekawostka z czata
Zapytałem ChatGPT 5 o przykład dobrej karty z matematyki. Oto co wyprodukował:
Awers karty: Funkcja kwadratowa $f(x) = ax^2 + bx + c$ ma dwa różne miejsca zerowe. Jak zmieni się kształt i położenie wykresu, jeżeli pomnożysz wszystkie współczynniki $a, b, c$ przez $-1$?
Rewers karty:
- Ramiona paraboli odwrócą się (zmiana znaku $a$).
- Wierzchołek będzie symetryczny względem osi $OX$.
- Miejsca zerowe pozostaną te same, ale wartości funkcji w każdym punkcie zmienią znak.
Moim zdaniem czat nie do końca przestrzega zasad tworzenia sensownych kart Anki (pytania powinny być możliwie atomowe, o jedną rzecz, a nie o kilka), ale pytanie samo w sobie nie jest głupie. Zakładając, że samodzielnie stworzyliśmy taką kartę i wtedy przeszliśmy proces myślowy, żeby dogłębnie zrozumieć odpowiedź, którą przygotowaliśmy, powrót do tego typu rozumowania np. za miesiąc czy za rok, pozwoli zachować w głowie nie tylko samą odpowiedź, ale również punkty zaczepienia na atakowanie podobnych problemów w przyszłości.
Czat wygenerował nawet (nie od razu, najpierw z błędem) sensowną ilustrację do tej karty.

Obrazek do karty, który przygotował ChatGPT.
Chcę dowiedzieć się więcej
Zastosowania Anki do czegoś więcej niż tylko czysta pamięciówka lepiej opisał Michael Nielsen w swoim długim artykule o Anki. Ponieważ wiem, że nie każdy ma tyle czasu, żeby przeczytać długi artykuł w internecie (a czuję, że Czytelnik poświęcił już trochę czasu na mój wpis), przedstawię pokrótce jeden przykład i najważniejszy wniosek z podlinkowanego artykułu.
Według Nielsena główną zaletą używania Anki staje się możliwość zapanowania nad swoją pamięcią. To, czy coś zapamiętamy czy nie, zazwyczaj jest wynikiem pewnego splotu wydarzeń i w jakiejś części jest zostawione przypadkowi. Z Anki tak nie jest: Anki gwarantuje, że minimalnym wysiłkiem (Nielsen szacuje 4-7 minut pracy z Anki dla zapamiętania informacji na 20 lat) konkretny fakt zostanie na pewno zapamiętany.
Nielsen dzięki Anki zrozumiał pracę o AlphaGo, bocie od Google DeepMind, który pokonał Lee Sedol’a w grze w Go, chociaż wcześniej nie znał zasad gry, ani nie wiedział nic o reinforcement learning, czyli technice, która była szeroko użyta w AlphaGo. Otworzył pracę, zaczął ją bardzo pobieżnie przeglądać, w zasadzie tylko żeby zrozumieć strukturę i znaleźć gdzie są najważniejsze idee. Jak nazywają się główne techniki, których trzeba się nauczyć, żeby cokolwiek zrozumieć? I zaczął tworzyć karty: Jaki jest rozmiar planszy w Go?, Kto zaczyna w grze w Go?, Jak nazywają się dwa główne typy sieci neuronowych, których używa AlphaGo?. Dla Nielsena (i wydaje mi się, że nie tylko dla niego) robiło różnicę czy proste fakty i obserwacje, które udało mu się przyswoić, są dostępne dla niego w ciągu ułamka sekundy, czy wymagają zastanowienia. Kolejne czytania pracy plus łatwo dostępna wiedza zdobyta dzięki kartom z Anki, przynosiły mu nowe informacje, z których konstruował kolejne pytania i tak dalej. Jako jeszcze inny przykład podał granie na instrumencie: sekunda różnicy między zagraniem dźwięku a usłyszeniem go to absurd. Nawet kreatywna praca wymaga zinternalizowania sobie pewnych podstawowych faktów, żeby nie trzeba było myśleć czy googlać, żeby je znaleźć. Myślę, że powinno być jasne, że kreatywne użycie Anki pozwala osiągnąć coś więcej niż tylko zapamiętanie słówek czy flag państw. Tych, których choć odrobinę zainteresowałem, gorąco zachęcam do zainwestowania jeszcze godziny do przeczytania artykułu Nielsena. No i przypominam, że sekcja komentarzy jest otwarta.