Примеры использования искусственного интеллекта на Python: от базовых алгоритмов до сложных моделей

Python 3 и PyQt 5. Разработка приложений (2016)

Описан язык Python 3: типы данных, операторы, условия, циклы, регулярные выражения, функции, инструменты объектно-ориентированного программирования, работа с файлами и каталогами, часто используемые модули стандартной библиотеки. Приведены основы базы данных SQLite, интерфейс доступа к базе и способы получения данных из Интернета

Особое внимание уделено библиотеке PyQt 5, позволяющей создавать приложения с графическим интерфейсом на языке Python

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

Introduction to Machine Learning With Python

Authors: Andreas C. Müller and Sarah Guido

Formats: Kindle and Paperback

Latest edition: First 

This is the first book on our list that focuses on Python. It mainly revolves around scikit-learn along with some matplotlib, pandas, and NumPy. We highly recommend this book for new aspirants of machine learning. It is an in-depth tour of some of the most useful methods in scikit-learn like regression, classifying, clustering, etc. The practical sections, facial recognition, for example, are deep enough to be exciting and useful without being overwhelming.

One nice thing about this guide is that it stays focused on practical machine learning applications in Python. You won’t find much mathematics; there are only a handful of formulas in the whole book. Obviously, this book alone won’t make you an expert, but by the end of the book, you’ll have a good idea of the basics of scikit-learn and some intuition about popular algorithms.

There are probably people who want to learn it all from scratch—how it works, what’s the math behind it, etc. But this book is meant for people who wish to have an overview of how things are and then gradually dive deep into it. You can grab a copy of it on Amazon.

Django: практика создания Web-сайтов на Python (2018)

Книга посвящена разработке Web-сайтов на популярном языке программирования Python с использованием библиотеки Django. Описывается создание моделей, контроллеров и шаблонов, применение форм для ввода данных и выгрузки на сайт файлов, реализация разграничения доступа, комментирование кода, работа со статичными страницами, применение сторонних библиотек для вывода миниатюр. Рассказывается о форматировании текста тегами BBCode, привязке к позициям тегов и выполнении поиска по тегам. Рассматриваются инструменты для генерирования каналов новостей RSS и Atom, рассылки электронной почты и настройка встроенного административного сайта Django под свои нужды. Детально описывается процесс разработки и публикации полнофункционального коммерческого Web-сайта, использующего, в том числе, технологию AJAX. Все исходные коды доступны для загрузки с сайта издательства.

6 лучших книг по Data Science и Machine Learning на Python

Несмотря на то, что существует множество онлайн-курсов по изучению Python для Data Science и Machine Learning, книги по-прежнему являются отличным способом для углубленного изучения предмета и значительного улучшения ваших знаний.

Но не будем больше медлить и перейдем непосредственно к списку книг по Python, которые, по нашему мнению, должен прочитать каждый Data Scientist.

1. Python For Data Analysis

Это первая специализированная книга по анализу данных и науке о данных на Python. Она охватывает все основы, которые должен знать специалист по данным или дата-инженер, например, агрегирование данных и временные ряды.

В то же время в ней также приведены базовые упражнения по Python, которые научат вас применять Pandas для решения реальных задач

Это одна из важных вещей, на которые мы всегда обращаем внимание в книгах и онлайн-курсах. Именно благодаря упражнениям мы получаем больше знаний о решении реальных проблем и учимся применять наши навыки

Это, вероятно, лучшая книга для изучения способов манипулирования данными, а также их обработки и очистки при помощи Python. Кроме этого в книге дается информация об использовании библиотеки Pandas в реальной работе.

2. Automate the Boring Stuff with Python

Это книгу мы рекомендовали бесчисленному количеству разработчиков, и самое приятное то, что ни один из них не сказал, что она бесполезна.

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

Книга не только охватывает основы Python, но также содержит простые советы по автоматизации, которые помогут вам в повседневных задачах. Это особенно полезно для специалистов по данным и бизнес-аналитиков, которые занимаются анализом данных большого объема.

3. Machine Learning with Python Cookbook

Это еще одна книга по Python, посвященная науке о данных (Data Science), машинному обучению (Machine Learning,) и глубокому обучению (Deep Learning). Она начинается с нескольких общих тем, таких как линейная регрессия и метод k-ближайших соседей (KNN), а затем переходит к более глубоким концепциям, таким как нейронные сети.

