WebDesigner's Memorandumウェブデザイナーの備忘録

Obsidianで整理した知識をAnkiで定着させる方法

過去記事の『Obsidianを使った「自己流PKM」で行う知識トレーニング』では、Obsidianを使った知識整理の方法を紹介しました。

整理した知識をさらに記憶に定着させたいなら、Ankiというフラッシュカードアプリとの組み合わせが効果的です。

今回はAnkiの概要と、ObsidianからAnkiのカードを作成してインポートする方法をまとめます。

Anki

Ankiはかなり自由度の高いフラッシュカードアプリです。
表面と裏面にそれぞれ問題と答えを書き、タップ(またはspace)で答えが表示されます。

学生時代に使った暗記カードのデジタル版のようなものです。

料金体系は少し変わっていて、Web版・PCアプリ版(Windows / macOS)・Android版のAnkiDroidは無料ですが、iOS版のAnkiMobileだけは有料の買い切りです。執筆時点のApp Store価格は4,000円です。

どうやらiOS版のAnkiMobileの売り上げが、Anki全体の開発資金を支える役割も担っているようです。

後ほど紹介するObsidianからCSVを生成してインポートする方法はWeb版・PCアプリ版で行うので無料でできますが、日々使うならスマホから気軽に開ける方が続けやすいので、iPhoneを持っている人はAnkiMobileの購入もオススメです。

エビングハウスの忘却曲線に沿って学習できる

Ankiに限らずですが、最近のフラッシュカード系のアプリは最適なタイミングで復習ができるようになっています。

これは有名な「エビングハウスの忘却曲線」の研究がもとになっています。

人間は新しく覚えた情報を24時間後には約67%忘れてしまうそうです。
この忘れかけたタイミングで復習することで記憶が定着しやすくなり、次は3日後、その次は1週間後……という風に、復習間隔を徐々に広げていくことで長期記憶として定着させていきます。

Ankiでは簡単だと感じたカードは次回の復習間隔が長くなり、難しいと感じたカードは短い間隔で復習するように設計されています。

このように、理想的な復習タイミングを管理するシステムのことをSRS(Spaced Repetition System)と呼びます。

そして多くのアプリでは復習間隔は自動またはざっくりしか設定できませんが、Ankiはこの設定もかなり細かく調整できます。

他フラッシュカード系アプリとの比較

フラッシュカード系のアプリはAnkiの他にもQuizletreminDOWordHolicなど数多くあります。
いま上げたアプリの主な違いを比較すると下記の通りです。

機能AnkiQuizletreminDOWordHolic
料金PC/Android無料、iOSは買い切り基本無料(有料プランあり)基本無料(Plusプランあり)基本無料(広告あり)
穴埋め問題××
画像対応
CSV読み込み×
広告なし無料版はありなし無料版はあり
カードのカスタマイズ○(HTML/CSS対応)×××

Ankiは他アプリに比べてカスタマイズ性が高いのが特徴です。

カスタマイズ性がかなり高い

Ankiはほぼすべての要素をカスタマイズできます。
カードにはHTML・CSSを使えるのでデザインも自由自在です。

  • カードのデザイン
  • フィールド構成
  • 復習間隔のアルゴリズム
  • 1日の新規カード数などの細かい設定

さらにアドオン(プラグイン)が数多くあり、それらを使うことで基本機能だけでは物足りない部分も補えます。

他のアプリだとここまで自由にはできません。
しかし、逆に設定項目が多すぎて面倒と感じる人もいるかもしれません。

Ankiのアカウント作成

Ankiを使い始めるには、まずAnkiWebのアカウントを作成します。
AnkiWebは各デバイス間でカードを同期するためのサービスで、アカウントは無料で作成できます。

公式サイトにアクセスし、「Sign Up」からメールアドレスとパスワードを入力して登録します。

このアカウントがあると、Web版とMac版、iOS版など異なるデバイスで情報を同期できるようになります。
私の場合はカードの作成やインポートはMacで行い、日々の復習はiPhoneで行うという使い分けをしているので同期は必須です。

Ankiの基本的な使い方

macOSアプリ版

macOSアプリ版は公式サイトからダウンロードするか、Homebrewでインストールします。

brew install --cask anki

Mac App Storeには公開されていないので、どちらかの方法でインストールする必要があります。

アプリを起動すると、下記の画面が表示されます。

デッキの管理

デッキはカードをまとめるフォルダのようなものです。
最初は「デフォルト」という名前のデッキ1つだけですが、メイン画面下部にある[デッキを作成]ボタンからデッキを追加できます。

