В минувшие выходные я выступал с докладом на Python Conference Espirito Santo 2017. Поскольку это было мероприятие Python, я решил поговорить об инструментах Python, которые я часто использую в своих проектах.

Python предлагает на 75% больше вакансий в области науки о данных и машинного обучения, чем R на сайте Indeed.com.

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

Мы начали пачкать руки, взглянув на Jupyter Notebook, довольно популярное веб-приложение для смешивания и сопоставления кода с текстом и графиками, которое я использую в большинстве своих проектов. Вот отрывок из записной книжки, которую я просмотрел во время выступления:

Чтобы было веселее, мы решили использовать набор данных Titanic, который доступен на Kaggle. В нем есть данные о пассажирах на борту самого большого корабля на плаву в 1972 году, затонувшего после столкновения с айсбергом.

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

Нам было интересно построить возрастное распределение среди всех пассажиров с Матплотлиб и среди выживших с Сиборном. Новая версия Matplotlib прошла долгий путь, но я думаю, что большинство людей согласились с тем, что добавление Seaborn делает графики намного более современными. Вот чистый сюжет Matplotlib рядом с сюжетом Seaborn:

Я также хотел, чтобы они знали, насколько легко сделать статистический вывод с помощью подпакета статистики SciPy. Я использовал следующий код, чтобы показать, что да, мы можем сказать с 95% уверенностью, что тарифы, оплаченные выжившими, были выше, чем тарифы, оплаченные неживыми:

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

Если вы хотите увидеть больше кода или, возможно, форк репозитория, вы сможете найти его здесь (предупреждение: текст будет на португальском языке):



А для тех, кто говорит по-португальски, вот слайды:



Заявление об ограничении ответственности: я ассистент преподавателя в K2 Data Science. Наш учебный курс по Data Science охватывает все это и многое другое!