Кроме того, как и во многих других книгах по программированию от издательства O’Reilly, в ней есть много отличных практических примеров, которые хорошо объяснены и помогут вам закрепить ваши знания.

4. Python Cookbook

Это еще одна книг общего назначения, которую дата-инженеры могут использовать для изучения Python. Она охватывает такие важные темы, как файлы и ввод-вывод, структуры данных, сети, алгоритмы и т. д. Все эти темы являются отличной базой для любой карьеры, связанной с технологиями, включая науку о данных и машинное обучение.

Это всеобъемлющая книга, которая учит не только тому, что можно делать с помощью Python, но и универсальным принципам программирования, таким как объекты, классы, структуры данных и алгоритмы, на которых собственно основаны все программы.

5. Hands-On Machine Learning with Scikit-Learn and TensorFlow

Если вы намерены изучить фреймворк Tensorflow на Python, то это одна из лучших книг по этой теме, доступных в настоящее время на рынке.

Первая половина книги посвящена машинному обучению, а вторая – исключительно нейронным сетям. Она охватывает такие темы, как сверточные нейронные сети (CNN), автокодировщики (autoencoders), drop-out и другие важные вопросы глубокого обучения с помощью Tensorflow.

Еще одна библиотека, которую мы рекомендуем, называется Pandas. Это чрезвычайно мощный инструмент, и если вы имеете дело с данными, он вам обязательно понадобится. Мы настоятельно рекомендую каждому специалисту по данным и машинному обучению изучить Pandas для очистки и предобработке данных, прежде чем использовать их в своей модели.

6. Data Visualization in Python

Одним из ключевых навыков, которым должны обладать все специалисты по данным, является навык их визуализации. К счастью, в Python есть очень много мощных библиотек, таких как Pandas, MatPlotLib и Seaborn, которые можно использовать для различных способов визуализации данных.

Эта книга научит вас, как использовать Pandas для обработки данных и как применять основные библиотеки Python, такие как MatPlotLib и Seaborn, для построения графиков. Также она покажет вам, как использовать преимущества декларативных и экспериментальных библиотек, таких как Altair.

Это одна из немногих книг, охватывающих 9 основных библиотек Python: Pandas, MatplotLib, Seaborn, Bokeh, Altair, GGPlot, GeoPandas и VisPy. В целом это отличная книга для изучения визуализации данных как для начинающих, так и для опытных разработчиков Python.

Python Machine Learning by Example

Authors: Yuxi (Hayden) Liu

Formats: Kindle and Paperback

Latest edition: Second

Here’s another book designed to be an entry-point to machine learning. It makes use of Python libraries such as TensorFlow, scikit-learn, and Keras to teach you the basics of machine learning and how to implement ML algorithms. The book is filled with real-world examples to help you explore the world of data mining and data analysis.

It covers a variety of topics such as predicting situations using analytics, implementing machine learning regression and classification algorithms, solving challenging real-world problems, evaluating and optimizing the performance of an ML model, handling data extraction and manipulation, and visualization of data.

You’ll need to be familiar with Python before picking up this text, and it’ll be best if you know some statistical concepts as well. However, knowledge of statistics is not required to read the book.

This guide is recommended for beginners who want to get into machine learning while solving practical problems. You can grab a copy of this book on Amazon. You can also read it for free on Packtpub’s website by clicking here. Since it is also available for free, it is a good idea to check it out to supplement any machine learning courses you might be enrolled in.

Библиотека Keras – инструмент глубокого обучения. Реализация нейронных сетей с помощью библиотек Theano и TensorFlow (2018)

Книга представляет собой краткое, но обстоятельное введение в современные нейронные сети, искусственный интеллект и технологии глубокого обучения. В ней представлено более 20 работоспособных нейронных сетей, написанных на языке Python с использованием модульной библиотеки Keras, работающей поверх библиотек TensorFlow от Google или Theano от компании Lisa Lab. Описан функциональный API библиотеки Keras и возможности его расширения. Рассмотрены алгоритмы обучения с учителем (простая линейная регрессия, классический многослойный перцептрон, глубокие сверточные сети), а также алгоритмы обучения без учителя – автокодировщики и порождающие сети. Дано введение в технологию глубокого обучения с подкреплением и ее применение к построению игр со встроенным искусственным интеллектом.

