NLPx

Tales of Data Science

CatBoost против всех

CatBoost — open source библиотека градиентного бустинга на деревьях решений, которую два месяца назад презентовал Яндекс. Если верить разработчикам, она способна решить все наши проблемы: Кэтбуст устойчив к переобучению, может работать с категориальными признаками без дополнительной предобработки и работает лучше других аналогичных открытых библиотек. Вместе с исходным кодом Яндекс выложил серию экспериментов, в которых на наборе из 9 открытых датасетов Кэтбуст бьет и всем известный XGBoost, и майкрософтовский LightGBM, и библиотеку H2O — причем как после подбора гиперпараметров, так и с дефолтными параметрами.

Read More

628 просмотров всего, 4 просмотров сегодня

CatBoost против всех
5 3 votes

Условные случайные поля (CRF): краткий обзор

На этой картинке вы видите условное случайное поле.

Продолжаю выкладывать тексты, которые когда-то писал по рабочей надобности. Этот текст был составлен в конце 2014 года, но вполне актуален и сейчас.

В связи с бурным развитием глубинных нейросетей мы как-то начали забывать о простых статистических тружениках машинного обучения. Хватит это терпеть!

Здесь содержится краткий конспект по алгоритму CRF (conditional random fields, условные случайные поля), который я писал для доклада на внутренней конференции. Как обычно — минимум теории (кроме самой интересной) и совсем немного занудства. Пригодится всем, кто любит краткие конспекты. Здесь все, что вы хотели знать о CRF, но боялись спросить (но это не точно).

Добро пожаловать под кат!

Read More

4,438 просмотров всего, 7 просмотров сегодня

Условные случайные поля (CRF): краткий обзор
5 6 votes

Чат-боты: обзор и состояние технологий в отрасли

В последнее время (где-то с февраля-марта 2016 года) очень много и часто говорят про чат-ботов. Насколько это модно, стильно и молодежно? Какие перспективы — рыночные и технологические? Кто виноват и что делать? Об этом вы не узнаете, пока не прочитаете весь опубликованный здесь текст.

Если интересно — покорнейше прошу читать дальше. Если нет, то все равно попробуйте прочитать — вдруг понравится?

Read More

16,547 просмотров всего, 23 просмотров сегодня

Чат-боты: обзор и состояние технологий в отрасли
4.6 8 votes

Примеры отчетов по анализу данных (на английском)

Недавно я нашёл несколько примеров отчетов по анализу данных, которые делали я и мои коллеги в 2013 для тренировки, во время прохождения курса Data Analysis на Курсере. Отчеты на английском языке, могут пригодится в качестве примера всем интересующимся 🙂

Отчеты сделаны по итогам анализа двух наборов данных — Lending Club dataset и Samsung Smartphones dataset. В отчетах нет никаких шедевральных алгоритмов и всякого такого — только четкая структура, последовательность изложения и интересные выводы.

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

Итак, нажмите сюда для перехода. (не пугайтесь, это не внешняя ссылка)

3,532 просмотров всего, 8 просмотров сегодня

Примеры отчетов по анализу данных (на английском)
5 2 votes

История об LDA2vec: взболтать, но не смешивать

catdog_word2vec_cropped

UPD: В английской версии этого поста оставили очень ценный комментарий, и теперь я вижу, что я слишком заострил внимание на различиях LDA и word2vec, а они с алгоритмической точки зрения не так уж и сильно отличаются. Поэтому я несколько изменил первоначальную версию текста. Кстати, рекомендую прочитать презентацию товарища Голдберга про word2vec.

Буквально только что, когда уже хотел взяться за написание текста про конференцию (как обещал в предыдущем посте), я обнаружил совсем недавно созданный гибридный алгоритм, который хитрым образом берет лучшее (по крайней мере, должен брать лучшее) из известного алгоритма тематического моделирования LDA (Латентное размещение Дирихле) и из чуть менее известного инструмента языкового моделирования word2vec (никак не расшифровывается, но про него я писал ранее).

Вы также можете прочитать этот текст на английском

И сейчас я расскажу вам историю об lda2vec и моих попытках поиграться с реализацией и сравнить ее с алгоритмом LDA. Итак, однажды в студеную зимнюю пору…

