Кем бы вы ни были — инженером-программистом, стремящимся войти в мир глубокого обучения, опытным специалистом по обработке данных или любителем, мечтающим создать «вирусное» приложение с использованием ИИ, — наверняка задавались вопросом: с чего начать? Практические примеры из этой книги научат вас создавать приложения глубокого обучения для облачных, мобильных и краевых (edge) систем. Если вы хотите создать что-то необычное, полезное, масштабируемое или просто классное — эта книга для вас. Многолетний опыт исследований в области глубокого обучения и разработки приложений позволяют авторам научить каждого воплощать идеи в нечто невероятное и необходимое людям в реальном мире. В этой книге вы: • Узнаете, как обучать, настраивать и развертывать модели компьютерного зрения с помощью Keras, TensorFlow, Core ML и TensorFlow Lite. • Изучите интересные проекты, в том числе Not Hotdog из сериала Silicon Valley и еще более 40 примеров. • Смоделируете беспилотный автомобиль в видеоигровом окружении и создадите миниатюрную версию, использовав технологию обучения с подкреплением. • Научитесь использовать перенос обучения для быстрого обучения моделей. • Найдете более 50 практических советов по повышению точности и скорости модели, отладке и масштабированию до многомиллионной аудитории.
Книга отличная. Подача теории потрясающе простая, но практическая часть новичкам не подойдет. Код на Гитхабе устарел, просто запустить и посмотреть магию машинного обучения не получится, придется подстраиваться под обновленные библиотеки, вручную фиксить то, что не работает. Новичков может отпугнуть, но для миддлов самое то.
Используем ffmpeg, чтобы разбить видео на отдельные кадры (следующие с частотой 25 кадров в секунду), а затем обработаем каждый кадр с помощью скрипта визуализации. Создадим каталог для хранения кадров и передадим его имя команде ffmpeg: $ mkdir kitchen $ ffmpeg -i video/kitchen-input.mov -vf fps=25 kitchen/thumb%04d.jpg -hide_banner После этого запустим скрипт визуализации, передав ему путь к каталогу с кадрами, полученными на предыдущем шаге: $ python visualization.py --process video --path kitchen/ В результате появится новый каталог kitchen-output, содержащий тепловые карты для всех кадров в исходном каталоге kitchen. В заключение соберем видео из полученных изображений с помощью ffmpeg: $ ffmpeg -framerate 25 -i kitchen-output/result-%04d.jpg kitchen-output.mp4 Отлично! Теперь исходное видео расположено рядом с копией, на которую наложена тепловая карта. Этот полезный прием можно использовать, например, чтобы выяснить, насколько качественно обучилась модель и не обнаружила ли она случайные артефакты во время обучения.
Сотрудники Google Colab (рис. 1.14) любезно согласились предоставить вычислительное время мощных графических процессоров бесплатно (до 12 часов за раз).