デッキ名に::(コロン2つ)を使うと階層構造を作れます。
例えば「AWS::IAM」「AWS::S3」のように命名すると、「AWS」の下に「IAM」と「S3」がサブデッキとして配置されます。

「フォルダじゃなくてデッキなんだ……」や「/(スラッシュ)じゃなくて::(コロン2つ)で区切るんだ……」などちょっとクセがありますが、このあたりは慣れていく必要があります。

カードの作成

カードを手動で作成するには、画面上部の[追加]メニューをクリックするとカード追加画面が表示されます。

カード追加画面では、上部で「ノートタイプ」と追加先の「デッキ」を選択し、「表面」に問題、「裏面」に正解を入力します。

通常はWYSIWYGで入力できますが、表面と裏面の一番右にあるコードアイコンをクリックすると、なんとHTMLで編集できます。HTMLの入力ができるので非常に自由度高くノートを作成できます。

入力できたら[追加]ボタンを押してカードを追加できます。

カードの使用

デッキをクリックして[学習開始]ボタンをクリックすると、実際にカードが表示されます。

カードの表面(問題)が表示されるので、答えが何になるか考えましょう。

答えを考えたら画面下の[解答を表示]ボタンをクリックして裏面(正解)を表示します。

正解を確認したら、自分の理解度に応じて下記の4段階で評価します。

  • もう一度(Again):全然分からなかった
  • 難しい(Hard):かなり迷った
  • 正解(Good):少し考えて思い出せた
  • 簡単(Easy):すぐに分かった

この評価に応じて次回の復習タイミングが決まります。
それぞれのボタンの上に次回復習タイミングまでの時間が表示されていて、[もう一度]を選んだカードはすぐに再表示され、[簡単]を選んだカードは数日後に表示されることが分かります。

ちなみに評価は左から順にキーボードの14キーでも選択できますし、裏表の切り替えはspaceでもできるので、マウスを使わずにキーボードだけでサクサク進められます。

カードタイプ(ノートタイプ)

Ankiには「カードタイプ」という概念があり、これで追加するカードの機能や見た目が変わります。デフォルトは下記の6種類が用意されていて、これらをカード追加画面で選択して切り替えます。

  • 基本:表面に問題、裏面に答えの基本的なタイプ
  • 基本 (文字入力解答):回答をテキスト入力して答え合わせするタイプ
  • 基本 (裏表反転カード付き):表→裏だけでなく、裏→表のカードも自動で作成されるタイプ
  • 基本 (裏表反転カード追加可能):裏→表のカードが必要な場合に追加できるタイプ
  • 画像穴埋め問題:画像の一部を図形で隠して、裏面表示で隠していた図形を非表示にして答えを確認できるタイプ
  • 穴埋め問題:{{c1::答え}}形式の書式で文中の一部を隠せるタイプ

私は「基本」のカードタイプばかり使っていますが、人によっては画像穴埋めなどは重宝しそうです。

タグの活用

カードにはタグを付けられます。
カード作成画面の下部にある「タグ」フィールドに入力してreturnで確定します。

タグを付けておくと、ブラウザ画面(画面上部の[ブラウザ]メニューから開く)でタグ別にカードを絞り込めます。デッキとは別の軸でカードを分類できるので、「重要」のようなタグを付けておくと管理しやすくなります。

学習設定の調整

デッキごとに学習設定を調整できます。
デッキ名の右側にある歯車アイコンから「オプション」を選択します。

よく変更する設定は下記の通りです。

  • 1日の新規カード導入枚数の上限
  • 1日の復習枚数の上限
  • 新規カードを集める順序

特に[新規カードを集める順序]は[デッキの並び順]から[ランダム(カード単位)]に変更することが多いです。

1日の上限系は多すぎるとカードが溜まっていくばかりになってモチベーションが下がってしまうので、無理のない枚数に設定した方が続けやすいです。

[負荷軽減日]という設定項目もあり、平日は負荷を下げておくといった設定も可能です。

よく使うショートカットキー

macOSアプリ版では下記のショートカットキーをよく使います。

操作キー
カードを追加A
ブラウザを開くB
統計を表示T
回答を表示space
もう一度1
難しい2
普通3
簡単4
カードの編集E
同期Y

基本的にはiOS版をスキマ時間や寝る前などに解いていることが多いのでmacOS版を使う頻度は低いですが、ショートカットキーだけで操作できるのは嬉しいです。

同期設定

[同期]メニューを選択すると、初回は下記のログイン画面が表示されます。