Глубокое обучение на Python (2018)

Глубокое обучение – Deep learning – это набор алгоритмов машинного обучения, которые моделируют высокоуровневые абстракции в данных, используя архитектуры, состоящие из множества нелинейных преобразований. Согласитесь, эта фраза звучит угрожающе. Но всё не так страшно, если о глубоком обучении рассказывает Франсуа Шолле, который создал Keras – самую мощную библиотеку для работы с нейронными сетями. Познакомьтесь с глубоким обучением на практических примерах из самых разнообразных областей. Книга делится на две части: в первой даны теоретические основы, вторая посвящена решению конкретных задач. Это позволит вам не только разобраться в основах DL, но и научиться использовать новые возможности на практике.

Математика на Python. Часть I. Элементы линейной алгебры и аналитической геометрии (2018)

Дисциплина «Компьютерный практикум» является обязательной дисциплиной базовой части профессионального цикла ООП по направлению 38.03.01 «Экономика» всех профилей (модуль математики и информатики Б.1.1.2.3.). Изучение данной дисциплины нацелено на формирование у слушателей практических навыков по реализации математических методов и моделей, применяемых в профессиональных задачах, с помощью компьютерных вычислений. В учебном пособии представлены задачи по высшей математике и их реализация на языке Python.

Соответствует требованиям Федерального государственного образовательного стандарта высшего образования последнего поколения.

Natural Language Processing With Python

Authors: Steven Bird and Ewan Klein

Formats: Kindle and Paperback

Latest edition: First

Natural language processing (NLP) is an essential skill in machine learning. If you don’t know what natural language processing is, it is the backbone of tools we use every day. NLP is there in many software, from chatbots and search engines to grammar correction tools and voice assistance.

This book introduces you to the natural language toolkit (NLTK), a popular suite of Python libraries for building programs that deal with a range of NLP operations. 

It hooks you from the beginning by teaching you to build exciting pieces of software. The book builds up from elementary models to complex ones as you progress. The authors have done a remarkable job of combining many freeware tools and resources into a useful package. It is a well-arranged guide to both Python programming and NLP, as it assumes no prior familiarity with either.

However, the first edition of the book feels overdue for an update. It includes some code that no longer functions with the current version of NLTK. Apart from that, it is an excellent resource for getting into NLP. You can purchase Natural Language Processing With Python from Amazon. Its free version is available here, which has been updated for Python 3 and NLTK 3.

Machine Learning in Action

Authors: Peter Harrington

Format: Paperback

Latest edition: First

To read this book, you’ll need working knowledge of Python, but prior familiarity with machine learning is not required. It is a high-level introduction to machine learning, having lots of Python code samples. The writing style is casual, and the concepts are explained in an easy-to-understand language.

The book doesn’t go deep into the mathematics behind methods. The author shows you just enough mathematics to help you get a sense of it. Then he teaches you how to use Python to implement the techniques. As we’ve said, it’ll be best if you have some knowledge of Python before picking up this book. That way, you won’t fall short of understanding anything.

It is divided into three sections: supervised classification supervised regression and unsupervised methods like dimensionality reduction. These topics are dealt with in detail, with comparisons of several different algorithms. It also looks at the emerging field of “big data” by introducing you to MapReduce, Amazon Web Services (AWS), and Hadoop.

We recommend this book for people who need a solid background in machine learning and want to get started with building real-world machine learning projects. You can purchase this book on Amazon, and it is only available in paperback format (no Kindle).

Обучение с учителем

Обучение с учителем — один из видов машинного обучения. Его идея заключается в том, что систему сначала учат понимать прошлые данные, предлагая много примеров конкретной проблемы и желаемый вывод. Затем, когда система «натренирована», ей можно давать новые входные данные для предсказания выводов.

Например, как создать спам-детектор? Один из способов — интуиция. Можно вручную определять правила: например «содержит слово деньги» или «включает фразу Western Union». И пусть иногда такие системы работают, в большинстве случаев все-таки сложно создать или определить шаблоны, опираясь исключительно на интуицию.

С помощью обучения с учителем можно тренировать системы изучать лежащие в основе правила и шаблоны за счет предоставления примеров с большим количеством спама. Когда такой детектор натренирован, ему можно дать новое письмо, чтобы он попытался предсказать, является ли оно спамом.