Read More

6,419 просмотров всего, 8 просмотров сегодня

История об LDA2vec: взболтать, но не смешивать
4.3 3 votes

Google может в Open Source: TensorFlow

TensorFlow

Недавно, 10 дней назад, когда я был на конференции AINL-ISMW FRUCT 2015 (про нее напишу чуток позже), узнал, что Google выпустил TensorFlow в виде ПО с открытым исходным кодом (который опенсорс). И это здорово, хотя вызывает ряд вопросов, на некоторые из которых я попробую ответить ниже.

Read More

4,835 просмотров всего, 3 просмотров сегодня

Google может в Open Source: TensorFlow
5 2 votes

Немного про word2vec: полезная теория

Homer sez

Когда-то мне было нужно узнать кое-что про то, как устроен word2vec и — удивительно — нигде нормальной информации я не нашёл. В половине статей просто демонстрировали формулы и умные слова (я тоже так могу), в другой половине информация была не очень полной. То, что мне было нужно, я собирал по крупицам. настала пора поделиться этими крупицами, особенно, если учесть, что уже почти полгода я ничего не публиковал.

Поэтому здесь я немного расскажу о том, что такое word2vec, зачем он нужен, как он работает — и прочие мелочи. Статья теоретическая (про сам word2vec, а не про векторное пространство, если что), написана достаточно простым языком, но все же содержит в себе практические идеи. Enjoy!

Read More

30,187 просмотров всего, 19 просмотров сегодня

Немного про word2vec: полезная теория
4.7 30 votes

API Вконтакте + NetworkX = социальный граф!

interest-graphs-social-graph

Попалась мне тут когда-то интересная задача — быстро и максимально просто (с минимумом привлекаемых библиотек) нарисовать граф пересечения пользователей разных групп Вконтакте. И я ее даже сделал. Затем подумал — а вдруг кому-то еще нужно будет сделать что-то подобное?

Поэтому здесь я расскажу и покажу, как же всё-таки делать такие вещи:

1. Подключаться к веб-сайту вконтакте с помощью Python 2.7 (всегда можно переписать под 3.x, если что)

2. Создавать графы с помощью библиотеки NetworkX (здесь рассматриваем графы пересечений аудитории групп вконтакте)

3. Визуализировать эти графы (тут нам немного понадобится библиотека matplotlib)

Read More

9,079 просмотров всего, 6 просмотров сегодня

API Вконтакте + NetworkX = социальный граф!
5 3 votes

Data Analyst vs. Data Scientist — в чём различие?

Здесь мне хотелось бы рассказать о различиях между профессиями, которые часто путают или вообще считают тремя названиями одной и той же деятельности.

Вот они, эти профессии:

1. Data Analyst (аналитик данных)

2. Data Mining Specialist (специалист по интеллектуальной обработке данных)

3. Data Scientist (ученый по данным)

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

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

Read More

12,226 просмотров всего, 11 просмотров сегодня

Data Analyst vs. Data Scientist — в чём различие?
5 9 votes

Статистический анализ пользователей Stackoverflow и GitHub: кого больше?

stackovwerflow_github

Когда-то относительно недавно я опубликовал сокращенную версию этой статьи на хабрахабре, а сейчас откопал в отвалах породы на жестком диске полную ее версию. Этот пост представляет собой вполне официальный отчет по довольно поверхностному (то есть я не зарывался глубоко в систему рейтингов, например) статистическому анализу по пользователям двух популярных ресурсов — Stack Overflow (stackoverflow.com) и GitHub (github.com).

Из каких стран больше всего пользователей? Пользователи каких стран коммитят чаще? А каково место России на этом празднике жизни? Кто виноват и что делать? — ответы на эти вопросы можно найти здесь.

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

Ну и, надеюсь, никого не введет в уныние сухость изложения 🙂

А еще этот пост можно прочитать на английском. Впрочем, русская версия гораздо полнее.

Read More

4,075 просмотров всего, 2 просмотров сегодня

Статистический анализ пользователей Stackoverflow и GitHub: кого больше?
5 1 vote