Как стать автором
Поиск
Написать публикацию
Обновить
32.23

Data Mining *

Глубинный анализ данных

Сначала показывать
Порог рейтинга
Уровень сложности

Главные достижения в области обработки естественного языка в 2017 году

Время на прочтение10 мин
Количество просмотров21K

Всем привет. Сразу поделим аудиторию на две части — тех, кто любит смотреть видео, и тех, кто, как я, лучше воспринимает тексты. Чтобы не томить первых, запись моего выступления на Дата-Ёлке:



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

Читать дальше →

Numphp — библиотека для работы с числовыми массивами

Время на прочтение3 мин
Количество просмотров5.7K
Привет.

Я бы хотел представить мой первый open source проект, размещённый на github. Это библиотека предоставляющая удобный и совершенно новый опыт работы с числовыми массивами в php. Вдохновением для создания послужила библиотека numoy на языке Python, которая включает широкий спектр возможностей для манипулирования данными и инструментами линейной алгебры.

Честно говоря, я был удивлён, когда обнаружил что на php до сих пор нет достойного аналога numpy. Конечно, некоторые попытки реализации можно найти на гитхабе, но они все крайне далеки от оригинала и не разделяют ту же идеологию. Моей целью было и есть создание похожей библиотеки, как минимум в отношении удобства использования и краткости синтаксиса. В дальнейших планах будет улучшение производительности.

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

$list = [16, 22, -6, 23, -1, 13, 24, -23, 22];
Читать дальше →

Исправляем опечатки с учётом контекста

Время на прочтение10 мин
Количество просмотров28K

Недавно мне понадобилась библиотека для исправления опечаток. Большинство открытых спелл-чекеров (к примеру hunspell) не учитывают контекст, а без него сложно получить хорошую точность. Я взял за основу спеллчекер Питера Норвига, прикрутил к нему языковую модель (на базе N-грамм), ускорил его (используя подход SymSpell), поборол сильное потребление памяти (через bloom filter и perfect hash) а затем оформил всё это в виде библиотеки на C++ со swig биндингами для других языков.

Читать дальше →

Автоматическая оценка качества статей Википедии на разных языках

Время на прочтение8 мин
Количество просмотров7.9K
Предлагаю Вашему вниманию обзорную статью научных работ, в которых я являюсь непосредственным участником и автором, на тему оценки качества Википедии на разных языках. Свои научные публикации на эту тему я пишу в основном на английском и польском языках. Я решил поделиться своими знаниями и опытом в этой области для русскоязычной аудитории, и выбрал Хабрахабр для первой такой статьи. Буду рад услышать комментарии и предложения на данную тему, возможно кто-то будет заинтересован в сотрудничестве в этом направлении. В следующих статьях я планирую более подробно остановиться на отдельных методиках и алгоритмах по анализу качества статей на разных языках. Также планирую размещать примеры кода (в основном Python), которые могут пригодиться для извлечения и анализа данных из Википедии.

image
Читать дальше →

Использование Intel Movidius для нейронных сетей

Время на прочтение6 мин
Количество просмотров24K

Введение


Мы занимаемся разработкой глубоких нейронных сетей для анализа фото, видео и текстов. В прошлом месяце мы купили для одного из проектов очень интересную штуковину:
Intel Movidius Neural Compute Stick.
Intel MNCS

Это специализированное устройство для нейросетевых вычислений. По сути, внешняя видеокарточка, заточенная под нейронные сети, очень компактная и недорогая (~$83). Первыми впечатлениями от работы с Movidius’ом мы и хотим поделиться. Всех заинтересовавшихся прошу под кат.
Читать дальше →

Feature Engineering, о чём молчат online-курсы

Время на прочтение7 мин
Количество просмотров26K


Sherlock by ThatsWhatSheSayd


Чтобы стать великим сыщиком, Шерлоку Холмсу было достаточно замечать то, чего не видели остальные, в вещах, которые находились у всех на виду. Мне кажется, что этим качеством должен обладать и каждый специалист по машинному обучению. Но тема Feature Engineering’а зачастую изучается в курсах по машинному обучению и анализу данных вскользь. В этом материале я хочу поделиться своим опытом обработки признаков с начинающими датасаентистами. Надеюсь, это поможет им быстрее достичь успеха в решении первых задач. Оговорюсь сразу, что в рамках этой части будут рассмотрены концептуальные методы обработки. Практическую часть по этому материалу совсем скоро опубликует моя коллега Osina_Anya.


Один из популярных источников данных для машинного обучения — логи. Практически в любой строчке лога есть время, а если это web-сервис, то там будут IP и UserAgent. Рассмотрим, какие признаки можно извлечь из этих данных.

Читать дальше →

Кто занимается машинным обучением и что сейчас популярно в Data Science? Результаты опроса среди пользователей Kaggle

