01 / Візуальні есеMLU-Explain
Проєкт Amazon Machine Learning University. Саме звідси взято підхід «пояснювати через інтерактив», який ми розвинули у своєму форматі. Матеріали поширюються за ліцензією CC BY-SA 4.0; наші лекції, написані з опорою на них, поширюються за тією самою ліцензією.
| тема | назва | посилання |
|---|---|---|
| 03 | Train / Validation / Test | mlu-explain.github.io/train-test-validation |
| 05 | Precision і Recall | mlu-explain.github.io/precision-recall |
| 06 | ROC та AUC | mlu-explain.github.io/roc-auc |
| 12 | Лінійна регресія | mlu-explain.github.io/linear-regression |
| 14 | Логістична регресія | mlu-explain.github.io/logistic-regression |
| 17 | Bias-Variance | mlu-explain.github.io/bias-variance |
| 17 | Подвійний спуск | mlu-explain.github.io/double-descent |
| 17 | Подвійний спуск: математика | mlu-explain.github.io/double-descent2 |
| 18 | Крос-валідація | mlu-explain.github.io/cross-validation |
| 23 | Дерева рішень | mlu-explain.github.io/decision-tree |
| 24 | Random Forest | mlu-explain.github.io/random-forest |
| 33 | Нейронні мережі | mlu-explain.github.io/neural-networks |
| 38 | Справедливість моделей | mlu-explain.github.io/equality-of-odds |
| 39 | Навчання з підкріпленням | mlu-explain.github.io/reinforcement-learning |
02 / ПершоджерелаНаукові статті
Роботи, у яких відповідні методи були вперше описані. Корисно прочитати, щоб побачити, як ідея виглядала до того, як стала розділом підручника.
| тема | стаття |
|---|---|
| 16 | On the Optimality of the Simple Bayesian Classifier under Zero-One Loss P. Domingos, M. Pazzani, 1997 |
| 16 | Idiot's Bayes — Not So Stupid After All? D. J. Hand, K. Yu, 2001 |
| 23 | Induction of Decision Trees J. R. Quinlan, 1986 |
| 23 | A Mathematical Theory of Communication C. E. Shannon, 1948 |
| 24 | Bagging Predictors L. Breiman, 1996 |
| 24 | Random Forests L. Breiman, 2001 |
| 06 | The Meaning and Use of the Area under a Receiver Operating Characteristic (ROC) Curve J. A. Hanley, B. J. McNeil, 1982 — робота, у якій показано, що площа під ROC дорівнює ймовірності правильно впорядкувати випадкову пару, і що це та сама величина, яку статистика знає як критерій Манна–Вітні |
| 06 | The Relationship Between Precision-Recall and ROC Curves J. Davis, M. Goadrich, 2006 — чому на сильно незбалансованих даних ROC виглядає добре, а PR-крива обвалюється, і коли яку читати |
| 06 | An Introduction to ROC Analysis T. Fawcett, 2006 — оглядова стаття про побудову ROC сортуванням за порогом і про типові помилки читання |
| 11 | On Lines and Planes of Closest Fit to Systems of Points in Space K. Pearson, 1901 — стаття, у якій PCA вперше сформульовано як задачу про найближчу пряму |
| 11 | Analysis of a Complex of Statistical Variables into Principal Components H. Hotelling, 1933 — звідси назва «головні компоненти» й формулювання через максимум дисперсії |
| 32 | The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain F. Rosenblatt, 1958 — стаття, у якій перцептрон описано вперше |
| 32 | A Logical Calculus of the Ideas Immanent in Nervous Activity W. McCulloch, W. Pitts, 1943 — перша формальна модель нейрона як логічного елемента |
| 32 | Perceptrons: An Introduction to Computational Geometry M. Minsky, S. Papert, 1969 — книжка, у якій розібрано межі одношарової конструкції, зокрема XOR |
| 35 | Understanding the Difficulty of Training Deep Feedforward Neural Networks X. Glorot, Y. Bengio, 2010 — стаття, у якій виведено ініціалізацію Xavier із вимоги сталої дисперсії |
| 35 | Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification K. He та ін., 2015 — ініціалізація He й пояснення, звідки в ній двійка |
| 35 | Rectified Linear Units Improve Restricted Boltzmann Machines V. Nair, G. E. Hinton, 2010 — робота, з якої ReLU увійшла в широкий ужиток |
| 35 | Gaussian Error Linear Units (GELUs) D. Hendrycks, K. Gimpel, 2016 — активація, що стоїть у трансформерах |
| 36 | Some Methods of Speeding Up the Convergence of Iteration Methods Б. Т. Поляк, 1964 — робота, у якій уперше описано метод «важкої кульки», тобто класичний момент |
| 36 | Adaptive Subgradient Methods for Online Learning and Stochastic Optimization J. Duchi, E. Hazan, Y. Singer, 2011 — AdaGrad і доведення, чому крок згасає як 1/√t |
| 36 | Lecture 6e — RMSProp: Divide the Gradient by a Running Average of Its Recent Magnitude T. Tieleman, G. Hinton, 2012 — RMSProp ніколи не публікували статтею, першоджерело — оці слайди курсу |
| 36 | Adam: A Method for Stochastic Optimization D. P. Kingma, J. Ba, 2014 — Adam і виведення корекції зміщення з формули для ковзного середнього |
| 36 | Decoupled Weight Decay Regularization I. Loshchilov, F. Hutter, 2017 — AdamW: чому спад ваг треба виносити з градієнта в саме правило кроку |
| 36 | SGDR: Stochastic Gradient Descent with Warm Restarts I. Loshchilov, F. Hutter, 2016 — звідси в ужиток увійшов косинусний розклад кроку |
| 36 | The Marginal Value of Adaptive Gradient Methods in Machine Learning A. C. Wilson та ін., 2017 — експерименти, з яких виросло твердження «налаштований SGD узагальнює краще за Adam» |
| 31 | Hidden Technical Debt in Machine Learning Systems D. Sculley та ін., 2015 — робота, у якій уперше зведено докупи те, що модель є маленькою частиною системи, а решта коду й даних коштує дорожче за неї |
| 31 | Data Validation for Machine Learning E. Breck та ін., 2019 — перевірка схеми даних на вході й ловіння мовчазних поломок конвеєра |
| 38 | Equality of Opportunity in Supervised Learning M. Hardt, E. Price, N. Srebro, 2016 |
| 17 | Reconciling Modern Machine Learning Practice and the Bias-Variance Trade-Off M. Belkin та ін., 2019 — робота, у якій подвійний спуск уперше названо й показано на кількох сімействах моделей |
| 17 | Deep Double Descent: Where Bigger Models and More Data Hurt P. Nakkiran та ін.; препринт 2019, журнальна публікація — J. Stat. Mech. (2021) 124003. Звідси спостереження, що пік буває не лише за розміром моделі, а й за тривалістю навчання та розміром вибірки |
| 40 | A Value for n-Person Games L. S. Shapley, 1953 — робота, у якій уперше доведено єдиність чесного поділу виграшу |
| 40 | A Unified Approach to Interpreting Model Predictions S. Lundberg, SI. Lee, 2017 — стаття, з якої почався SHAP |
| 40 | «Why Should I Trust You?»: Explaining the Predictions of Any Classifier M. T. Ribeiro, S. Singh, C. Guestrin, 2016 — LIME |
| 40 | Greedy Function Approximation: A Gradient Boosting Machine J. H. Friedman, 2001 — тут уперше описано графік частинної залежності (PDP) |
| 40 | Peeking Inside the Black Box: Visualizing Statistical Learning with Plots of Individual Conditional Expectation A. Goldstein та ін., 2013 — криві ICE |
| 40 | Bias in Random Forest Variable Importance Measures C. Strobl та ін., 2007 — про зсув MDI до ознак із великою кількістю значень |
| 21 | The Foundations of Cost-Sensitive Learning C. Elkan, 2001 — звідси правило, що оптимальний поріг дорівнює C_FP / (C_FP + C_FN) |
| 21 | Obtaining Calibrated Probability Estimates from Decision Trees and Naive Bayesian Classifiers B. Zadrozny, C. Elkan, 2001 — розбиття на кошики й ізотонічна регресія як спосіб виправити ймовірності |
| 21 | Predicting Good Probabilities With Supervised Learning A. Niculescu-Mizil, R. Caruana, 2005 — порівняння почерків десяти сімейств моделей і калібрування Платта проти ізотонічної; сам метод Платта описано в J. Platt, 1999 |
| 21 | On Calibration of Modern Neural Networks C. Guo та ін., 2017 — ECE як міра й спостереження, що глибокі мережі калібровані гірше за старі моделі |
| 40 | Stop Explaining Black Box Machine Learning Models for High Stakes Decisions C. Rudin, 2019 — аргумент на користь прозорих моделей там, де рішення зачіпає людину |
03 / ПідручникиКниги
Україномовний посібник. Орієнтир для загальної структури курсу та частини теорії.
Класика статистичного навчання. Вільно доступна на сайті Стенфорду.
Основний підручник з навчання з підкріпленням. Доступний вільно.
Про справедливість моделей. Доступна онлайн.
04 / ІнструментиДокументація та практика
| ресурс | для чого |
|---|---|
| scikit-learn | Документація з чудовими поясненнями теорії |
| NumPy | Довідник з масивів |
| pandas | Робота з таблицями |
| Kaggle | Датасети й ноутбуки для практики |
| sklearn.calibration | Розділ 1.16 документації: діаграми надійності, CalibratedClassifierCV, Платт та ізотонічна регресія |
| Thresholds and the Confusion Matrix | Урок Google ML Crash Course про вибір порога під ціну помилки |
| sklearn.inspection | Перестановкова важливість, PDP та ICE «з коробки» |
| Interpretable Machine Learning | C. Molnar — книжка-довідник з методів пояснення, вільно доступна онлайн |
| Production ML Systems | Модуль Google ML Crash Course: статичне й динамічне навчання, статичний і динамічний висновок, training/serving skew |
| Rules of Machine Learning | M. Zinkevich — сорок три правила експлуатації моделей, зібрані з практики Google |
| CS329S: Machine Learning Systems Design | Курс Стенфорду цілком про те, що відбувається з моделлю після запуску: моніторинг, дрейф, перенавчання |
05 / ЛіцензіяУмови поширення
Матеріали проєкту MLU-Explain поширюються за тією самою ліцензією CC BY-SA 4.0, і посилання на кожну статтю наведені в розділі 01.