今年は、Skoltech(科学技術分野におけるロシアのMIT/Caltechに相当する機関)での機械学習コースの宿題課題を設計してきました。数え切れないほど多くの就職面接で落ちてしまった後、私は自分が学生時代に個人的に欠けていたもの、すなわち、比較的少ない基本アルゴリズムの深い理解をついに見つけ出したと思います。さて、私の痛みは次の世代の利益です!
エンジニアリングの世界観では、自分の手で一からレプリカを作り上げて初めて、何かを真に理解したと言える。それと同時に、白紙のページへの恐怖によって学習が停滞してほしくなかった。私は学生を問題ごとに一歩ずつ導き、どのように小さなブロックから組み立てられているかを示したかった。
問題の枠組みを決めたら、残る問題はそれらを評価し、学生にフィードバックを与える方法でした。もちろん、解法を手作業で添削することもできますが、それは教育チームに莫大な負担をかけ、学生が自分の過ちから学ぶ機会を奪います。では、業界のソフトウェア開発を借りて、自動テストに全力を注ぐのはどうでしょう。学生にはスターターテンプレートとテストスイートが与えられます。そして…まあ、彼らは仕様をあらゆる手段で満たす方法を学ぶ必要がある大人です。
その結果は、自動テストベースの評価を用いた、古典的な機械学習と深層学習の演習のセットです。
このコースはすでに終了しており、内容の公開を自由に行えます - https://github.com/fxlrnrpt/sktech_ml_homeworks_2026
そこには以下が見つかります:
- 課題を含むノートブック
- 主要なJupyterノートブックをきれいに保つ補助スクリプト
- 自動テストにより学生に即時のフィードバックを提供し、採点を自動化
- 学生が自分が何点を取る予定かを確認できる採点スクリプト。追加ファイルを誤って使って0点になるのを防ぎます!
- テスト用の事前生成データ
そのコードは寛容なライセンスの下で公開されています—自由にこれを基に構築したり、任意の方法で再利用してください。
[リンク] [コメント]