Обучение с учителем можно использовать для предсказания вывода. Есть два типа проблем, которые решаются с его помощью: регрессия и классификация.

  • В регрессионных проблемах мы пытаемся предсказать непрерывный вывод. Например, предсказание цены дома на основе данных о его размере
  • В классификационных — предсказываем дискретное число качественных меток. Например, попытка предсказать, является ли письмо спамом на основе количества слов в нем.

Невозможно говорить о машинном обучении с учителем, не затронув модели обучения с учителем. Это как говорить о программировании, не касаясь языков программирования или структур данных. Модели обучения — это те самые структуры, что поддаются тренировке. Их вес (или структура) меняется по мере того, как они формируют понимание того, что нужно предсказывать. Есть несколько видов моделей обучения, например:

  • Случайный лес (random forest)
  • Наивный байесовский классификатор (naive Bayes)
  • Логистическая регрессия (logistic regression)
  • Метод k-ближайших соседей (k nearest neighbors)

В этом материале в качестве модели будет использоваться нейронная сеть.

Python 3 — Самое Необходимое (2018)

Описан базовый синтаксис языка Python 3: типы данных, операторы, условия, циклы, регулярные выражения, встроенные функции, классы и объекты, итераторы и перечисления, обработка исключений, часто используемые модули стандартной библиотеки. Даны основы SQLite, описан интерфейс доступа к базам данных SQLite и MySQL, в том числе посредством ODBC. Рассмотрена работа с изображениями с помощью библиотек Pillow и Wand, получение данных из Интернета и работа с архивами различных форматов. Книга содержит более двухсот практических примеров, помогающих начать программировать на языке Python самостоятельно. Весь материал тщательно подобран, хорошо структурирован и компактно изложен, что позволяет использовать книгу как удобный справочник.

Электронное приложение-архив, доступное на сайте издательства, содержит листинги описанных в книге примеров.

Machine Learning Using Python

Authors: Manaranjan Pradhan and U Dinesh Kumar

Formats: Kindle and Paperback

Latest edition: First

This is another excellent book for machine learning aspirants. It teaches you various ML algorithms and how to implement them. The author also discusses several Python libraries used for data analysis like Pandas. It also includes significant mathematics, but the equations are explained nicely, and it doesn’t overwhelm you with all the statistics.

The examples in the book focus on core data science concepts, and you’ll find ready-made code templates that can be plugged and played in other algorithms as well. 

It also contains several solved case studies, which help you understand and better implement machine learning algorithms. Some of the topics covered in the book include descriptive analytics, predictive analytics, decision tree learning, random forest, boosting, text analytics, and recommender system.

Like most books on machine learning, it requires prior familiarity with Python programming language. It is not a comprehensive book (is any machine learning book complete, though?) but offers a broad overview of many concepts and methods. This guide is recommended as a reference book to look up code snippets when working on machine learning projects. You can buy Machine Learning Using Python from Amazon.

Programming Collective Intelligence: Building Smart Web 2.0 Applications

Author: Toby Segaran

Formats: Kindle and Paperback

Latest edition: First

This is another introductory book for those who have no experience in machine learning. It is actually less of an introductory text and more of a practical guide on implementing machine learning. Experts in the field regard it as one of the best books to start understanding the mechanics of machine learning.

The book covers a wide range of concepts and techniques. It doesn’t just teach you libraries; instead, it shows you exactly how machine learning algorithms are implemented in pure Python. The author goes into detail about how to gather data from applications, create programs to access data from sources, and draw conclusions from the collected data. 

The book doesn’t go into the mathematics behind algorithms, making for a casual and easy-to-understand style. Some of the topics discussed in the book include Recommendation, Clustering, Optimization, Support Vector Machines, Searching/Ranking, Decision Trees, Genetic Programming, and Feature Detection. Each chapter also has exercises to strengthen your learning.

Although the book is old, it is still relevant and makes for an insightful reading. You can grab a copy of this guide from Amazon.

Построение систем машинного обучения на языке Python (2016)

Применение машинного обучения для лучшего понимания природы данных – умение, необходимое любому современному разработчику программ или аналитику. Python – замечательный язык для создания приложений машинного обучения. Благодаря своей динамичности он позволяет быстро производить разведочный анализ данных и экспериментировать с ними. Обладая первоклассным набором библиотек машинного обучения с открытым исходным кодом, Python дает возможность сосредоточиться на решаемой задаче и в то же время опробовать различные идеи.

