Случайный лес (Random Forest)

Случайный лес — один из самых потрясающих алгоритмов машинного обучения, придуманные Лео Брейманом и Адель Катлер ещё в прошлом веке. Он дошёл до нас в «первозданном виде» (никакие эвристики не смогли его существенно улучшить) и является одним из немногих универсальных алгоритмов. Универсальность заключается, во-первых, в том, что он хорош во многих задачах (по моим оценкам, 70% из встречающихся на практике, если не учитывать задачи с изображениями), во-вторых, в том, что есть случайные леса для решения задач классификации, регрессии, кластеризации, поиска аномалий, селекции признаков и т.д.

random_forest.jpg Читать далее

Питон (Python)

Сейчас практически все, кто занимается анализом малых данных, делают это с помощью Питона… а ведь ещё 5 лет назад не было пакетов типа scikit-learn и единственной средой с реализованными бустингом, случайным лесом и т.п. оставался R (+ RStudio, т.к. никаких ноутбуков тоже не было). Или приходилось реализовывать все алгоритмы «с нуля», что я и делал в том же Matlab-е. Ещё были разные программки на С/С++ типа libSVM, SVMlight

%d0%bf%d0%b8%d1%82%d0%be%d0%bd

Читать далее

Python: категориальные признаки

Увидел несколько «немного неуклюжих» программ на Питоне, в которых авторы возились с категориальными признаками и решил написать небольшую заметку: как делать базовые вещи в несколько строк. Все примеры выложены на гитхабе, а ниже пояснения.

contries Читать далее

NumPy — делаем быстрее

Чтобы ускорить выполнение кода на интерпретируемом языке программирования, следуют известным советам по избеганию использования циклов, своевременному выделению памяти, применению параллелизации и встроенных средств линейной алгебры. Для М-языка (Matlab) все советы можно найти в гл.15 уже старенькой книги автора. В принципе, они все годятся и для библиотеки NumPy языка Python, поскольку она практически копирует функционал Матлаба. Но кроме самих советов есть некоторые тонкости их использования. Сейчас на одном конкретном примере покажем, как можно ускорить выполнение кода.

speed Читать далее

Знакомство с Pandas (слайды)

Для магистров ВМК МГУ подготовил презентацию по пакету Pandas. С удивлением обнаружил, что по очень популярной среди питонистов панде совсем нет образовательных презентаций. Например, на www.slideshare.net нет ни одного материала по этому пакету (только среди обзоров пакетов для аналитиков данных). Поэтому исправил данный недостаток и закачал туда свою презенташку. Читать далее

Pandas

Чтобы в Питоне работать с данными, в которых не все признаки вещественные, приходится использовать пакет Pandas. В нём реализован тип дата-фрейм (который соответствует аналогичному в R). По сравнению с R здесь всё менее интуитивно, например, специфическая индексация элементов дата-фрейма (которую, впрочем, нетрудно освоить). Очень хороших учебных пособий по Панде нет, но на станице пакета размещено pdf-описание, в котором, в принципе, всё необходимое есть. Проще на основе описания создать себе ноутбук с подсказками основных функций. Мой лежит здесь.