Аннотация Книга содержит около 200 рецептов решения практических задач машинного обучения, таких как загрузка и обработка текстовых или числовых данных, отбор модели, уменьшение размерности и многие другие. Рассмотрена работа с языком Python и его библиотеками, в том числе pandas и scikit-learn. Решения всех задач сопровождаются подробными объяснениями. Каждый рецепт содержит работающий программный код, который можно вставлять, объединять и адаптировать, создавая собственное приложение. Приведены рецепты решений с использованием: векторов, матриц и массивов; обработки данных, текста, изображений, дат и времени; уменьшения размерности и методов выделения или отбора признаков; оценивания и отбора моделей; линейной и логистической регрессии, деревьев, лесов и k ближайших соседей; опорно-векторных машин (SVM), наивных байесовых классификаторов, кластеризации и нейронных сетей; сохранения и загрузки натренированных моделей.
Об авторе 1 Предисловие 3 Для кого предназначена книга 4 Для кого не предназначена книга 4 Терминология, используемая в книге 4 Признательности 5 Комментарии переводчика 5 Исходный код 7 Протокол установки библиотек 7 Установка библиотек Python из whl-файлов 8 Блокноты Jupyter 9 Глава 1. Векторы, матрицы, массивы 11 Введение 11 1.1. Создание вектора 11 1.2. Создание матрицы 12 1.3. Создание разреженной матрицы 13 1.4. Выбор элементов 14 1.5. Описание матрицы 16 1.6. Применение операций к элементам 17 1.7. Нахождение максимального и минимального значений 18 1.8. Вычисление среднего значения, дисперсии и стандартного отклонения 19 1.9. Реформирование массивов 20 1.10. Транспонирование вектора в матрицу 21 1.11. Сглаживание матрицы 22 1.12. Нахождение ранга матрицы 22 1.13. Вычисление определителя матрицы 23 1.14. Получение диагонали матрицы 24 1.15. Вычисление следа матрицы 24 1.16. Нахождение собственных значений и собственных векторов 25 1.17. Вычисление скалярных произведений 27 1.18. Сложение и вычитание матриц 28 1.19. Умножение матриц 29 1.20. Обращение матрицы 30 1.21. Генерирование случайных значений 31 Глава 2. Загрузка данных 33 Введение 33 2.1. Загрузка образца набора данных 33 2.2. Создание симулированного набора данных 35 2.3. Загрузка файла CSV 38 2.4. Загрузка файла Excel 39 2.5. Загрузка файла JSON 40 2.6. Опрашивание базы данных SQL 41 Глава 3. Упорядочение данных 42 Введение 42 3.1. Создание фрейма данных 43 3.2. Описание данных 44 3.3. Навигация по фреймам данных 46 3.4. Выбор строк на основе условных конструкций 48 3.5. Замена значений 49 3.6. Переименование столбцов 51 3.7. Нахождение минимума, максимума, суммы, среднего арифметического и количества 52 3.8. Нахождение уникальных значений 53 3.9. Отбор пропущенных значений 55 3.10. Удаление столбца 56 3.11. Удаление строки 58 3.12. Удаление повторяющихся строк 59 3.13. Группирование строк по значениям 61 3.14. Группирование строк по времени 62 3.15. Обход столбца в цикле 65 3.16. Применение функции ко всем элементам в столбце 66 3.17. Применение функции к группам 66 3.18. Конкатенация фреймов данных 67 3.19. Слияние фреймов данных 69 Глава 4. Работа с числовыми данными 73 Введение 73 4.1. Шкалирование признака 73 4.2. Стандартизация признака 75 4.3. Нормализация наблюдений 76 4.4. Генерирование полиномиальных и взаимодействующих признаков 78 4.5. Преобразование признаков 80 4.6. Обнаружение выбросов 81 4.7. Обработка выбросов 83 4.8. Дискретизация признаков 86 4.9. Группирование наблюдений с помощью кластеризации 87 4.10. Удаление наблюдений с пропущенными значениями 89 4.11. Импутация пропущенных значений 91 Глава 5. Работа с категориальными данными 94 Введение 94 5.1. Кодирование номинальных категориальных признаков 95 5.2. Кодирование порядковых категориальных признаков 98 5.3. Кодирование словарей признаков 100 5.4. Импутация пропущенных значений классов 102 5.5. Работа с несбалансированными классами 104 Глава 6. Работа с текстом 109 Введение 109 6.1. Очистка текста 109 6.2. Разбор и очистка разметки HTML 111 6.3. Удаление знаков препинания 112 6.4. Лексемизация текста 113 6.5. Удаление стоп-слов 114 6.6. Выделение основ слов 115 6.7. Лемматизация слов 116 6.8. Разметка слов на части речи 117 6.9. Кодирование текста в качестве мешка слов 120 6.10. Взвешивание важности слов 123 Глава 7. Работа с датами и временем 126 Введение 126 7.1. Конвертирование строковых значений в даты 126 7.2. Обработка часовых поясов 128 7.3. Выбор дат и времени 129 7.4. Разбиение данных даты на несколько признаков 130 7.5. Вычисление разницы между датами 131 7.6. Кодирование дней недели 132 7.7. Создание запаздывающего признака 133 7.8. Использование скользящих временных окон 134 7.9. Обработка пропущенных дат во временном ряду 136 Глава 8. Работа с изображениями 139 Введение 139 8.1. Загрузка изображений 140 8.2. Сохранение изображений 142 8.3. Изменение размера изображений 143 8.4. Обрезка изображений 144 8.5. Размытие изображений 146 8.6. Увеличение резкости изображений 148 8.7. Усиление контрастности 150 8.8. Выделение цвета 152 8.9. Бинаризация изображений 153 8.10. Удаление фонов 155 8.11. Обнаружение краев изображений 158 8.12. Обнаружение углов 159 8.13. Создание признаков для машинного самообучения 163 8.14. Кодирование среднего цвета в качестве признака 166 8.15. Кодирование гистограмм цветовых каналов в качестве признаков 167 Глава 9. Снижение размерности с помощью выделения признаков 171 Введение 171 9.1. Снижение признаков с помощью главных компонент 171 9.2. Уменьшение количества признаков, когда данные линейно неразделимы 174 9.3. Уменьшение количества признаков путем максимизации разделимости классов 176 9.4. Уменьшение количества признаков с использованием разложения матрицы 179 9.5. Уменьшение количества признаков на разреженных данных 180 Глава 10. Снижение размерности с помощью отбора признаков 184 Введение 184 10.1. Пороговая обработка дисперсии числовых признаков 184 10.2. Пороговая обработка дисперсии бинарных признаков 186 10.3. Обработка высококоррелированных признаков 187 10.4. Удаление нерелевантных признаков для классификации 189 10.5. Рекурсивное устранение признаков 192 Глава 11. Оценивание моделей 195 Введение 195 11.1. Перекрестная проверка моделей 195 11.2. Создание базовой регрессионной модели 199 11.3. Создание базовой классификационной модели 201 11.4. Оценивание предсказаний бинарного классификатора 203 11.5. Оценивание порогов бинарного классификатора 206 11.6. Оценивание предсказаний мультиклассового классификатора 210 11.7. Визуализация результативности классификатора 211 11.8. Оценивание регрессионных моделей 213 11.9. Оценивание кластеризующих моделей 215 11.10. Создание собственного оценочного метрического показателя 217 11.11. Визуализация эффекта размера тренировочного набора 219 11.12. Создание текстового отчета об оценочных метрических показателях 221 11.13. Визуализация эффекта значений гиперпараметра 222 Глава 12. Отбор модели 226 Введение 226 12.1. Отбор наилучших моделей с помощью исчерпывающего поиска 226 12.2. Отбор наилучших моделей с помощью рандомизированного поиска 229 12.3. Отбор наилучших моделей из нескольких обучающихся алгоритмов 231 12.4. Отбор наилучших моделей во время предобработки 233 12.5. Ускорение отбора модели с помощью распараллеливания 235 специализированных методов 236 12.7. Оценивание результативности после отбора модели 238 Глава 13. Линейная регрессия 241 Введение 241 13.1. Подгонка прямой 241 13.2. Обработка интерактивных эффектов 243 13.3. Подгонка нелинейной связи 245 13.4. Снижение дисперсии с помощью регуляризации 247 13.5. Уменьшение количества признаков с помощью лассо-регрессии 250 Глава 14. Деревья и леса 252 Введение 252 14.1. Тренировка классификационного дерева принятия решений 252 14.2. Тренировка регрессионного дерева принятия решений 254 14.3. Визуализация модели дерева принятия решений 255 14.4. Тренировка классификационного случайного леса 258 14.5. Тренировка регрессионного случайного леса 260 14.6. Идентификация важных признаков в случайных лесах 261 14.7. Отбор важных признаков в случайных лесах 263 14.8. Обработка несбалансированных классов 264 14.9. Управление размером дерева 266 14.10. Улучшение результативности с помощью бустинга 267 14.11. Оценивание случайных лесов с помощью ошибок внепакетных наблюдений 269 Глава 15. K ближайших соседей 271 Введение 271 15.1. Отыскание ближайших соседей наблюдения 271 15.2. Создание классификационной модели k ближайших соседей 274 15.3. Идентификация наилучшего размера окрестности 276 15.4. Создание радиусного классификатора ближайших соседей 277 Глава 16. Логистическая регрессия 279 Введение 279 16.1. Тренировка бинарного классификатора 279 16.2. Тренировка мультиклассового классификатора 281 16.3. Снижение дисперсии с помощью регуляризации 282 16.4. Тренировка классификатора на очень крупных данных 283 16.5. Обработка несбалансированных классов 285 Глава 17. Опорно-векторные машины 287 Введение 287 17.1. Тренировка линейного классификатора 287 17.2. Обработка линейно неразделимых классов с помощью ядер 290 17.3. Создание предсказанных вероятностей 294 17.4. Идентификация опорных векторов 295 17.5. Обработка несбалансированных классов 297 Глава 18. Наивный Байес 299 Введение 299 18.1. Тренировка классификатора для непрерывных признаков 300 18.2. Тренировка классификатора для дискретных и счетных признаков 302 18.3. Тренировка наивного байесова классификатора для бинарных признаков 303 18.4. Калибровка предсказанных вероятностей 304 Глава 19. Кластеризация 307 Введение 307 19.1. Кластеризация с помощью k средних 307 19.2. Ускорение кластеризации методом k средних 310 19.3. Кластеризация методом сдвига к среднему 311 19.4. Кластеризация методом DBSCAN 313 19.5. Кластеризация методом иерархического слияния 314 Глава 20. Нейронные сети 317 Введение 317 20.1. Предобработка данных для нейронных сетей 318 20.2. Проектирование нейронной сети 320 20.3. Тренировка бинарного классификатора 323 20.4. Тренировка мультиклассового классификатора 325 20.5. Тренировка регрессора 327 20.6. Выполнение предсказаний 329 20.7. Визуализация истории процесса тренировки 331 20.8. Снижение переподгонки с помощью регуляризации весов 334 20.9. Снижение переподгонки с помощью ранней остановки 336 20.10. Снижение переподгонки с помощью отсева 338 20.11. Сохранение процесса тренировки модели 340 20.12. k-блочная перекрестная проверка нейронных сетей 343 20.13. Тонкая настройка нейронных сетей 345 20.14. Визуализация нейронных сетей 347 20.15. Классификация изображений 349 20.16. Улучшение результативности с помощью расширения изображения 353 20.17. Классификация текста 355 Глава 21. Сохранение и загрузка натренированных моделей 359 Введение 359 21.1. Сохранение и загрузка модели scikit-learn 359 21.2. Сохранение и загрузка модели Keras 361 Предметный указатель 363
Вариант 1: Электронная доставка на email
После оплаты заказа на сайте, вам приходит ссылка на курс/тренинг/материалы на почту указанную в заказе.
Стоимость доставки: 0рублей
Политика конфиденциальности
Общие положения
Некоторые объекты, размещенные на сайте, являются интеллектуальной собственностью компании "Все онлайн курсы и тренинги vsekursi24.ru". Использование таких объектов установлено действующим законодательством РФ.
На сайте "Все онлайн курсы и тренинги vsekursi24.ru" имеются ссылки, позволяющие перейти на другие сайты. Компания "Все онлайн курсы и тренинги vsekursi24.ru" не несет ответственности за сведения, публикуемые на этих сайтах и предоставляет ссылки на них только в целях обеспечения удобства для посетителей своего сайта.
Личные сведения и безопасность
Компания "Все онлайн курсы и тренинги vsekursi24.ru" гарантирует, что никакая полученная от Вас информация никогда и ни при каких условиях не будет предоставлена третьим лицам, за исключением случаев, предусмотренных действующим законодательством Российской Федерации.
В определенных обстоятельствах компания "Все онлайн курсы и тренинги vsekursi24.ru" может попросить Вас зарегистрироваться и предоставить личные сведения. Предоставленная информация используется исключительно в служебных целях, а также для предоставления доступа к специальной информации.
Личные сведения можно изменить, обновить или удалить в любое время в разделе "Аккаунт" > "Профиль".
Чтобы обеспечить Вас информацией определенного рода, компания "Все онлайн курсы и тренинги vsekursi24.ru" с Вашего явного согласия может присылать на указанный при регистрации адрес электронный почты информационные сообщения. В любой момент Вы можете изменить тематику такой рассылки или отказаться от нее.
Как и многие другие сайты, "Все онлайн курсы и тренинги vsekursi24.ru" использует технологию cookie, которая может быть использована для продвижения нашего продукта и измерения эффективности рекламы. Кроме того, с помощь этой технологии "Все онлайн курсы и тренинги vsekursi24.ru" настраивается на работу лично с Вами. В частности без этой технологии невозможна работа с авторизацией в панели управления.
Сведения на данном сайте имеют чисто информативный характер, в них могут быть внесены любые изменения без какого-либо предварительного уведомления.
Чтобы отказаться от дальнейших коммуникаций с нашей компанией, изменить или удалить свою личную информацию, напишите нам через форму обратной связи