Время на прочтение5 мин
Количество просмотров10K
Привет, Хабр! В августе 2017 года платформа для проведения соревнований по машинному обучению Kaggle провела опрос среди более чем 16 000 респондентов с целью узнать, в каком состоянии сейчас находится анализ данных и машинное обучение. Результаты были выложены в открытый доступ, поэтому мы решили проанализировать, чем отечественный Data Science отличается от зарубежного, как выглядит типичный пользователь Kaggle в России и в мире, и, наконец, какие алгоритмы и фреймворки наиболее популярны.


Читать дальше →

Руководство по аналитике для основателя стартапа

Время на прочтение12 мин
Количество просмотров21K


Вам нужна аналитика.


Я совершенно уверен в этом, потому что сегодня всем нужна аналитика. Не только продуктовой команде, не только маркетингу или финансам, но и продажам, доставке, сегодня каждому в стартапе нужна аналитика. Аналитика помогает принимать все решения, от стратегических до тактических, как управляющим, так и рядовым сотрудникам.


Это пост о том, как создать аналитику в вашей организации. Речь пойдёт не о том, какие метрики отслеживать (об этом уже написано много хороших постов), а о том, как сделать так, чтобы ваш бизнес их генерировал. На практике выясняется, что на вопрос реализации —  как мне построить бизнес, который добывает данные для принятия решений? —  ответить гораздо труднее.

Читать дальше →

Парсим мемы в питоне: как обойти серверную блокировку

Время на прочтение26 мин
Количество просмотров105K

Новогодние праздники — прекрасный повод попрокрастинировать в уютной домашней обстановке и вспомнить дорогие сердцу мемы из 2k17, уходящие навсегда, как совесть Electronic Arts.



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

Читать дальше →

KDB

Время на прочтение6 мин
Количество просмотров12K

кдвп


Привет, Хабр !


В статье я опишу идею хранения в достаточно известной колоночной базе данных KDB, а так же примеры того, как к этим данным обращаться. База существует еще с 2001 года, и на данный момент занимает высокие места на сайтах со сравнением подобных систем (см., например, тут)

Читать дальше →

Как обучть мдль пнмть упртые скрщня

Время на прочтение16 мин
Количество просмотров41K

Недавно я натолкнулся на вопрос на Stackoverflow, как восстанавливать исходные слова из сокращений: например, из wtrbtl получать water bottle, а из bsktballbasketball. В вопросе было дополнительное усложнение: полного словаря всех возможных исходных слов нет, т.е. алгоритм должен быть в состоянии придумывать новые слова.


Вопрос меня заинтриговал, и я полез разбираться, какие алгоритмы и математика лежат в основе современных опечаточников (spell-checkers). Оказалось, что хороший опечаточник можно собрать из n-граммной языковой модели, модели вероятности искажений слов, и жадного алгоритма поиска по лучу (beam search). Вся конструкция вместе называется модель зашумлённого канала (noisy channel).


Вооружившись этими знаниями и Питоном, я за вечер создал с нуля модельку, способную, обучившись на тексте "Властелина колец" (!), распознавать сокращения вполне современных спортивных терминов.


Читать дальше →

Паблик «Щастьематринства» и его небольшое статистическое исследование

Время на прочтение16 мин
Количество просмотров24K

Введение (январь 2018)


Иногда люди берутся за дела с которыми сами справиться не могут. И я не исключение.

Есть такая интересная группа ВК — #щастьематеринства( https://vk.com/zaiki_luzhaiki ). Она представляет из себя один из самых феерических источников грубого реализма. Если вы хотите разочароваться в семье, детях, мужьях и всем чем угодно, вам туда. Экзистенциальный кризис вам обеспечен (хотя бы фактом того, что там пишут по 15 постов в день и это настоящие люди). И, конечно, этим паблик и во многом привлекателен.

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

Читать дальше →

Добыча данных в R

Время на прочтение14 мин
Количество просмотров21K
Этот пост — перевод трех частей серии Data acquisition in R из моего англоязычного блога. Исходная серия задумана в четырех частях, три из которых легли в основу данного поста: Использование подготовленных наборов данных; Доступ к популярным статистическим БД; Демографические данные; Демографические данные. В еще не написанной заключительной части речь пойдет об использовании пространственных данных.




R заточен под воспроизводимость результатов. Существует множество прекрасных решений, обеспечивающих сопоставимость версий системы и пакетов, помогающих применять принципы literate programming… Я же хочу показать, как можно легко и эффективно находить/скачивать/добывать данные, используя собственно R и документируя каждый шаг, что обеспечивает полную воспроизводимость всего процесса. Разумеется, я не ставлю перед собой задачи перечислить все возможные источники данных и фокусирую внимание в основном на демографических данных. Если ваши интересы лежат вне сферы статистики населения, стоит посмотреть в сторону великолепного проекта Open Data Task View.


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

Читать дальше →

Ближайшие события

Линейная регрессия с помощью Go

Время на прочтение10 мин
Количество просмотров19K

