Практическое машинное обучение с помощью Scikit-Learn, Keras и TensorFlow: концепции, инструменты и методы создания интеллектуальных систем

Эта книга поможет вам в работе.

Так написал Орельен Жерон, автор этой хорошо принятой книги, теперь уже во втором издании. Это, вероятно, преуменьшение. Вы не только выполняете поставленные задачи, но и хорошо разбираетесь во всех тонкостях машинного обучения (МО). Когда в начале 2017 года вышло первое издание, оно сразу стало моим фаворитом. С тех пор в него было внесено несколько обновлений — свидетельство как скорости, с которой развивается эта область, так и усердия автора.

В последнем квартале 2019 года наконец настало время для новой редакции, совпавшей с официальным выпуском TensorFlow 2.0. Если вы следили за развитием TensorFlow, вы знаете, что tf.keras был представлен как реализация популярного высокоуровневого API Keras. Теперь к названию добавлено Керас, а несколько глав были переписаны или добавлены. Печатная версия книги теперь насчитывает целых 856 страниц! Несмотря на это, книга никогда не кажется раздутой или громоздкой. Полную информацию об изменениях вы можете найти здесь.

Хорошая книга имеет последовательную структуру, с главами, которые можно читать независимо друг от друга, но в то же время содержит перекрестные ссылки, чтобы связать основную тему с другими темами, раскрытыми в другом месте книги. В этом отношении автор проделал замечательную работу.

Это новое издание будет по-прежнему привлекать широкий круг специалистов по машинному обучению. Для лучшего понимания концепций, лежащих в основе моделей и методов, рекомендуется начать с этой книги. Для более продвинутых людей он также содержит достаточно информации для повторного обращения. Будь то для более глубокого понимания машин опорных векторов или оценки производительности различных оптимизаторов глубокого обучения (Адам? Надам?). Я особенно ценю целую новую главу (глава 9) о неконтролируемом обучении, которая заполняет вопиющий пробел в предыдущем издании.

Как и в первом издании, примеры кода доступны на GitHub. Теперь они готовы к запуску в Google Colab (ура!). Фрагменты кода часто сопровождаются описаниями на простом английском языке, чтобы никто не заблудился.

С введением Keras в качестве высокоуровневого API одного его знания достаточно для большинства случаев использования в глубоком обучении (95%, по словам автора). Однако в определенных случаях возникает необходимость писать код TensorFlow более низкого уровня. Автор определяет такие случаи (например, пользовательская функция потерь, пользовательский слой) и подробно их рассматривает.

Я лично считаю, что специалисты по машинному обучению должны выработать привычку читать качественные академические статьи, особенно те, которые описывают алгоритмы, лежащие в основе библиотек, которые они используют для моделирования. В книге есть полезные ссылки на такие документы, где это применимо, будь то более традиционные методы ML (например, мини-пакетные K-средние) или основанные на нейронных сетях (например, SentencePiece), чтобы помочь обсуждениям. Хорошим практиком часто является глубокое знание внутренней работы моделей, которые посредственные просто рассматривают как ящики для хранения. С такими указателями на соответствующий внешний контент полезность книги выходит далеко за пределы ее страниц.

В середине 2019 года Google выпустила TensorFlow Extended (TFX) в качестве фреймворка для обеспечения поддержки производственного уровня конвейеров машинного обучения. Это не рассматривается в книге и совершенно понятно, поскольку отрасль развивается с головокружительной скоростью. Тем не менее, автор, безусловно, в курсе событий, и заинтересованные лица могут просмотреть слайд-презентацию, которую он использовал для обучения на TensorFlow World 2019 в Санта-Кларе, здесь. Возможно, в будущем мы можем рассчитывать на дополненную 19-ю главу или совершенно новую 20-ю главу. В ближайшем будущем обратите внимание на это предстоящее название, посвященное развертыванию машинного обучения, которое автор в настоящее время рассматривает.

В завершение я настоятельно рекомендую эту книгу новичкам в области машинного обучения (которые получат много практических знаний), а также экспертам (которым будет полезна продуманная организация предмета с дополнительным материалом для дальнейшего чтения).

Эта статья впервые появилась здесь.