Некоторые репозитории в помощь изучающим и преподающим Python и машинное обучение

b638337a8df741af84ea0cae4cf110f9.png

Привет сообществу!

Я Юрий Кашницкий, раньше делал здесь обзор некоторых MOOC по компьютерным наукам и искал «выбросы» среди моделей Playboy.

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

Почему бы воскресным вечером не поделиться с сообществом материалами по Python и обзором репозиториев по машинному обучению… В первой части будет описание репозитория GitHub с тетрадками IPython по программированию на языке Python. Во второй — обзор попавшихся мне классных репозиториев GitHub.

Курс программирования на языке Python в виде тетрадок IPython

Курс состоит из 5 уроков: обзор средств разработки, введение в язык Python, 2 урока про структуры данных (Python и не только) и некоторые алгоритмы и один урок про функции и рекурсию. Да, не затронута тема ООП и кучи всего полезного, но работа над курсом идет, репозиторий будет обновляться.

Цели данного курса:

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

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

4a2b2230988b4e0b86317f92fddd8daa.jpg

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

Некоторые полезные репозитории GitHub по программированию и машинному обучению

Вот далеко не исчерпывающий список классных репозиториев GitHub по программированию, анализу данных и машинному обучению на языке Python. Почти все из них — наборы тетрадок IPython. Некоторые материалы в моем курсе, описанном выше, — перевод этих.

  • Курс программирования на языке Python, основа сайта introtopython.org.
  • «Data science IPython notebooks» — множество качественных тетрадок по основным библиотекам Python для анализа данных — NumPy, SciPy, Pandas, Matplotlib, Scikit-learn. Краткие обзоры Apache Spark и соревнования Kaggle «Titanic: Machine Learning from Disaster».
  • Гарвардский курс анализа данных
  • «Interactive coding challenges» — подборка основных задач на структуры данных, графы, сортировку, рекурсию и не только. Для многих задач приведены решения и поясняющий материал с картинками.
  • Репозиторий Оливье Гризеля (одного из авторов библиотеки Scikit-learn) с обучающими тетрадками IPython. Еще один.
  • Тьюториал по Scikit-learn, также от авторов
  • Разбор задач курса Andrew Ng «Machine learning» на языке Python
  • Материалы в дополнение к книге «Mining the Social Web (2nd Edition)» (Matthew A. Russell, издательство O'Reilly Media)
  • Тьюториал по использованию ансамблей для решения задач Kaggle.
  • Библиотека XGBoost, которая используется большинством победителей соревнований Kaggle. Там же можно познакомиться с их историями успеха. XGBoost хорош по качеству прогнозирования, эффективно реализован, хорошо параллелится.
  • Подборка данных FiveThirtyEight. Просто куча интересных наборов данных.
  • Прогнозирование результатов выборов в США. Хороший пример анализа данных с Pandas

Надеюсь, эти материалы помогут вам в изучении/преподавании Python и анализа данных.
Список классных репозиториев с тетрадками IPython (да и просто с кодом на Python) конечно можно продолжать. Например, в комментариях.

© Habrahabr.ru