Долгое время меня интересовала тема машинного обучения. Меня удивляло, как машины могут обучаться и прогнозировать безо всякого программирования — поразительно! Я всегда был очарован этим, однако никогда не изучал тему подробно. Время — ресурс скудный, и каждый раз, когда я пытался почитать о машинном обучении, меня заваливало информацией. Освоение всего этого казалось трудным и требовало много времени. Также я убедил себя, что у меня нет необходимых математических знаний даже для того, чтобы начать вникать в машинное обучение.


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

Читать дальше →

Предсказываем отток с помощью нейросети

Время на прочтение6 мин
Количество просмотров17K
image

Проблема предсказания оттока клиентов — одна из самых распространенных в практике Data Science (так теперь называется применение статистики и машинного обучения к бизнес-задачам, уже все знают?). Проблема достаточно универсальна: она актуальна для многих отраслей — телеком, банки, игры, стриминг-сервисы, ритейл и пр. Необходимость ее решения довольно легко обосновать с экономической точки зрения: есть куча статей в бизнес-журналах о том, что привлечь нового клиента в N раз дороже, чем удержать старого. И ее базовая постановка проста для понимания так, что на ее примере часто объясняют основы машинного обучения.

Для нас в Plarium-South, как и для любой игровой компании, эта проблема также актуальна. Мы прошли длинный путь через разные постановки и модели и пришли к достаточно оригинальному, на наш взгляд, решению. Все ли так просто, как кажется, как правильно определить отток и зачем тут нейросеть, расскажем под катом.
Читать дальше →

Материалы открытого курса OpenDataScience и Mail.Ru Group по машинному обучению и новый запуск

Время на прочтение9 мин
Количество просмотров150K

Недавно OpenDataScience и Mail.Ru Group провели открытый курс машинного обучения. В прошлом анонсе много сказано о курсе. В этой статье мы поделимся материалами курса, а также объявим новый запуск.



UPD: теперь курс — на английском языке под брендом mlcourse.ai со статьями на Medium, а материалами — на Kaggle (Dataset) и на GitHub.


Кому не терпится: новый запуск курса — 1 февраля, регистрация не нужна, но чтоб мы вас запомнили и отдельно пригласили, заполните форму. Курс состоит из серии статей на Хабре (Первичный анализ данных с Pandas — первая из них), дополняющих их лекций на YouTube-канале, воспроизводимых материалов (Jupyter notebooks в github-репозитории курса), домашних заданий, соревнований Kaggle Inclass, тьюториалов и индивидуальных проектов по анализу данных. Главные новости будут в группе ВКонтакте, а жизнь во время курса будет теплиться в Slack OpenDataScience (вступить) в канале #mlcourse_ai.

Анализ резюме hh.ru: много графиков и немного сексизма и дискриминации

Время на прочтение5 мин
Количество просмотров102K
Недавно мне на глаза попалась статья про анализ датасета резюме hh.ru, который участвовал в каком-то хакатоне. Это навело меня на мысль самому поиграться с данными резюме. Тем более что у меня их немного больше. Я выбрал самую интересную для меня профобласть, которую можно указать в резюме, — «Информационные технологии, интернет, телеком».

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


Читать дальше →

История победы на международном соревновании по распознаванию документов команды компании SmartEngines

Время на прочтение11 мин
Количество просмотров11K

Привет, Хабр! Сегодня мы расскажем о том, как нашей команде из Smart Engines удалось победить на международном конкурсе по бинаризации документов DIBCO17, проводимом в рамках конференции ICDAR. Данный конкурс проводится регулярно и уже имеет солидную историю (он проводится 9 лет), за время которой было предложено множество невероятно интересных и безумных (в хорошем смысле) алгоритмов бинаризации. Несмотря на то, что в своих проектах по распознаванию документов при помощи мобильных устройств мы по возможности не используем подобные алгоритмы, команде показалось, что нам есть что предложить мировому сообществу, и в этом году мы впервые приняли решение участвовать в конкурсе.


Читать дальше →

Отчет о старте Atos IT Challenge

Время на прочтение9 мин
Количество просмотров3K

Есть ли у вас та штука, что называется pet project или side project? Тот самый проект, который бы вы делали в свое удовольствие и для себя, для саморазвития или расширения портфолио. Лично у меня долгое время не было ничего, что можно было бы показать. Однако, в рамках стартовавшего этой осенью конкурса Atos IT Challenge 2018, у меня как раз появилась возможность начать такой проект.

Читать дальше →

Анализируй это — Lenta.ru

Время на прочтение47 мин
Количество просмотров25K


Анализируй это. Lenta.ru (часть 1)


What, How, Why


Для тех кому лень читать — ссылка на датасет внизу статьи.

What — анализ статей новостного ресурса Lenta.ru за последние 18 лет (с 1 сентября 1999 года). How — средствами языка R (с привлечением программы MySterm от Yandex на отдельном участке). Why… В моем случае, коротким ответом на вопрос "почему" будет "получение опыта" в Big Data. Более развернутым же объяснением будет "выполнение какого-либо реального задания, в рамках которого я смогу применить навыки, полученные во время обучения, а так же получить результат, который я бы смог показывать в качестве подтверждения своих умений".

Читать дальше →