ここに先ほど作成したAnkiWebのログイン情報を入力することで同期できます。次回以降は[同期]を押すだけで実行されるようになります。

自動同期ではないので、何か変更をしたり学習を進めたあとは自分で同期を実行する必要があります。

iOSアプリ版

iOS版はApp Storeからダウンロードします。
基本的な操作はMac版と同じで、画面をタップして回答を表示し、評価ボタンを選択するだけです。

iPhoneで使う最大のメリットは、通勤中や待ち時間などのスキマ時間にサッと復習できることです。
アプリを開いて[同期]ボタンを押せばAnkiWebと同期してくれるので、Macで追加したカードを反映できます。

iOS版ではカードの作成や設定変更もできますが、操作性はMac版の方が良いです。
私の場合はiOS版は復習専用と割り切って、カードの追加やインポートはすべてMacで行っています。

Web版

Web版はAnkiWebにログインすると使えます。
カードの学習や追加・管理など問題なくできますが、Macアプリ版の方が操作性も高いので、あえて使う必要はあまりありません。

基本的には使うことがなさそうです。

Obsidian_to_Anki

Obsidianで書いたノートを自動的にAnkiのカードに変換できる「Obsidian_to_Anki」というプラグインがあります。

私の場合は使っていませんが、ObsidianとAnkiの連携方法としてよく紹介される手段なので、どういう仕組みかを押さえておきます。

導入方法

このプラグインを使うには、Anki側に「AnkiConnect」というアドオンをインストールしておく必要があります。

AnkiConnectはAnkiの外部アプリ連携用のAPIを提供するアドオンで、これがないとObsidianからAnkiにカードを送信できません。

  1. Ankiのメニューバーから[ツール]→[アドオン]→[新たにアドオンを取得…]を選択
  2. コード2055492159を入力してインストール
  3. Ankiを再起動
  4. [ツール]→[アドオン]→「AnkiConnect」を選択して「Config」をクリック
  5. webCorsOriginList"app://obsidian.md" を追加して保存
{
  "webCorsOriginList": [
    "http://localhost",
    "app://obsidian.md"
  ]
}

このCORSの設定をしないと、ObsidianからAnkiへの接続が失敗します。

次にObsidian側でObsidian_to_Ankiプラグインをインストールします。

  1. Obsidianの[設定]→[コミュニティプラグイン]→[閲覧]から「Obsidian_to_Anki」を検索してインストール
  2. プラグインを有効化
  3. Ankiが起動している状態でObsidianのコマンドパレットから「Obsidian_to_Anki: Scan Vault」を実行して接続を確認

ノートの書き方

Obsidian_to_Ankiでは、ノート内に特定の書式で問題と回答を書くとカードとして認識されます。

デフォルトで動作する基本的な書き方は下記のブロック形式です。

START
Basic
IAMとは何の略か?
Back: Identity and Access Management
END

STARTEND で囲まれた部分がカード1枚として認識され、2行目がカードタイプ、3行目以降がFront、Back: 以降がBackになります。

穴埋め形式も同様に書けます。

START
Cloze
AWSのIAMは{{c1::Identity and Access Management}}の略である
END

プラグインの設定では、問題 :: 回答 のような短縮形式や {答え} 形式の穴埋めに対応する書式も用意されています(デフォルトではオフ)。

カードの送信

ノートを書いたら、コマンドパレットから「Obsidian_to_Anki: Scan Vault」を実行します。
プラグインがVault内のノートをスキャンし、カード形式で書かれた部分を自動的にAnkiに送信してくれます。

送信済みのカードにはノート内にAnkiのIDが自動で埋め込まれるため、同じカードが重複して作成されることはありません。ノートの内容を修正して再度スキャンすると、Anki側のカードも更新されます。

使わなかった理由

便利なプラグインですが、私の場合は使っていません。

理由は、ObsidianのノートをAnkiカード形式に合わせて書く必要があるからです。
Obsidianでは自分が理解しやすいように自由にノートを書きたいので、Ankiへの変換を意識した書き方に縛られるのが合いませんでした。

そこで代わりに試したのが、次のCSVを生成する方法です。

ObsidianからCSVを生成する方法

私はObsidianのノートからClaude CodeやCodexなどのコーディングエージェントを使って、Anki用のCSVを生成しています。

Obsidian_to_Ankiのようにノートの書き方を変える必要がなく、既存のノートをそのまま活用できるのがメリットです。

AnkiのCSV形式

AnkiのCSVインポートはタブ区切りに対応しており、「表面」と「裏面」の2列が基本です。
3列目にタグを追加しておくと、インポート時に自動でタグが付与されるので管理しやすくなります。

問題のテキスト, 答えのテキスト, タグ

例えば下記のような内容です。

IAMは何の略か?, Identity and Access Management, AWS
S3の正式名称は?, Amazon Simple Storage Service, AWS
Lambdaの最大実行時間は?, 15分, AWS::Lambda

文字コードはUTF-8で保存する必要があるので注意が必要です。

カードにHTMLを使いたい場合は、答えにHTMLタグを含めることもできます。
例えばリスト形式で答えを表示したい場合は下記のように書きます。

EC2のインスタンスタイプの分類は?, <ul><li>汎用(t/m系)</li><li>コンピューティング最適化(c系)</li><li>メモリ最適化(r/x系)</li></ul>, AWS::EC2

CSVの生成

Obsidianのノートを指定して、AIにフラッシュカード用の問題と答えのペアを生成してもらいます。

Obsidianのノートはすべてローカル上に存在するMarkdownファイルなので、Claude CodeやCodexのようなCLI型のAIツールと相性が良いです。
Vaultのディレクトリを開いて指示を出すだけでノートの内容を読み取って生成してくれます。

例えば下記のように指示します。

AWSフォルダ配下のノートからAnki用のCSVを生成して。
カンマ区切りで、1列目に問題、2列目に回答、3列目にタグを入れてください。
タグはノートのファイル名をもとに付けてください。

これで簡単にObsidianに書いた内容を元にしてCSVファイルを生成してくれます。

プロンプトで「問題は簡潔に、回答は要点のみ」のように指示すると、復習しやすいカードになります。
逆に「回答にはHTMLのリストを使って」と指示すれば、見やすいカードも生成できます。

生成されたカードの確認と修正

生成された問題をそのまま使うのではなく、一度目を通して修正するようにしています。
問題の品質がイマイチだと復習の効果も下がりますし、自分で確認する過程自体が学習になるからです。

確認していく過程で簡単すぎる問題は省いていくようにもしていて「このレベルの問題はもう分かる」とコーディングエージェント用のMarkdownファイルに記載して、次回以降の生成では問題の難易度を上げてもらうようにします。

よくある修正ポイントは下記の通りです。

  • 問題が曖昧すぎる(「〜について説明せよ」のような広すぎる問題は、具体的に絞る)
  • 回答が長すぎる(要点だけに削る。復習時にサッと確認できる分量が理想)
  • 似たような問題が重複している(片方を削除するか、角度を変える)
  • タグが適切でない(デッキ構成に合わせて調整する)

CSVはテキストファイルなので、テキストエディタやスプレッドシートでも修正できます。

Ankiへのインポート

生成したCSVファイルはAnkiの画面下部の[インポート]ボタンから選択してインポートします。

CSVファイルを選択するとインポート設定画面が表示されるので、そこでさらに細かい設定を行います。

[フィールドの区切り]でコンマ(,)以外も設定できますし、[フィールド内でHTMLを使う]にチェックを入れておくと、HTML形式で装飾されたカードもそのまま反映されます。

また、インポート設定では同じ[表面]のカードがすでに存在する場合の処理を「更新」「スキップ」「無視」の中から選択できます。CSVを修正して再インポートする場合などに活用できます。

まとめ

Claude CodeやCodexのようなコーディングエージェントが登場したことで、ObsidianのノートからAnkiのカードを生成する流れがかなりラクになりました。

ObsidianのノートがローカルのMarkdownファイルであることが、ここでも活きています。

Ankiのカード作成は正直面倒な作業なので、AIでざっくり生成してから自分で修正するくらいがちょうどいいバランスだと感じています。
Obsidianの自由なノート作成を崩さずにAnkiへつなげたいなら、このやり方はオススメです。

そもそも今後知識がどこまで必要になるのか怪しいですが、瞬発的に情報を引っ張り出せる力はまだ必要になってくるのではないかと思っています。

あとはAIばかり使っていると明らかに脳のパフォーマンスが下がっていると感じるときがあるので、ちゃんと脳を鍛えておくという意味でも、フラッシュカードは有効そうです。

著者について

プロフィール画像

サイトウ マサカズ@31mskz10

1997年生まれ。2016年から専門学校でデザインについて勉強。卒業後は神戸の制作会社「N'sCreates」にウェブデザイナーとして入社。このブログでは自分の備忘録も兼ねて、ウェブに関する記事や制作環境を効率的に行うための記事を書いています。

Twitterをフォロー Facebookでいいね