入門
「モデルとは何か」から、初めて自分で学習させた分類器まで。
すべてのレッスンは2027年1月31日まで無料で読めます。アカウント登録は不要です。
機械学習とは何か
ルールを人が書くのではなくデータに当てはめるプログラム、学習と予測のループ、トラック全体で使う用語、そして機械学習が適さない場面
データがモデルである: データセット、分割、リーク
pandasで小さな合成データセットを作り、学習・検証・テストに分割し、リークする特徴量を仕込んで検証スコアが嘘をつく様子を観察します
線形回帰とロジスティック回帰をゼロから実装する
最小二乗法をnumpyで閉形式に解き、次にシグモイドと対数損失を使うロジスティック回帰を勾配降下法で当てはめ、どちらもscikit-learnと照合します
学習ループ: 損失、勾配、学習率
ほぼすべてのモデルを学習させる4ステップのループ、手計算と有限差分で検証する勾配、そして遅すぎ・適切・発散の3つを1枚のチャートで示す学習率の掃引
決定木と勾配ブースティング
決定木が分岐を選ぶ仕組み、深さが学習精度と保留精度に与える影響、勾配ブースティングが小さな木を積み重ねて強いモデルを作る方法、そして特徴量重要度に注意が必要な理由
嘘をつかない評価
不均衡データで正解率が誤解を招く理由、適合率・再現率・F1・ROC-AUCが測るもの、層化交差検証とダミーベースラインで誠実さを保つ方法、ブートストラップでスコアに区間を付ける方法
PyTorchで作る最初のニューラルネットワーク
テンソル、autograd、nn.Module、学習ループを、8x8の数字画像を読む小さな多層パーセプトロンに適用します。ノートPCのCPUで数秒で動きます
エンベディングと類似検索
エンベディングベクトルとは何か、コサイン類似度の手計算、22 Mパラメータの文エンコーダを20文に対してローカルで実行、numpyによる最近傍検索、そしてキーワード索引より意味の検索に強い理由
LLMをうまく使う: プロンプト、構造化出力、限界
トークンとコンテキストウィンドウとは何か、システムメッセージとユーザーメッセージの違い、JSONを要求して検証する方法、few-shot例、すべてのモデルに共通する限界を、ローカルモデルとホスト型APIのコード付きで解説します
ノートブックからサービスへ: パッケージング、FastAPIエンドポイント、スモークテスト
小さなscikit-learnパイプラインを学習してjoblibで保存し、入力を検証するFastAPIエンドポイントで包み、サーバーなしでプロセス内テストを行い、他の人が実行できるようにプロジェクトを構成します