Книга начинается с краткого введения в предмет машинного обучения и знакомства с библиотеками NumPy, SciPy, scikit-learn. Но довольно быстро авторы переходят к более серьезным проектам с реальными наборами данных, в частности, тематическому моделированию, анализу корзины покупок, облачным вычислениям и др.

«Программируем на Python» — Майкл Доусон

Пособие для тех, кто только начинает изучать Python.

О чем

Одна из самых популярных книг для новичков, не требующая предварительных знаний языка. Фокус руководства — на программировании видеоигр. Автор рассказывает, как использовать Python при создании видеоигр, простых и сложных. Но не только это: книга в целом комплексно объясняет основы, как функционирует этот язык программирования, какие у него возможности, учит фундаментальным принципам создания кода. 

Теория дана сжато, но достаточно, чтобы начать практиковаться. Параллельно с изучением основ, вы начнете реализовывать проекты разных игр. Книга полностью построена на примерах, а после каждой главы — резюме пройденного материала и задачи для закрепления.

Небольшой минус книги — тем, кто не любит геймдев, может быть не очень интересно, примеры могут показаться нерелевантными. Но для старта в Python книга отличная. 

После прочтения вы усвоите базовые принципы разработки, сможете сразу же начать пользоваться ими: создавать приложения на Python и свои видеоигры.

Machine Learning For Absolute Beginners

Author: Oliver Theobald

Formats: Kindle and Paperback

Latest edition: Second

The first book on our list is not specifically about machine learning in Python. Still, it is an excellent guide aimed at beginners, and it uses some Python coding as well. As its title suggests, this book will familiarize you with machine learning even if you know nothing about it. The author explains everything from the perspective of someone new to the machine learning world.

As you progress, there will be times when you’ll forget why you are supposed to do something or what a specific term means exactly. This book serves as an excellent reference, and you can use it for jogging your memory every now and then. It gives you a broad, lucid overview of everything you need to know about machine learning as a beginner.

The book also contains pretty visuals and graphs with simple yet comprehensive explanations of many algorithms. Lastly, it also includes some coding in Python to give you practical examples of how things work. If you’re new to Python machine learning and want to start on the right foot, we recommend you pick up this book. You can buy Machine Learning For Absolute Beginners on Amazon.

Learning Scikit-Learn: Machine Learning in Python

Authors: Raúl Garreta and Guillermo Moncecchi

Format: Kindle/Paperback

Latest edition: First

This book was published in 2013, so many of its code samples are outdated and desperately need to be upgraded. To be honest, most of these follow-along-with-me types of books have this problem. Not all of them are updated regularly to match the latest versions of libraries and applications.

However, the book’s overall content is still relevant, and it makes for an insightful introduction to machine learning with Python. The author gives you a broad and practical overview of everything involved in the field of machine learning. Needless to say, you’ll need some background in computer science, and it is even better if you’ve read a book or two on machine learning and have a general idea of it.

By the end of this book, you’ll have an understanding of the basics of machine learning algorithms and the Python libraries used to implement them. The text also introduces you to the scikit-learn library. You’ll learn how to use it to accomplish some basic machine learning tasks. Like most books on this list, it doesn’t delve deep into the mathematical side of things.

You can buy Learning Scikit-Learn: Machine Learning in Python from Amazon.

Что такое машинное обучение и почему это важно?

Машинное обучение — это область искусственного интеллекта, использующая статистические методы, чтобы предоставить компьютерным системам способность «учиться». То есть постепенно улучшать производительность в конкретной задаче, с помощью данных без явного программирования. Хороший пример — то, насколько эффективно (или не очень) Gmail распознает спам или насколько совершеннее стали системы распознавания голоса с приходом Siri, Alex и Google Home.

С помощью машинного обучения решаются следующие задачи:

  • Распознавание мошенничества — отслеживание необычных шаблонов в транзакциях кредитных карт или банковских счетов
  • Предсказание — предсказание будущей цены акций, курса обмена валюты или криптовалюты
  • Распознавание изображений — определение объектов и лиц на картинках

Машинное обучение — огромная область, и сегодня речь пойдет лишь об одной из ее составляющих.

Like this post? Please share to your friends: